Let’s Encrypt: Renew untuk Pengguna Cloudflare

Pada tulisan ini saya ingin menyampaikan cara memperpanjang sertifikat Let’s Encrypt bagi pengguna Cloudflare¬†yang memilih Full (strict) untuk komunikasi terenkripsinya (lihat gambar).

Biasanya perpanjangan (renew) yang dilakukan menggunakan fitur cronjob atau manual pada server sering gagal. Hal tersebut disebabkan alamat IP yang terbaca merupakan alamat IP Cloudflare, bukan alamat IP server. Oleh karena itu, perlu dilakukan perpanjangan sertifikat secara manual ketika batas waktu aktif sertifikat berakhir. Berikut ini adalah langkah-langkah yang perlu dilakukan.

Pengaturan DNS pada Cloudflare

Ubah pengaturan pada bagian DNS (lihat gambar).

Non-aktifkan proxy Cloudflare (lihat gambar) agar alamat IP yang terbaca saat proses perpanjangan sertifikat adalah alamat IP server.

Perpanjang Sertifikat Let’s Encrypt

Sebelum Diperpanjang

Periksa masa aktif sertifikat untuk memastikan bahwa sertifikat sudah tidak aktif.

[email protected]:~# echo | openssl s_client -connect xxx.xxx.xxx.xxx:443 2>/dev/null | openssl x509 -noout -dates
notBefore=May 1 07:01:00 2017 GMT
notAfter=Jul 30 07:01:00 2017 GMT
[email protected]:~#

Proses Perpanjangan

Lakukan perpanjangan dengan menggunakan command line berikut.

[email protected]:~# letsencrypt -d baha.web.id -d www.baha.web.id -d catatan.baha.web.id -d www.catatan.baha.web.id

Setelah menjalankan command line di atas, akan muncul output sebagai berikut.

IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/baha.web.id-0005/fullchain.pem. Your cert
will expire on 2017-10-28. To obtain a new version of the
certificate in the future, simply run Let's Encrypt again.
[email protected]:~#

Kemudian, ubah konfigurasi SSL pada file default-ssl.conf. Berikut ini adalah command line yang digunakan untuk mengubah file tersebut menggunakan VIM.

[email protected]:~# vim /etc/apache2/sites-available/default-ssl.conf

Ubah bagian yang diperlukan, yaitu:

  1. SSLCertificateFile
  2. SSLCertificateKeyFile
  3. SSLCertificateChainFile

Dalam kasus ini, perubahannya adalah sebagai berikut.

# A self-signed (snakeoil) certificate can be created by installing
# the ssl-cert package. See
# /usr/share/doc/apache2/README.Debian.gz for more info.
# If both key and certificate are stored in the same file, only the
# SSLCertificateFile directive is needed.
SSLCertificateFile /etc/letsencrypt/live/baha.web.id-0005/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/baha.web.id-0005/privkey.pem

# Server Certificate Chain:
# Point SSLCertificateChainFile at a file containing the
# concatenation of PEM encoded CA certificates which form the
# certificate chain for the server certificate. Alternatively
# the referenced file can be the same as SSLCertificateFile
# when the CA certificates are directly appended to the server
# certificate for convinience.
SSLCertificateChainFile /etc/letsencrypt/live/baha.web.id-0005/chain.pem

Catatan: kode di atas hanya potongan isi dari file default-ssl.conf, bukan keseluruhan.

Setelah Diperpanjang

Periksa masa aktif sertifikat untuk memastikan bahwa masa aktif sertifikat sudah diperpanjang.

[email protected]:~# echo | openssl s_client -connect xxx.xxx.xxx.xxx:443 2>/dev/null | openssl x509 -noout -dates
notBefore=Jul 30 10:00:00 2017 GMT
notAfter=Oct 28 10:00:00 2017 GMT
[email protected]:~#

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

18 − 15 =