Pengetahuan

SSL Gratis Let’s Encrypt untuk Nginx di Ubuntu 16.04

Saat ini SSL bukanlah lagi menjadi opsional melainkan sudah menjadi kewajiban. Apalagi semenjak awal tahun 2018 Google Chrome akan menandakan situs menjadi tidak aman ketika belum menggunakan SSL. Memang ada biaya tersendiri jika kita ingin memasang SSL, terlebih jika ingin menggunakan fitur ++ yang disediakan oleh SSL tipe berkelas. Namun jika untuk kebutuhan pengembangan atau produksi yang tidak terlalu besar, SSL dari Let’s Encrypt kali ini bisa menjadi solusi.

Sekilas Tentang Let’s Encrypt

Sebelum kita masuk ke cara memasang SSL gratis saya ingin memberitahu terlebih dahulu tentang Let’s Encrypt. Let’s Encrypt merupakan sebuah layanan yang dibuat oleh sebuah badan amal di California yang bernama Internet Security Research Group atau disingkat ISRG. Let’s Ecnrypt memberikan layanan SSL gratis dengan alasan ingin menciptakan web yang lebih aman dan menjaga privasi.

Tutorial ini telah diuji pada Ubuntu 16.06 & Ubuntu 18.04. Sebelum memulai pastikan domain telah terdaftar dan mengarah ke server yang dituju

Tahap 1 – Instalasi Certbot

Untuk dapat menggunakan SSL gratis dari Let’s Encrypt kita membutuhkan aplikasi yang bernama Certbot. Aplikasi ini berfungsi untuk melakukan komunikasi dengan server penyedia SSL.

Kita akan pasang Certbot menggunakan PPA, jadi ketikkan perintah berikut ini pada console.

sudo add-apt-repository ppa:certbot/certbot

Setelah kita masukkan repositorinya sekarang kita lakukan pembaharauan dengan cara mengetikkan perintah

sudo apt update

Setelah selesai saat ini kita baru bisa melakukan instalasi aplikasi certbot dengan mengetikkan perintah berikut ini:

sudo apt install python-certbot-nginx

Jika tidak ada pesan kesalahan maka Certbot telah siap digunakan untuk melakukan permintaan SSL. Saya sudah puluhan kali melakukan cara ini tidak pernah muncul pesan kesalahan, sehingga jika di tempat teman-teman muncul silahkan posting di kolom komputer biar saya bantu menyelesaikan masalahnya.

Tahap 2 – Memastikan Konfigurasi Nginx

SSL diberikan jika domain yang digunakan bisa dibaca oleh server Let’s Encrypt (publik) dan ada web server dengan domain yang diminta. Maka dari itu pada konfigurasi Nginx kita harus menentukan domain dari server. Silahkan buka berkas konfigurasi Nginx dengan penyunting teks seperti nano atau mc. Contohnya bisa dilihat di bawah ini:

sudo nano /etc/nginx/sites-available/default

Cari baris  server_name _  dan ganti simbol _ dengan domain yang akan kita berikan SSL. Contoh web server saya diberi nama domain ariyolo.com maka pengaturannya adalah sebagai berikut:

. . .
server_name ariyolo.com www.ariyolo.com;
. . .

Setelah melakukan perubahan jangan lupa lakukan reload agar konfigurasi baru dapat diterapkan.

sudo service nginx reload

Tahap 3 – Meminta SSL dari Let’s Encrypt

Untuk melakukan permintaan SSl dari Let’s Encrypt untuk Nginx pada Ubuntu 16.04, kita bisa melakukan perintah seperti di bawah ini:

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

Baris perintah di atas memiliki arti, yaitu:

  • sudo = menjalankan perintah sebagai super user.
  • certbot = perintah untuk menjalankan aplikasi certbot
  • –nginx = SSL diberikan kepada web server nginx
  • -d = nama yang akan dikirim sertifikat SSL

Pada proses instalasi kita akan diminta alamat surel, isikan saja menggunakan alamat surel yang aktif karena nantinya ini hanya digunakan untuk informasi saja. Pada pilihan selanjutnya akan muncul tampilan untuk melakukan pengarahan.

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

Jika memilih nomor satu maka jika ada pengguna yang mengakses web dengan HTTP maka akan dibiarkan HTTP, sedangkan pilihan nomor dua jika ada pengguna mengakses HTTP maka akan diarahkan ke HTTPS. Untuk bagian ini sendiri saya memilih nomor dua.

Tahap 5 – Verifikasi SSL

Untuk pengujian SSL berjalan dengan baik atau tidak, kita bisa mengkases secara langsung situs dengan https. Namun agar hasil pengujiannya lebih baik kita menggunakan fitur SSL Server Test milih Qualsys SSL Labs. Caranya tinggal kunjungi https://www.ssllabs.com/ssltest/ lalu masukkan domain dan tunggu beberapa saat sampai nilai SSL muncul. Pengaturan bawaan dari SSL Let’s Encrypt akan membuat situs kita mendapatkan mendapatkan rating A.

Hasil SSL Let's Encrypt

Topik

Related Articles

Close