Lab 8.16, Web HTTPS di NginX Centos 7



    Hai young society. Kembali lagi. Jika kemarin kita membahas tentang bagaimana cara nya membuat server https dengan menggunakan apache, kali ini kita akan mencoba membuat web server https dengan menggunakan NginX server dan dengan menggunakan Centos sebagai sistem operasi servernya. Tapi sebelumnya, apa itu https?

    HTTPS adalah hypertext transfer protocol secure,yang berarti ini adalah versi aman dari http,sedangkan http sendiri ialah sebuah system transmisi dan menerima informasi di internet.Jadi kesimpulannya https ialah sebuah system transmini dan menerima informasi yang sudah di encripsi dari internet,sehingga lebih membuat http lebih aman dari pada http.

    HTTPS memiliki fungsi hamper sama seperti http,yaitu sebagai pemberi semua informasi atau data kepada client secara cepat,mudah,dan akurat yang disebarkan diantara server yang lain.HTTPS dan HTTP biasanya digunakan untuk mengakses halaman html,bedanya https lebih secure atau aman.
Oke langsung saja ke tutorialnya.







Topology :









Konfigurasi NgingX Server :


1.  Karena HTTPS ini sudah terinstall dalam server, maka kita bisa langsung mengkonfigurasinya. Untuk mengkonfigurasinya kita pindah dulu ke directory /etc/pki/tls/certs dengan perintah cd. Direktori ini adalah dir untuk membuat file certified ssl nya naanti.

cd /etc/pki/tls/certs



2.  Pertama kita buat dahulu server keynya. Untuk membuat file ini ekstensinya harus .key sedangkan nama filenya bebas. Pada kasus kali ini Author memberi nama filenya dengan server. File ini bertujuan untuk membuat password untuk file csr nantinya.


make server.key




3.  Lalu kita buat file .csr nya, file ini bertujuan untuk identitas ssl kita nantinya. disaat kita ingin mengisifile ini masukan terlebih dahulu password yang kita buat pada step no 2 diatas.

make server.csr




4.  Pada file .csr ini nantinya kita akan diminta untuk mengisi biodata untuk identitas ssl kita, seperti negara,provinsi, kota, dan nama perusahaan kita.

     Tapi karena disini hanya sebagai contoh saja, maka isi asal saja. Untuk tidak diisi juga tidak apa-apa. Tapi lebih baik diisi supaya unutk vertifikasi hasilnya nanti mudah.






5.  Kemudian konfigurasi RSA untuk server.key nya dengan menggunakan openssl.

     RSA sendiri ialah semacam algoritma untuk public key. RSA ini algoritma yang cocok untuk digital signature atau semacam enkripsi.

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




6.  Kemudian kita buat file .crt nya atau file sertifikat untuk ssl kita dengan cara menggabungkan file .csr dan .key yang tadi kita buat dengan menggunakan perintah openssl.

     - x509          :  format public key atau sertifikat ssl nya.
     - -in             : untuk menentukan file .csr/identitas kedalam .crt
     - -out           : untuk menentukan hasil dari generate ini.
     - -req -sign  : untuk file menentukan .key nya
     - days 3650 : untuk menentukan jangka aktif dari ssl nya (disini 3650/10 tahun)

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




7.  Lalu kita tetnukan domain mana yang ingin menggunakan ssl ini. Pertama kita buka dahulu letak file dimana domain di konfigurasi. Disini Author mengkonfigurasi nya di direktori virtual host karena melanjutkan lab yang kemarin. Jika kalian belum membacanya bisa dilihat disini.

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




8.  Didalam kita cukup menambahkan beberapa syntax pada domain yang kita ingin kan, disini Author memberikannya di www.tkj,net.

     lalu tambahkan listen 443 ssl atau port dari ssl agar domain kita dapat menggunakan service https.
     ssl_protocols TLSv1 TLSv1.1 TLSv1.2 adalah protokol standar yang digunakan untuk https yaitu SSL atau TLS (transport layer security)
     ssl_certificate adalah lokasi dimana file .crt/certificate kita berada.
     ssl_certificate_key adalah dimana file .key kita berada.






9.  Kemudian restart service nginx nya, pastikan tidak terjadi error.

systemctl restart nginx




10.  Lalu kita tambahkan service https kedalam firewall server kita agar dapat diakses oleh client kita. Kemudian kita reload/restart firewall kita.

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








Test dari Client



11.  Coba akses domain kamu dengan awalan https://. Pasti browser akan mengingatkan kita bahwa web ini tidak secure karena https yang kita buat memang palsu atau tidak sah. tapi langsung saja go on the webpage.






12.  Dan inilah tampilannya. Nanti dia akan certificate error.










    Nah segitu dulu untuk lab kali ini. Untuk lab berikutnya lab 8.17 adalah PHP-fpm. Jika ada kesalahan gambar atau penjelasan mohon di koreksi dan bantu Author merevisi nya. Sekian dulu perjumpaan kita. Wassalamualaikum..

Comments

Popular Posts