Renewal SSL LetsEncrypt Secara Otomatis Menggunakan Crontab

Kita dapat mengkonfigurasi secara otomatis proses renewal certificate LetsEncrypt dengan menjalankan perintah auto-renew script. Dalam catatan ini akan mengekplorasi cara mengkonfigurasi proses renewal certificate LetsEncrypt secara otomatis untuk server berbasi nginx atau apache sebelum tanggal expired certificate.

Detail informasi :
Ubuntu 22.04.1 LTS (Jammy Jellyfish)
certbot 1.21.0
Apache/2.4.52 (Ubuntu)

On Apache-based Server
=========================

Langkah 1
Install certbot untuk apache
python3-certbot-apache

Langkah 2
Menjalankan perintah dibawah untuk mendapatkan certificate SSL dalam mode non-interaktif, dimana anda tidak ditanya pertanyaan apapun.
sudo certbot –apache –agree-tos -m [email protected] –non-interactive –domains domain.com

Langkah 3
Menambahkan crontab untuk proses renewal certificate SSL.
crontab -e
Kemudian, tambahkan perintah berikut.
0 0 16 4 * /usr/bin/certbot renew –agree-tos >> /root/renewal.log 2>&1

Langkah 4
Untuk melakukan pengujian atau simulasi.
certbot renew –apache –dry-run –agree-tos

On Nginx-base Server
=========================

Langkah 1
Install certbot untuk Nginx
python3-certbot-nginx

Langkah 2
Menjalankan perintah dibawah untuk mendapatkan certificate SSL dalam mode non-interaktif, dimana anda tidak ditanya pertanyaan apapun.
sudo certbot –nginx –agree-tos -m [email protected] –non-interactive –domains domain.com

Langkah 3
Menambahkan crontab untuk proses renewal certificate SSL.
crontab -e
Kemudian, tambahkan perintah berikut.
0 0 16 4 * /usr/bin/certbot renew –agree-tos >> /root/renewal.log 2>&1

Langkah 4
Untuk melakukan pengujian atau simulasi.
certbot renew –nginx –dry-run –agree-tos

Catatan :
1. Proses generate SSL secara manual tidak dapat menggunakan proses diatas untuk melakukan proses renewal.