Gembok HTTPS gratis — ada gambar tiap langkah
Pasang HTTPS gratis dengan Let's Encrypt
Website-mu masih http://dan ditandai "Not Secure" oleh browser? Di panduan ini kamu akan memasang sertifikat SSL gratis dari Let's Encrypt memakai Certbot. Hasilnya: alamat berubah jadi https:// dengan ikon gembok, data pengunjung terenkripsi, dan sertifikatnya diperpanjang otomatis selamanya. Cukup beberapa perintah.
Gembok HTTPS
Browser percaya, tidak ada lagi label "Not Secure".
Gratis & resmi
Let’s Encrypt diakui semua browser, tanpa biaya.
Perpanjang sendiri
Certbot memperbarui sertifikat otomatis sebelum kedaluwarsa.
http:// dengan Nginx. Kalau belum, ikuti dulu panduan Nginx reverse proxy. Certbot bekerja paling mulus di atas Nginx yang sudah jalan.Kenapa website wajib HTTPS?
Tanpa HTTPS, data yang dikirim antara pengunjung dan website-mu melintas dalam teks terbuka — siapa pun di jaringan yang sama (mis. WiFi kafe) bisa mengintipnya. Browser modern menandai situs http:// dengan label menakutkan "Not Secure" yang membuat pengunjung kabur.
Dengan HTTPS, semua data terenkripsi, muncul ikon gembok, dan Google pun lebih menyukai situs ber-HTTPS di hasil pencarian. Dulu sertifikat SSL mahal; sekarang Let's Encrypt memberikannya gratis.
SEBELUM
⚠ Not Secure | http://app.domainku.com
Data terbuka, pengunjung ragu, peringkat Google turun.
SESUDAH
🔒 https://app.domainku.com
Data terenkripsi, gembok aman, dipercaya pengunjung & Google.
Cara kerja Let's Encrypt & Certbot
Let's Encrypt adalah lembaga penerbit sertifikat gratis. Certbot adalah robot kecil di server-mu yang mengurus semuanya: meminta sertifikat, membuktikan bahwa kamu benar pemilik domain, lalu memasangnya ke Nginx.
Pembuktiannya otomatis: Certbot menaruh sebuah file rahasia kecil di situsmu, lalu Let's Encrypt mengeceknya lewat domain. Kalau cocok, sertifikat terbit. Karena sertifikat Let's Encrypt berumur 90 hari, Certbot juga memasang timer otomatis untuk memperpanjangnya sebelum habis — jadi kamu tak perlu memikirkannya lagi.
Yang perlu kamu siapkan
- Domain yang sudah mengarah ke IP VPS (A record), dan bisa dibuka lewat http://.
- Nginx terpasang dengan satu server block untuk domain itu (lihat panduan Nginx).
- Port 80 dan 443 terbuka di firewall server.
Kalau memakai firewall UFW, pastikan port web terbuka dulu:
deploy@server:~$ sudo ufw allow 80,443/tcpRule added# port 80 (http) & 443 (https) kini terbukaPasang Certbot
Pasang Certbot beserta plugin khusus Nginx — plugin inilah yang membuat Certbot bisa mengedit konfigurasi Nginx untukmu secara otomatis:
# DI SERVER — pasang Certbot + plugin Nginx
sudo apt update
sudo apt install -y certbot python3-certbot-nginxpython3-certbot-nginx penting: dengan ini Certbot tahu cara menambahkan baris HTTPS ke config Nginx tanpa kamu mengedit manual.Terbitkan sertifikat & aktifkan HTTPS
Inilah perintah ajaibnya. Ganti app.domainku.com dengan domainmu. Certbot akan meminta sertifikat, memverifikasi, lalu mengatur Nginx untuk memakai HTTPS:
# Terbitkan sertifikat & atur HTTPS untuk domainmu.
# Certbot otomatis mengedit config Nginx untukmu.
sudo certbot --nginx -d app.domainku.com
# Pertama kali, Certbot menanyakan:
# - email (untuk notifikasi kedaluwarsa)
# - setuju Terms of Service (Y)
# - redirect HTTP -> HTTPS? Pilih: 2 (Redirect) -- sangat disarankanSaat ditanya soal redirect, pilih opsi 2 (Redirect) agar semua pengunjung http:// otomatis dialihkan ke https://. Kalau berhasil, tampilannya seperti ini:
deploy@server:~$ sudo certbot --nginx -d app.domainku.comRequesting a certificate for app.domainku.comSuccessfully received certificate.Deploying certificate to /etc/nginx/sites-enabled/app.domainku.comRedirecting all traffic on port 80 to https Congratulations! You have successfully enabled HTTPS 🔒Punya beberapa domain/subdomain? Terbitkan sekaligus dalam satu sertifikat dengan menambah -d berulang:
# Satu sertifikat untuk beberapa domain/subdomain sekaligus
sudo certbot --nginx \
-d domainku.com \
-d www.domainku.com \
-d app.domainku.comCek gembok di browser
Buka https://app.domainku.com. Sekarang ada ikon gembok di sebelah alamat, dan kalau kamu sengaja mengetik http://, browser otomatis dialihkan ke versi aman:
Blog berbasis markdown
Tulis di Markdown. Push ke GitHub. Deploy di VPS milikmu sendiri.
Menyiapkan VPS pertama kamu
Sebuah catatan singkat tentang menjalankan blog kamu sendiri…
Menulis dengan Markdown
Sebuah catatan singkat tentang menjalankan blog kamu sendiri…
Pastikan perpanjangan otomatis jalan
Sertifikat Let's Encrypt berumur 90 hari, tapi Certbot sudah memasang timer yang memperpanjangnya otomatis. Uji simulasinya untuk memastikan tidak ada masalah (perintah ini tidak benar-benar memperpanjang):
# Uji simulasi perpanjangan (tidak benar-benar memperpanjang)
sudo certbot renew --dry-run
# Lihat timer yang menjalankan perpanjangan otomatis
sudo systemctl list-timers | grep certbotdeploy@server:~$ sudo certbot renew --dry-runCongratulations, all simulated renewals succeeded# perpanjangan otomatis siap jalan ✅certbot.timer aktif (cek dengan systemctl list-timers), kamu tidak perlu melakukan apa pun. Certbot akan memperpanjang sendiri sekitar 30 hari sebelum kedaluwarsa.Masalah umum & cara mengatasinya
| Gejala | Sebab | Solusi |
|---|---|---|
| Challenge failed / timeout | Domain belum mengarah ke server, atau port 80 ditutup firewall. | Pastikan dig app.domainku.com +short = IP VPS, dan buka port: sudo ufw allow 80,443/tcp. |
| too many certificates / rate limit | Terlalu sering menerbitkan untuk domain sama (batas Let’s Encrypt). | Tunggu lalu pakai --dry-run saat uji coba. Jangan ulang terbit berkali-kali. |
| Cloudflare proxy aktif (awan oranye) | Certbot tak bisa verifikasi karena trafik lewat Cloudflare. | Set DNS only (awan abu-abu) saat menerbitkan, nyalakan lagi setelah berhasil. |
| Gembok tetap tidak muncul | Browser masih buka versi http lama (cache). | Buka https:// langsung, atau hard-refresh (Ctrl+Shift+R). |
Selesai — website-mu kini ber-HTTPS, aman, dan otomatis diperpanjang.
Kombinasi Nginx + Let's Encrypt ini adalah fondasi standar website produksi yang profesional.