Certbot adalah salah satu terobosan baru dari Penyedia Sertifikat Keamanan Web Let’s Encrypt dimana Lets Encrypt ini menyediakan SSL secara gratis. Dengan adanya SSL ini kita bisa menggunakan situs kita dengan metode HTTPS atau port 443. Namun, SSL ini harus diperpanjang tiap 90 hari. Meskipun dengan cara manual juga mudah, namun jika anda menginginkan semuanya otomatis, Let’s Encrypt sudah menyediakan otomatis alatnya bernama CertBot. Jika anda yang memiliki VPS Centos atau Ubuntu, anda bisa mendapatkan kemudahan dalam pembuatan sertifikat SSL yang gratis dan resmi.
Apa itu Let’s Encrypt?
Let’s Encrypt merupakan suatu nama layanan penerbitan SSL Sertifikat yang telah diluncurkan pada tanggal 12 April 2016 oleh Internet Security Research Group atau yang disingkat dengan ISRG yang menyediakan layanan penerbitan SSL Sertifikat secara gratis berjenis Sertifikat X.509 untuk enkripsi Transport Layer Security (TLS) melalui proses otomatis yang dirancang untuk menghilangkan proses yang kompleks saat penerbitan manual, validasi, signing, instalasi dan pembaharuan SSL secara otomatis agar membuat web menjadi aman.
Bagaimana cara kerja Let’s Encrypt?
Tujuan dari Let’s Encrypt adalah untuk memungkinkan seseorang untuk menerbitkan SSL Sertifikatnya sendiri secara otomatis tanpa ribet. Untuk memahami bagaimana cara kerjanya silahkan simak penjelasan berikut. Ada dua hal dalam proses ini. Pertama, pemilik domain membuktikan bahwa domain ia gunakan merupakan benar miliknya. Kemudian, pemilik domain dapat request (meminta), renew (perpanjang) dan revoke (mencabut) sertifikat untuk domain miliknya.
Sebelum Install Certbot
Ada beberapa syarat sebelum install certbot ini, berikut ini adalah persyaratannya:
- Memiliki Akses Root ke Centos 7
- Sudah menginstall nginx dan konfigurasinya berjalan dengan baik. Jika belum tahu bisa baca artikel Konfigurasi Awal Nginx
- Memiki domain yang aktif dan mengarah ke IP Public VPS anda
- Pastikan ada Subdomain dan domain DNS yang mengarah ke IP Public VPS anda. Contoh, jika kita mau mendaftarkan domain nyingspot.com, maka kita juga harus mengarahkan www.nyingspot.com ke IP Public yang sama. Jika kita ingin mengarahkan subdomain, sama saja. Contoh jika kita ingin mengarahkan blog.travtou.com maka kita harus mengarahkan www.blog.travtou.com-nya juga.
Sebelum lanjut, pastikan persyaratannya sudah dipenuhi terlebih dahulu.
Memulai install CertBot
Ada beberapa tahapan untuk menginstall certbot, yaitu pertama harus install atau enable dulu repo EPEL. Kemudian yang kedua install Certbot untuk nginx, dan tahap ketiga itu adalah membuat sertifikat domainnya.
Enable Repo Epel
Jika kamu sudah install repo EPEL, maka tinggal di-enable-kan saja. Kita akan mulai dari cara install Repo EPEL.
sudo yum install epel-release
Kemudian barulah kita install certbot nginx-nya.
sudo yum install certbot-nginx
Enable di Firewall
Jika menggunakan IPTABLES gunakan kode ini.
sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT sudo iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT
Jika menggunakan IPTABLES gunakan kode ini.
sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT sudo iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT
Jika menggunakan firewalld gunakan kode ini.
sudo firewall-cmd --add-service=http sudo firewall-cmd --add-service=https sudo firewall-cmd --runtime-to-permanent
Membuat sertifikat SSL
Sertifikat ini akan dibuat otomatis menggunakan certbot dan langsung memasukannya ke folder nginx serta pengaturanya.
sudo certbot --nginx -d example.com -d www.example.com
setelah itu akan muncul konfirmasi seperti ini.
Please choose whether HTTPS access is required or optional. ------------------------------------------------------------------------------- 1: Easy - Allow both HTTP and HTTPS access to these sites 2: Secure - Make all requests redirect to secure HTTPS access ------------------------------------------------------------------------------- Select the appropriate number [1-2] then [enter] (press 'c' to cancel):
Untuk cari aman, pilihlah yang nomor 1. Nomor satu itu adalah untuk mengaktifkan situs berbasis https dan non https.
Mempertebal keamanan dengan generate Deffie-Hellman
Karena SSL itu perlu keamanan yang sangat kuat, maka kita harus membuat ulang kode Deffie-Hellman.
sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
&nsbp;
Proses ini akan memakan waktu sampai 5-10 menit tergantung spesifikasi servernya. Setelah selesai, masukan ke konfigurasi nginx-nya.
nano /etc/nginx/nginx.conf
Tambahkan baris ini di konfigurasi nginx nya.
server{ .. .. ssl_dhparam /etc/ssl/certs/dhparam.pem; .. .. }
Demikian. Semoga membantu.