Cara Install SSL Let’s Encrypt di Tengine

Cara Install SSL di Tengine – Tutorial ini merupakan lanjutan dari tutorial sebelumnya yaitu Cara Install Tengine, PHP, MySQL, WordPress di Ubuntu 20.04. Jadi, jika anda belum membaca artikel tersebut, sebaiknya baca terlebih dahulu. Karena, tutorial yang akan saya buat kali ini ada hubungannya dengan tutorial sebelumnya.

Untuk cara install ssl di tengine memang caranya sedikit rumit. Karena installer certbot let’s encrypt belum mendukung untuk software tengine. Oleh karena itu, disini kita akan melakukan installasi SSL Let’s Encrypt secara manual.

Jadi, step by step nya adalah sebagai berikut:

  • Install Certbot
  • Generate cert manual
  • Verifikasi domain
  • Setup konfigurasi virtualHost tengine

Cara Install SSL Let’s Encrypt di Tengine

Install Certbot

snap install core; sudo snap refresh core
snap install --classic certbot
ln -s /snap/bin/certbot /usr/bin/certbot

Untuk lets encrypt sendiri belum mendukun auto-installer untuk tengine. Jadi, kita akan generate ssl sertificate secara manual. Ganti email dan domain sesuai domain anda.

certbot certonly --manual --agree-tos -m [email protected] -d dev.tutorialpedia.net

Apabila muncul TOS (Terms of Agreement) klik Y

Berikutnya, kita diwajibkan untuk memverifikasi kepemilikan domain. Mohon perhatikan gambar ini baik-baik.

cara install ssl

buat folder acme di root direktori domain anda. Sesuaikan root direktori domain anda pada contoh ini saya meletakkan root direktori website di /usr/local/nginx/html

mkdir -p /usr/local/nginx/html/.well-known/acme-challenge/

lalu buat file sesuai dengan caption “ini nama file” pada gambar diatas.

touch /usr/local/nginx/html/.well-known/acme-challenge/IK3-RcPyi3a6SffERLrEIPTN3ISsDbLYLzAt6dZv8AU

Masukkan kode verifikasinya ke file tersebut.

echo 'IK3-RcPyi3a6SffERLrEIPTN3ISsDbLYLzAt6dZv8AU.xvsatngufzf7O2jSUIBpAg6NKLzkhWGWsjn358kY1MY' > /usr/local/nginx/html/.well-known/acme-challenge/IK3-RcPyi3a6SffERLrEIPTN3ISsDbLYLzAt6dZv8AU

Jika sudah, klik Continue

cara install ssl

Jika berhasil maka ssl akan ke generate di /etc/letsencrypt/live/{namadomain}.

cara install ssl

Berhubung kita melakukan generate ssl secara manual, Jadi kita harus melakukan konfigurasi virtual host tenginenya secara manual.

Karena tutorial ini adalah tutorial dari artikel sebelumnya, jadi saya menggunakan sample virtual host artikel sebelumnya.

Virtual Host tengine tanpa SSL

user www-data;
worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    gzip  on;

    server {
        listen       80;
        root   /usr/local/nginx/html/; #lokasi file website anda
        server_name  dev.tutorialpedia.net; #nama domain anda
        index  index.html index.htm index.php;

        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        #konfigurasi PHP
        location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_cache_valid 200 60m;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

}

Untuk mengaktifkan SSL letakkan kode berikut di server block

        listen       443 ssl;
        server_name  tengine.tutorialpedia.net;

        ssl_certificate  /etc/letsencrypt/live/dev.tutorialpedia.net/cert.$
        ssl_certificate_key /etc/letsencrypt/live/dev.tutorialpedia.net/pr$
        ssl_protocols       SSLv3 TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers         HIGH:!aNULL:!MD5;

server {
    if ($host = dev.tutorialpedia.net) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


        server_name  dev.tutorialpedia.net;
    return 404;

Final Result

user www-data;
worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    gzip  on;

    server {
        listen       443 ssl;
        root   /usr/local/nginx/html/; #lokasi file website anda
        server_name  dev.tutorialpedia.net; #nama domain anda
        ssl_certificate  /etc/letsencrypt/live/dev.tutorialpedia.net/cert.pem;
        ssl_certificate_key /etc/letsencrypt/live/dev.tutorialpedia.net/privkey.pem;
        ssl_protocols       SSLv3 TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers         HIGH:!aNULL:!MD5;
        index  index.html index.htm index.php;

        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        #konfigurasi PHP
        location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_cache_valid 200 60m;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }


        }

server {
    if ($host = dev.tutorialpedia.net) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


        server_name  dev.tutorialpedia.net;
        listen 80;
   return 404;
    }
}

Sebelum apply configuration, sebaiknya test terlebih dahulu konfigurasi yang sudah dibuat tadi.

nginx -t

Jika succesful Reload konfigurasi tengine

nginx -s reload

Sekarang coba akses halaman website anda, Pada contoh artikel ini saya coba di dev.tutorialpedia.net, Maka hasilnya seperti berikut:

Protokol website anda sudah menjadi HTTPS.

 

Recent Articles

dns gratis tercepat

Kumpulan DNS Gratis Tercepat!

0
DNS merupakan sebuah sistem yang bertugas menyimpan semua informasi data domain dalam jaringan. Dengan adanya DNS, domain atau hostname yang ada akan ditranslate dan...
apa itu dns

Apa itu DNS ? Dan Fungsinya

0
Apa itu DNS? - DNS (Domain Name System) adalah sebuah sistem yang bertugas menyimpan semua informasi data domain dalam jaringan. Dengan adanya DNS, domain...
apa itu olt

Apa itu OLT ? Serta Fungsinya Dalam Jaringan

0
Apa itu olt ? OLT (Optical Line Termination) adalah perangkat keras yang berfungsi sebagai titik akhir (end-point) dari layanan jaringan optik pasif (Passive Optical...
template voucher

Template Voucher Untuk Mixradius

2
Template Voucher Untuk Mixradius - Pasti kalian bosen kan dengan template voucher default mixradius? tenang. kali ini saya akan memberikan template untuk voucher mixradius kamu agar...
port game mikrotik

Daftar Port Game Online Mikrotik Terbaru

2
Daftar port game online dibawah ini bisa digunakan untuk membuat rule agar koneksi ke game online tersebut bisa lancar, bisa juga untuk memisahkan antara...

Related Articles

Leave A Reply

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Dapatkan konten terbaik dari kami!