Enkripsi SSL/TLS merupakan bagian integral dari infrastruktur jaringan. Server web dan email apa pun memungkinkan Anda mengaktifkan enkripsi data.
Pada artikel ini, kita akan melihat proses mendapatkan sertifikat SSL gratis Let's Encrypt.
Cara mendapatkan SSL "Let's Encrypt" di Ubuntu 20.04:
- Instal paket "Let's Encrypt"
- Server mandiri untuk mendapatkan sertifikat SSL "Let's Encrypt"
- Install sertifikat SSL secara otomatis di server web Ngix dan Apache
- Buat Let's Encrypt Wildcard SSL certificate
Sebagai syarat awal, Anda harus memiliki nama domain. Itu DNS A-record harus berisi alamat publik server Anda. Jika firewall diaktifkan, buka akses untuk lalu lintas HTTP dan HTTPS.
sudo ufw allow 80
sudo ufw allow 443
Langkah 1 – Menginstal paket "Let's Encrypt"
Proses menginstal paket "Let's Encrypt" dengan semua dependensinya sangat sederhana. Untuk melakukan ini, masukkan perintah:
sudo apt install letsencrypt
Bersamaan dengan paket "Let's Encrypt", perintah ini juga menginstal utilitas "certbot.timer" untuk pembaruan sertifikat otomatis. Ini memeriksa validitas sertifikat SSL dalam sistem dua kali sehari dan memperpanjang sertifikat yang kedaluwarsa dalam 30 hari ke depan. Untuk memastikan itu berjalan, masukkan:
sudo systemctl status certbot.timer
Ada konfigurasi dan kondisi yang berbeda untuk mendapatkan sertifikat. Mari kita lihat beberapa di antaranya.
Langkah 2 – Server mandiri untuk mendapatkan sertifikat SSL "Let's Encrypt"
Cara termudah untuk mendapatkan sertifikat ssl adalah dengan menggunakan opsi mandiri di Certbot. Ganti domain-name.com dengan nama domain Anda, jalankan perintah, dan ikuti petunjuknya:
sudo certbot certonly --standalone --agree-tos --preferred-challenges http -d domain-name.com
Opsi certonly berarti bahwa sertifikat hanya akan diperoleh tanpa instalasi di server web mana pun, mandiri memungkinkan Anda untuk memulai server web Anda sendiri untuk otentikasi, setuju berarti menerima perjanjian berlangganan server ACME, yang merupakan prasyarat, dan lebih disukai- tantangan http berarti melakukan otorisasi menggunakan HTTP.
Langkah 3 – Instalasi otomatis sertifikat SSL di server web nginx dan Apache
Certbot dapat menginstal sertifikat secara otomatis di server web nginx dan Apache. Untuk melakukan ini, Anda perlu menginstal paket tambahan dan memilih yang sesuai untuk server web Anda.
untuk nginx
apt install python3-certbot-nginx
untuk apache
apt install python3-certbot-apache
untuk nginx
sudo certbot --nginx --agree-tos --preferred-challenges http -d domain-name.com
untuk apache
sudo certbot --apache --agree-tos --preferred-challenges http -d domain-name.com
Ikuti instruksi dan Certbot akan memasang sertifikat SSL untuk Anda.
Langkah 4 – Sertifikat SSL Wildcard "Let's Encrypt"
Untuk membuat sertifikat wildcard, satu-satunya metode tantangan yang mungkin adalah DNS. Dalam parameter d, Anda harus menentukan domain kosong dan wildcard.
sudo certbot certonly --manual --agree-tos --preferred-challenges dns -d domain-name.com -d *.domain-name.com
After that, place the specified TXT record on your DNS server and click continue.
If everything is well, you will see the path where your new wildcard certificate is stored and some other information.
Pembuatan TXT
dig -t txt _acme-challenge.domain-name.com
di DNS Zone membuat dnx berupa TXT berisi kode dari perintah tadi
| TXT | _acme-challenge.domain-name.com | IP Address Server | DNS only | Auto |
| TXT | _acme-challenge.domain-name.com | Kode Yang di kasih | DNS only | Auto |
untuk vhost SSL di seting
<VirtualHost *:443>
DocumentRoot /var/www/html/lite
ServerName simanis.rs-simdep.com
SSLCertificateFile /etc/letsencrypt/live/domain-name.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain-name.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateChainFile /etc/letsencrypt/live/domain-name.com/chain.pem
SSLEngine on
</VirtualHost>
Restart Apache
sudo service apache2 restart