Cara Setting SSL Pada Nginx

SSL saat ini menjadi kebutuhan standart development aplikasi. Ketika kita menggunakan container dan ingin melakukan setup domain dengan reverse proxy. Jika sebelumnya belum mengetahui cara setup domain pada nginx silahkan pelajari caranya pada tulisan https://totoraha.web.id/cara-setup-domain-pada-webserver-nginx/. Setelah domain berhasil terhubung dengan server dan kita ingin menambahkan https berikut adalah cara mudah setup https pada container docker.
 
Sebelum kita melakukan setup pada server pastikan kita order SSL baik gratis ataupun premium. Setelah kita melakukan order SSL pastikan kita sudah memiliki :
  1. Certificate / CRT contoh : domain.crt
  2. Private Key  contoh : domain.key
  3. CA Bundle contoh : ca-bundle.crt
3 file tersebut kita simpan dalam directory /home/toto/ssl/. Selanjutnya lakukan ini untuk membuat file .pem
/home/toto/ssl/ $ cat domain.crt ca-bundle.crt > domain.pem
 
Kemudian edit 
sudo /etc/nginx/sites-available/default
 
Dan tambahkan atau sesuaikan seperti berikut 
 
server {
   
    listen 4443 ssl;
    listen [::]:4443 ssl;
   
    ssl_certificate           /home/toto/ssl/domain.pem;
    ssl_certificate_key       /home/toto/ssl/domain.key;
 
    server_name container1.totoraha.web.id ;
    location / {
   
    proxy_set_header   X-Forwarded-For $remote_addr;
    proxy_set_header   Host $http_host;
   
    #sesuaikan dengan port aplikasi yang dituju
    proxy_pass http://127.0.0.1:8081;
    }
}

simpan kemudian restart nginx dengan cara $ sudo service nginx restart.

Kemudian akses https://container1.totorajo.web.id:4443 jika setup sesuai maka domain tersebut sudah bisa diakses menjadi https. Semoga membantu.