Cara Membuat Sertifikat SSL Wildcard Menggunakan Let's Encrypt
Apa itu Sertifikat SSL Wildcard?
Biasanya kita menggunakan sebuah sertifikat SSL yang khusus untuk sebuah domain ataupun subdomain, seperti sertifikat SSL untuk domain blog.prakashdivy.id
tidak dapat digunakan untuk domain www.prakashdivy.id
dan begitu pula sebaliknya.
Dengan adanya sertifikat SSL Wildcard kita dapat menggunakan sertifikat SSL tersebut untuk kedua domain pada contoh di atas. Pada sertifikat SSL Wildcard domain yang di-issue-kan akan diawali dengan *
(contoh: *.prakashdivy.id
).
Kenapa Let’s Encrypt?
Let’s Encrypt adalah Certificate Authority (CA) global yang menawarkan pembuatan sertifikat SSL secara gratis. Masa aktif dari sertifikat SSL yang dibuat dengan Let’s Encrypt adalah 3 bulan. Untuk perbandingan dengan CA lainnya dapat dilihat di tautan berikut. Sejak Maret 2018, Let’s Encrypt sudah bisa digunakan untuk meng-issue sertifikat SSL wildcard.
Cara Meng-issue Sertifikat SSL Wildcard
Jalankan kode di bawah ini pada mesin yang akan meng-issue sertifikat SSL Wildcard. Silakan ganti *.DOMAIN
dengan domain yang anda miliki (contoh: *.prakashdivy.id
).
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt update
sudo apt-get install python-certbot-nginx
sudo certbot certonly --server https://acme-v02.api.letsencrypt.org/directory --agree-tos --manual --preferred-challenges dns -d '*.DOMAIN'
Secara garis besar kode di atas akan mengunduh dependency dan aplikasi certbot
kemudian melakukan request untuk domain *.DOMAIN
.
Dalam proses issue tersebut kita harus menambahkan 2 buah TXT record pada domain kita dan berisi text yang sudah di-generate oleh certbot
.
Setelah proses selesai, akan terbentuk 4 buah file di dalam folder /etc/letsencrypt/live/DOMAIN
yaitu cert.pem
, chain.pem
, fullchain.pem
, dan privkey.pem
. File tersebut akan digunakan dalam konfigurasi nginx
sehingga kita dapat menggunakan sertifikat SSL Wildcard untuk semua subdomain yang kita miliki.