Cara Memasang SSL Gratis dengan Let's Encrypt
Label "Not Secure" di sebelah alamat website bisnis mengerjakan satu hal dengan sangat efisien: mengusir calon pelanggan yang baru pertama kali datang. Dulu menghilangkannya berarti membeli sertifikat tahunan dan ritual pemasangan manual. Sekarang Let's Encrypt memberikan sertifikat yang sama sahihnya secara gratis, dan certbot mengurus pemasangan serta perpanjangannya. Sisa pekerjaannya tinggal menjalankan beberapa perintah dengan urutan benar — itulah isi tutorial ini.
Kenapa HTTPS bukan lagi pilihan
Tiga alasan yang masing-masing sudah cukup: browser modern menandai situs HTTP polos sebagai tidak aman tepat di depan mata pengunjung; data yang lewat tanpa enkripsi — termasuk isian form kontak — bisa dibaca siapa pun di jalur yang sama, misalnya di WiFi publik; dan mesin pencari memperhitungkan HTTPS dalam peringkat. Untuk situs yang menerima login atau data pelanggan, ini bukan lagi soal citra melainkan kewajiban dasar menjaga data.
Langkah 1: Pahami cara kerja Let's Encrypt
Singkat saja, karena paham ini membuat semua error message jadi masuk akal: Let's Encrypt hanya menerbitkan sertifikat kalau Anda membuktikan menguasai domain itu. Certbot membuktikannya otomatis — biasanya dengan menaruh file jawaban di server web Anda yang kemudian dicek Let's Encrypt dari internet (tantangan HTTP), atau lewat record DNS untuk kasus khusus. Konsekuensinya: DNS domain harus sudah menunjuk ke server Anda, dan port 80 harus terbuka, sebelum satu pun perintah certbot dijalankan. Hampir semua kegagalan penerbitan berakar di dua syarat itu.
Sertifikatnya berumur pendek — 90 hari — dan itu disengaja: umur pendek memaksa perpanjangan otomatis, dan perpanjangan otomatis lebih andal daripada ingatan manusia mana pun.
Langkah 2: Pasang certbot di server
Di Ubuntu dengan Nginx (pola yang sama untuk Apache dengan mengganti plugin-nya):
sudo apt update
sudo apt install certbot python3-certbot-nginx
Pastikan firewall mengizinkan HTTP dan HTTPS:
sudo ufw allow 'Nginx Full'
Langkah 3: Terbitkan sertifikat untuk domain Anda
Pastikan konfigurasi Nginx Anda sudah punya server_name yang benar, lalu:
sudo certbot --nginx -d usaha-anda.com -d www.usaha-anda.com
Certbot memverifikasi domain, menerbitkan sertifikat, menyuntikkan konfigurasi SSL ke Nginx, dan menawarkan mengalihkan semua HTTP ke HTTPS — terima tawaran itu. Buka situs Anda: gembok tampil. Cantumkan kedua varian domain (dengan dan tanpa www) dalam satu perintah; sertifikat yang hanya mencakup salah satunya adalah sumber keluhan "situsnya kadang aman kadang tidak" yang klasik.
Kalau penerbitan gagal, baca pesannya dengan tenang — hampir selalu salah satu dari: DNS belum mengarah ke server ini (cek dengan dig +short usaha-anda.com), port 80 tertutup firewall, atau server_name di Nginx tidak cocok dengan domain yang diminta.
Langkah 4: Pastikan perpanjangan otomatis jalan
Instalasi certbot modern sudah memasang timer perpanjangan otomatis. Tapi "sudah terpasang" dan "terbukti jalan" adalah dua hal berbeda, dan bedanya baru terasa 90 hari kemudian saat situs tiba-tiba menampilkan peringatan sertifikat kedaluwarsa. Buktikan sekarang:
sudo certbot renew --dry-run
systemctl list-timers | grep certbot
Dry run yang sukses berarti seluruh jalur perpanjangan — verifikasi, penerbitan, pemuatan ulang Nginx — bekerja. Sekali ini lolos, sertifikat Anda praktis merawat dirinya sendiri selamanya.
Kasus yang butuh sertifikat berbayar
Supaya adil pada sisi lain: Let's Encrypt menutup kebutuhan mayoritas situs bisnis, tapi ada pengecualian yang nyata. Sertifikat validasi organisasi (OV/EV) yang mencantumkan badan hukum di dalam sertifikat masih diminta di beberapa lingkungan korporat dan perbankan; beberapa perangkat tertanam dan sistem lama tidak mengenal rantai sertifikat Let's Encrypt; dan wildcard certificate lewat Let's Encrypt menuntut tantangan DNS yang lebih rumit disiapkan — kadang lebih praktis dibeli kalau pengelolaan DNS Anda terbatas. Kalau Anda tidak berada di salah satu situasi itu, versi gratisnya bukan kompromi; ia standar industri.
HTTPS adalah satu bagian dari fondasi server yang sehat. Gambaran utuhnya ada di tutorial deploy aplikasi ke VPS dengan Nginx, dan kalau Anda lebih suka fondasi itu dibangun sekaligus dirawat orang lain, tim software Clovertechno melakukannya setiap hari.
Clovertechno