Menginstal SSL Let’s Encrypt pada Nginx di Ubuntu

Pendahuluan

Ditengah banyaknya serangan siber yang kian meningkat, menjaga keamanan situs web merupakan langkah yang sangat penting. Salah satu caranya, yaitu dengan menggunakan Secure Socket Layer atau SSL. Saat ini, sudah banyak sekali sertifikat SSL yang tersedia, salah satunya seperti Let’s Encrypt. Let’s Encrypt menyediakan sertifikat SSL secara gratis. Dalam panduan ini kita akan membahas tentang cara instal SSL Let’s Encrypt pada Nginx di Ubuntu.

Definisi SSL Let’s Encrypt

Let’s Encrypt adalah sebuah Otoritas Sertifikat (CA) yang menyediakan cara mudah untuk memperoleh sertifikat SSL secara gratis yang memungkinkan HTTPS terenkripsi di server web. Otoritas ini menyederhanakan proses dengan menyediakan klien perangkat lunak yaitu Certbot yang berupaya untuk mengotomatiskan sebagian besar langkah yang diperlukan. Saat ini, seluruh proses untuk mendapatkan dan memasang sertifikat ini sepenuhnya diotomatisasi di Apache dan Nginx

Cara Instal Let’s Encrypt pada Nginx

Untuk menginstal SSL Let’s Encrypt pada server Nginx di Ubuntu, Anda hanya perlu mengikut langkah-langkah berikut:

1. Persiapan

Sebelum mengikuti langkah-langkah dibawah, Anda memerlukan beberapa hal berikut

  • Sebuah server Ubuntu termasuk pengguna non-root yang mendukung sudo dan firewall.
  • Nama domain yang terdaftar. Jika belum memiliki domain Anda bisa membelinya di IDCloudHost.
  • Rekaman DNS yang disiapkan untuk server Anda
  • A Record yang menunjuk ke alamat IP publik server Anda.
  • Nginx yang sudah terinstal dan pastikan Anda sudah memiliki blok server untuk domain Anda. Pada panduan ini akan digunakan sebagai contoh /etc/nginx/sites-available/example.com.

2. Menginstal Certbot

Certbot merupakan sebuah alat yang digunakan untuk mengelola sertifikat SSL Let’s Encrypt. Untuk menginstalnya, masukan perintah berikut:

sudo apt install certbot python3-certbot-nginx

Apabila server Anda sudah memiliki versi Certbot yang lama, maka Anda harus menghapusnya terlebih dahulu, kemudian instal certbot paket dengan memasukan perintah berikut:

sudo snap install --classic certbot

3. Mengkonfigurasi Nginx

Pastikan server Nginx Anda sudah diinstal dan dikonfigurasi dengan benar. Untuk memeriksanya, buka file konfigurasi untuk domain Anda dengan menggunakan nano, seperti berikut:

sudo nano /etc/nginx/sites-available/example.com

Kemudian, temukan server_name pada baris yang ada. Baris tersebut akan terlihat seperti ini:

...
server_name example.com www.example.com;
...

Apabila muncul, silahkan keluar dari editor Anda dan lanjutkan langkah berikutnya. Jika tidak, maka Anda perlu memperbaruinya. Caranya, masukkan perintah berikut:

sudo nginx -t

Apabila Anda mendapatkan kesalahan, buka kembali berkas blok server dan periksa apakah ada kesalahan ketik atau karakter yang hilang. Setelah sintaks berkas konfigurasi Anda benar, muat ulang Nginx untuk memuat konfigurasi baru:

sudo systemctl reload nginx

Namun, apabila Anda belum menginstal Nginx, silahkan lakukan instalasi dengan memasukkan perintah berikut:

sudo apt install nginx

4. Izinkan HTTPS Melalui Firewall

Pastikan port HTTP (80) dan HTTPS (443) telah dibuka pada firewall untuk memungkinkan akses luar. Apabila menggunakan ufw (Uncomplicated Firewall), jalankan perintah berikut”

sudo ufw allow 'Nginx Full'
sudo ufw delete allow 'Nginx HTTP'

Maka Status Anda sekarang akan terlihat seperti ini:

sudo ufw status

5. Dapatkah Sertifikat SSL

Setelah semuanya terpasang dan terkonfigurasi, maka Anda bisa meminta sertifikat SSL dari Let’s Encrypt untuk domain Anda. Caranua, silahkan jalankan perintah Cerbot berikut:

sudo certbot --nginx -d example.com -d www.example.com

Saat menjalankan perintah diatas, Anda akan diminta memasukkan alamat email dan menyetujui persyaratan layanan. Setelah melakukannya, Anda akan melihat pesan yang memberi tahu Anda bahwa proses berhasil serta di mana sertifikat Anda disimpan:

6. Verifikasi SSL

Setelah proses selesai, Anda dapat memverifikasi apakah SSL telah berhasil diinstal dengan membuka situs Anda di browser menggunakan https://. Pastikan browser menunjukkan ikon gembok hijau yang menandakan koneksi aman.

Jika menggunakan alat baris perintah, Anda dapat memverifikasi SSL dengan perintah:

curl -I https://domain-anda.com

Jika berhasil, Anda akan melihat header respon dengan status 200 OK dan informasi SSL.

Penutup

Dengan mengikuti langkah-langkah diatas, kini Anda bisa menginstal SSL Let’s Encrypt dengan mudah sehingga server web Anda aman dari serangan siber. Apabila Anda membutuhkan layanan sertifikat SSL terbaik, pastikan Anda membelinya di IDCloudHost!