Memasang SSL Letsencrypt Pada NGINX

December 09, 2018

Bagimana cara memasang ssl letsencrypt? Caranya cukup mudah silahkan ikuti langkah — langkah dibawah ini untuk memasang ssl letsencrypt dengan mudah pada website kamu.

Ketika membuat sebuah website maka hal perlu dan wajib kamu lakukan adalah membuat support ecnrypt untuk koneksi http kamu. Banyak sekali keuntungan dari memasang ssl pada website kita, diantaranya kita bisa mengamankan koneksi ke website kita, lebih di sukai google untuk di index yang mana ini bagus untuk SEO website kita.

Letsencrypt

Ada banyak sekali penyedia layanan ssl dan memang kebanyakan diluar sana layanan enkripsi ssl berbayar yang dimana itu harganya mungkin akan terasa mahal bagi kamu yang baru membuat website.

Letsencrypt hadir menjadi solusi bagi kita para pemilik website untuk bisa memasang enkripsi ssl secara gratis tanpa berbayar. Dan cara membuatnya pun sangat mudah. Mari silahkan ikuti langkah — langkah berikut ini untuk memasang ssl dengan letsencrypt.

Disini saya akan memasang ssl untuk website yang di buat dengan wordpress dengan server nginx. Dan jika kamu ingin gunakan untuk web lain juga bisa yang penting disini menggunakan server nginx.

Certbot

Untuk membuat sertifikat ssl Letsencrypt menggunakan aplikasi commandline certbot, dan aplikasi ini open sorce silahkan buka link dibawah ini untuk mendapatkan source code nya.

Ok sekarang kita install cerbot ini kedalam server :

git clone https://github.com/certbot/certbot

Selanjutnya generate sertifikat untuk website kita dengan menjalankan perintah berikut ini :

./letsencrypt-auto certonly --standalone --email emailkamu@gmail.com -d webkamu.com -d www.webkamu.com

Jika berhasil maka akan muncul pesan seperti dibawah ini :

- Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/webkamu.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/webkamu.com/privkey.pem
   Your cert will expire on 2018-10-04. To obtain a new or tweaked
   version of this certificate in the future, simply run
   letsencrypt-auto again. To non-interactively renew *all* of your
   certificates, run "letsencrypt-auto renew"
 - If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
Donating to EFF:                    https://eff.org/donate-le

Nginx Config

Selanjutnya kita buat server konfiguari nginx agar kita bisa menggunakan sertifikat ssl yang sudah kita buat. Berikut ini adalah contoh konfigurasi nya:

server {
    listen       80;
    listen       [::]:80;
    server_name
        webkamu.com
        www.webkamu.com
      ;
return 301 https://$host$request_uri;
location /.well-known/acme-challenge/ {
        allow all;
        default_type "text/plain";
    }
}
server {
    listen       443 ssl http2;
    listen       [::]:443 ssl http2;
    server_name
        webkamu.com
        www.webkamu.com
      ;
ssl_certificate      /etc/letsencrypt/live/webkamu.com/fullchain.pem;
    ssl_certificate_key          /etc/letsencrypt/live/webkamu.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.1 TLSv1;
    ssl_prefer_server_ciphers on;
    ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
root   /home/web/webkamu/public;
    index index.php index.html index.htm;
location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Jadi yang perlu di ingat sertifikat kita berada pada folder

/etc/letsencrypt/live/webkamu.com

Perlu juga kamu ketahui pada kode dibawah ini berfungsi untuk mengalihkan semua akses dari http ke https.

return 301 https://$host$request_uri;

Cukup mudah bukan? :)

ya cukup sekian aja sampai ketemu pada tips — tips seru tentang coding dan yang lainya yang aku tau :D

Jangan lupa untuk share artikel ini jika menurut kamu bermanfaat ya :D

Subscribe to My Newsletter

Thank you for your interest in my blog. Sign up to my newsletter to stay current on the latest news and information me and to be the first to see new blog posts.