Cara Menginstal Sertifikat SSL Let's Encrypt di Virtual Host Apache
Unduh certbot-auto ke direktori /usr/local/sbin
:
$ cd /usr/local/sbin
$ sudo wget https://dl.eff.org/certbot-auto
$ sudo chmod a+x /usr/local/sbin/certbot-auto
Perintah chmod
di atas akan menyebabkan script yang telah diunduh dapat dieksekusi.
Membuat Sertifikat SSL
Misalnya kita akan membuat sertifikat untuk virtual host situsku.dev
, yang merupakan base domain dari beberapa subdomain, misalnya www.situsku.dev
dan api.situsku.dev
. Setiap subdomain dapat ditambahkan menggunakan parameter -d
.
Jalankan certbot-auto:
$ certbot-auto --apache -d situsku.dev -d www.situsku.dev -d api.situsku.dev
Perhatikan bahwa nama domain pertama pada perintah di atas akan digunakan oleh Let's Encrypt sebagai base domain untuk membuat sertifikat. Dalam hal ini, situsku.dev
harus ditulis paling depan.
Setelah menjalankan perintah ini, masukkan alamat email yang akan digunakan untuk menerima pemberitahuan dan lost key recovery. Pilih juga antara mengizinkan akses baik melalui http atau https, atau mengalihkan semua ke https.
Semua sertifikat SSL yang dihasilkan berada di direktori /etc/letsencrypt/live
.
Apabila subdomain akan ditambahkan, jalankan kembali perintah certbot-auto
di atas dengan menambahkan subdomain baru. Kita bisa memilih antara memperbarui sertifikat yang sudah ada, atau membuat baru.
Mengatur Pembaruan Sertifikat
Sertifikat Let's Encrypt berlaku selama 90 hari, dan sebaiknya diperbarui sebelum itu. Untuk memperbarui sertifikat untuk semua domain, jalankan perintah:
$ certbot-auto renew
Perintah di atas akan mengecek semua sertifikat yang terpasang dan akan memperbaruinya jika kurang dari 30 hari dari tanggal kedaluwarsa.
Untuk memperbarui sertifikat secara otomatis, kita dapat menggunakan cron job yang akan menjalankan perintah di atas secara berkala.
Jalankan perintah di bawah pada terminal:
$ sudo crontab -e
Tambahkan konten di bawah pada 1 baris baru:
0 2 * * 5 /usr/local/sbin/certbot-auto renew >> /var/log/le-renew.log
Simpan dan keluar. Cron job di atas akan menjalankan perintah certbot-auto renew
setiap Jumat (hari ke-5 dalam satu minggu) pukul 2:00 pagi. Log file-nya dapat ditemukan pada direktori /var/log/le-renew.log
.