Senin, 24 April 2017

SSL / HTTPS pada Nginx


SSL / HTTPS pada Nginx

Hai balik lagi bersama saya di blog yang masih sama yaitu skyblues2, kali ini saya akan sharing tentang cara membuat secure connection pada web server yang agan buat , materi ini adalah materi lanjutan dari materi sebelumnya yaitu tentang enable userdir pada nginx , disini kita akan membuat web agan berbasis https / ssl yang merupakan secure connection. Oke berikut ini adalah topologinya :





gambar1(SSLN-SB2-DL)

Dan ini merupakan ip server dan ip client ...


gambar2(SSLN-SB2-DL)

gambar3(SSLN-SB2-DL)


1. Buat Server.key

Sebelum membuat server.key , pertama masuk dulu ke direktori make dengan cara mengetikkan perintah : cd /etc/pki/tls/certs . kemudian kita akanmembuat server.key , server.key berfungsi sebagai private key untuk ssl agan. caranya pertama kali kita masuk dulu ke direktori /etc/pki/tls/certs dengan menggunakan perintah :



make server.key

gambar4(SSLN-SB2-DL)

gambar5(SSLN-SB2-DL)

2. Buat private Key

Langkah selanjutnya adalah membuat sebuah private key untuk sslnya , masukkan password sebelumnya yang agan buat... Untuk membuatnya adalah dengan mengetikkan perintah :


openssl rsa -in server.key -out server.key

gambar6(SSLN-SB2-DL)


3. Buat server.csr

Kemudian kita akan membuat server.csr yang berisikan data data tentang ssl certificate yang akan buat , isi semua data yang diminta kecuali challenger password dan optional company name , itu bisa di skip saja. Dan berikut ini adalah cara membuat dan data saya :


make server.crt

gambar7(SSLN-SB2-DL)

4. Konfigurasi server.crt

Berbeda dengan server.csr , server.crt ini adalah hasil generate data dari server.csr yang akan diubah menjadi data file dari pharse key yang akan dipakai pada ssl / https agan. Cara untuk konfigurasinya adalah dengan cara mengetik command :


openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 3650

gambar8(SSLN-SB2-DL)
nah file server.crt akan meregenerate secara otomatis , kemudian kita disuruh memasukkan password yang kita buat sebelumnya pada server.key. Penjelasan dari syntax diatas adalah perintah mengubah server.csr menjadi server.crt dan menggunakan signkey dari server key yang berjangka waktu 3650 hari.


5. Edit file Vhost.conf

Untuk agan yang belum tau cara membuat file vhost.conf , agan bisa baca di postingan saya sebelumnya yaitu :Konfigurasi Vhost Nginx. Jika agan sudah ada , maka agan bisa lanjut ke langkah selanjutnya yaitu mengedit file vhost agan , pertama masuk dulu ke file konfigurasi vhost agan , disini file konfigurasi saya berada di direktori /etc/nginx/conf.d/ dan file nya bernama vhost.conf .. jadi saya mengetikkan perintah :

nano /etc/nginx/conf.d/vhost.conf

gambar9(SSLN-SB2-DL)

Oke tambahkan syntax seperti pada gambar diatas ( yang tulisannya berwarna biru ) , setelah itu save dan close file konfigurasinya ... kemudian restart nginxnya dengan mengetikkan perintah :

systemctl restart nginx

gambar10(SSLN-SB2-DL)

6. Firewall-cmd

Langkah selanjutnya adalah dengan mengaktifkan firewal untuk service https , dan mereload firewallnya . caranya adalah dengan mengetikkan perintah :

firewall-cmd --permanent --add-service=https
firewall-cmd --reload

gambar11(SSLN-SB2-DL)

7. Edit file HTML

Langkah selanjutnya adalah mengedit tampilan htmlnya , caranya dengan masuk ke source file dari html agan , kemudian agan edit sesuka hati , jika sudah jangan lupa save lalu close . berikut ini adalah contohnya file saya berada di direktori /usr/share/nginx/dhika.id/ dan nama filenya adalah index.html , jadi saya mengetikkan perintah :


nano /usr/share/nginx/dhika.id/index.html

gambar12(SSLN-SB2-DL)

8. Verifikasi

Langkah terakhir adalah verifikasi , yaitu dengan cara mengakses webnya , dengan mengetikkan https://alamat_web_agan kemudian enter , jika hasilnya seperti ini , maka agan berhasil :

gambar13(SSLN-SB2-DL)

mengapa terlihat tampilan seperti error ? karena ini merupakan certificate ssl yang gratis , jadi keamanannya kurang bahkan tidak bagus. Oke , jika begini , klik pada menu 'show advance' kemudian klik 'proceed to www.example.com (unsafe)'  nah maka agan akan teralihkan ke tampilan web agan...



gambar14(SSLN-SB2-DL)

Yak dengan begini , berakhirlah sudah pertemuan kita untuk kali ini , sampai jumpa di next post..


Dhika Mahendra Web Developer

Morbi aliquam fringilla nisl. Pellentesque eleifend condimentum tellus, vel vulputate tortor malesuada sit amet. Aliquam vel vestibulum metus. Aenean ut mi aucto.

Tidak ada komentar :

Posting Komentar