Bingung Pasang SSL(Let’s Encrypt) di Web Apache via Certbot? Begini Caranya

Pernah gak bikin website sendiri terus di browser muncul tulisan “Not Secure”? nah tenang aja guys, itu artinya bukan configurasinya yang bermasalah. Tapi karena website kamu belum ada SSL nya.

Nah, masang SSL di Apache itu sebenernya gak serumit yang dikira. Apalagi sekarang udah ada Let’s Encrypt sertifikat SSL yang gratis beneran. Jadi gak ada alasan lagi buat website masih “Not Secure”, kecuali… ya, males baca tutorial. Nah, biar gak males, aku tulis catatan ini.

Catatan ini pake Apache di Rocky dengan SSL dari Let’s Encrypt via Certbot. Kalau distro kamu beda (Debian, Rocky, CentOS), tinggal nyesuein command install-nya aja.

Sebelum Mulai

Ada 3 syarat yang harus dipenuhi dulu, yaitu:

  • Domain udah mengarah ke server: Buat A record DNS ke IP server kamu. Ini wajib, karena Let’s Encrypt bakal ngecek domain itu beneran punya kamu sebelum ngasih sertifikat.
  • Port 80 dan 443 kebuka di firewall. Tanpa ini, certbot gak bakal bisa nyelesaiin prosesnya
  • Apache udah keinstall dan jalan.

1. Pastiin Apache Jalan

systemctl status apache2

Kalau statusnya active (running), lanjut. Kalau belum keinstall:

apt update && apt install -y apache2
systemctl enable --now apache2

2. Install Certbot + Plugin Apache

apt update
apt install -y certbot python3-certbot-apache

python3-certbot-apache ini penting dia yang bikin Certbot bisa ngurus config Apache secara otomatis. Tanpa plugin ini, kamu harus ngedit config manual (bisa, tapi ribet).

3. Jalanin Certbot

Ini bagian paling seru tinggal satu command:

certbot --apache

Nanti Certbot bakal nanya beberapa hal:

  • Email buat notifikasi kadaluarsa sertifikat.
  • Setuju sama Terms of Service tinggal ketik Y.
  • Pilih domain kalau ada lebih dari satu virtual host, pilih domain yang mau dipasangin SSL.
  • Redirect HTTP ke HTTPS? pilih 2 (redirect), biar pengunjung yang buka versi http:// otomatis dilempar ke https://.

Begitu seleasi, Certbot otomatis bikin config virtual host HTTPS, masangin sertifikat, dan nyalain redirect. Gak perlu ngedit file config manual sama sekali.

4. Cek Hasilnya

certbot certificates

Command ini nampilin daftar sertifikat yang udah kepasang, lengkap sama tanggal kadaluarsanya. Terus, buka https://domainkamu.com di browser harusnya udah ada gembok 🔒 di samping URL-nya.

Satu hal yang sering dilupain: auto-renewal. Sertifikat Let’s Encrypt cuma berlaku 90 hari, tapi tenang Certbot udah punya timer yang otomatis ngerenew sebelum abis. Cek seperti ini:

systemctl status certbot.timer
certbot renew --dry-run

--dry-run buat nyimulasi proses renewal tanpa beneran ngubah apa-apa. Kalau outputnya Congratulations, berarti renewal otomatis aman. Gak perlu panik manual tiap 3 bulan.

Bonus: Kalau Kamu Udah Punya Sertifikat Sendiri

Kadang sertifikatnya bukan dari Let’s Encrypt misalnya dari CA lain atau sertifikat internal. Tenang, tinggal pasang manual di config virtual host:

<VirtualHost *:443>
    ServerName contoh.com
    SSLEngine on
    SSLCertificateFile      /etc/ssl/certs/contoh.com.crt
    SSLCertificateKeyFile   /etc/ssl/private/contoh.com.key
    SSLCertificateChainFile /etc/ssl/certs/chain.pem
</VirtualHost>

Terus aktifin modul SSL dan reload:

a2enmod ssl
systemctl reload apache2

Nahh

Setelah SSL kepasang, rasanya beda banget bukan cuma soal keamanan, tapi juga kepercayaan. Pengunjung liat gembok, langsung lebih adem. Dan yang paling penting: prosesnya gak seseram yang dibayangin, asal urutan langkahnya bener.

Buat kamu yang lagi coba dan ikutin tutorial ini, semogaa berhasill guysss. Dan buat kamu yang lagi baca-baca, ayoo mulai cobain sekarang juga biar ga penasaran. Kalau ada yang mau di diskusikan boleh di kolom komentar ya guys!

Leave a Reply

Your email address will not be published. Required fields are marked *