Minggu, 14 Mei 2017

8.16 Konfigurasi HTTPS pada Web Server Nginx

Assalamu'alaikum Warahmatullahi Wabarakatuh. 

Alhamdulillah, masih dalam semangat menyambut Ramadhan, Alhamdulillah harus semangat juga ngeblog!! semangat, semangat. 

Pada lab kali ini kita akan belajar mengenai HTTPS, apa itu https?

(Hypertext transfer protocol) atau yang biasa disingkat dengan https, secara umum sama dengan http, yakni sebuah protokol yang mengatur komunikasi antar client dan server. Tetapi ada perbedaan yang paling mendasar antara https dan http, https ini bekerja bersama protocol ssl (secure socket layer) atau transport layer security (TLS) yang memungkinkan adanya enkapsulasi jadi lebih bersifat secure karena menambah keamanan sebuah jaringan yang diakses oleh browser. dan secara default, https berjalan pada port 433. 

Sekarang kita masuk ke konfigurasinya. 

Topologi :


Pertama-tama pindah direktori terlebih dahulu, ke dalam direktori /certs/ karena di dalam direktori /certs/ inilah kita akan membuat certificied SSL. 



Sekarang buat file key atau kunci untuk file scr-nya yang nantinya akan kita buat. untuk perintahnya bisa dilihat pada gambar di bawah ini ya. 



Pada saat kita membuat key, akan diminta password, untuk itu ketikkan password sesuai dengan keinginan anda. 




Nah, apabila key tadi sudah selesai, kita lanjut membuat file csr-nya.jadi, file scr ini adalah identitas dari sertifikat yang nantinya akan terbuat. untuk perintahnya perhatikan gambar di bawah ini ya. 



Pada pembuatan file ini, kita akan diminta untuk mengisi beberapa identitas. seperti negara, provinsi, kota, dan sebagainya. Pengisiannya di sesuaikan dengan lokasi kalian ya. untuk keterangannya bisa dilihat pada keterangan di bawah ini.




Keterangan : 
Country Name : Nama Negara (ID = Indonesia)
Province Name : Nama Provinsi (Jawa Barat
Locality Name (City) : Kota (Bekasi)
Organization Name : Nama organisasinya / nama perusahaannya (SMK Negeri 1 Bekasi)
Organizational Unit Name : Nama unit organisasinya / Bidangnya (Teknik Komputer Jaringan)
Common Name (Server Hostname) : nama domain / hostname (www.fitrahanugrah.com)
Email Address : Alamat email (fitrahanugrah@fitrahanugrah.com)

Dan nantinya kita akan dimintai password untuk certificate, di sini saya tidak memberikan password, karena kita membuat ssl yang berbasis lokal, namun apabila secara real haruslah di isi ya untuk keamanan. 

Sekarang, lanjut untuk meng-konfigurasi RSA terhadap key-nya. RSA ini adalah sebuah algoritma pada eknskripsi kunci publik, seperti halnya enkripsi. 



Sekarang kita buat file crt-nya, file crt ini terbentuk dari penggabungan antar file scr dan key yang sudah dibuat tadi dengan menggunakan openssl. 


Keterangan : 
x509 merupakan format public key certificate yang digunakan. 
-in merupakan sumber dari indentitas yang nantinya akan di masukkan ke dalam sertifikatnya. 
out merupakan hasil output dari file yang berpa sertifikatnya. 
-req -signkey merupakan file keynya.
-days merupakan jangka waktu yang di berikan untuk masa aktif sertifikat tersebut dalam hitungan hari. 

Sekarang kita akan konfigurasi HTTPS untuk domainnya, kita akan mengkonfigurasinya pada file konfigurasi virtualhost, yang terletak pada directory /etc/nginx/conf.d/ dengan nama file vhost.fitrah.conf 



Nah, sekarang kita tambahkan syntax seperti yang sudah saya beri tanda pada gambar di bawah ini. 



Keterangan :
listen 433 ssl maksudnya adalah suatu domain dikonfigurasi untuk mendengarkan atau membaca service https pada port 433
sssl_protocol TLSv1 TLS v1.1 TLSv1.2 adalah standarisasi protocol yang digunakan oleh https yaiu ssl dan juga tls (transport layer security)
ssl_certificate adalah letak dari file sertifikat .crt yang telah dibuat dan dikonfigurasi. 
ssl_certificate_key adalah letak key / kunci dari sertifikat ssl tersebut. 

Sekarang kita restart service nginx-nya agar konfigurasi yang kita buat dapat berjalan dengan baik. 


Setelah itu, kita masukkan service https ke dalam firewall agar dapat di akses dari client. 





Kemudian kita reload juga. 



Sekarang kita edit konten web untuk indexnya sesuai https tersebut, di sini saya mengedit filenya pada directory /usr/share/nginx/fitrahanugrahcom dengan nama file index.html untuk directory filenya sesuaikan peletakkan file indexnya sesuai dengan diretory dari domain yang kalian gunakan. 




Nah sekarang kita edit file index.html-nya, pengisian ini bersifat bebas. isikan scipt sesuai dengan kebutuhan dan keinginan anda, nah kalau script di bawah ini hanya sekedar contoh sederhananya saja. 




Verivikasi Client

Sekarang kita akan lakukan pengecekan pada web browser client dengan mengetikan https://domainserver pada kolom address bar. contoh : https://fitrahanugrah.com

terlihat pada tampilan web servernya terdapat peringatan bahwa jairngan in tidak aman, karena ssl yang kita buat bersifat lokal. sekarang kita klik Advanced



Klik Procced to fitrahanugrah.com untuk bisa masuk ke konten web httpsnya. 





Dan inilah tampilan dari halaman web servernya. terlihat bahwa isi kontennya sesuai dengan index.html yang telah kita edit sebelumnya. 




Sekarang kita coba inspect pagenya, dengan mengklik kanan dan pilih Inspect.


Selanjutnya kita klik tab Security lalu pilih View Certificate.


Dan inilah details dari certificate. 



Mungkin sekian yang dapat saya sampaikan, kurang lebihnya mohon maaf.

Wassalamu'alaikum Warahmatullahi wabarakatuh. 

0 komentar:

Posting Komentar