Assalamu'alaikum warahmatullah wabarakatuh.. Sekarang kita akan mencoba mengaktifkan SSL atau HTTPS pada Web Server NginX CentO...

RHEL 7 Web Server Nginx 5 : Mengaktifkan SSL untuk Nginx Redhat


Assalamu'alaikum warahmatullah wabarakatuh..

Sekarang kita akan mencoba mengaktifkan SSL atau HTTPS pada Web Server NginX CentOS. Buat kalian yang masih bingung apa itu https, berikut adalah penjelasannya.

HTTPS Wikipedia
Protokol transfer hiperteks adalah versi aman dari HTTPprotokol komunikasi dari World Wide Web. Ditemukan oleh Netscape Communications Corporation untuk menyediakan autentikasi dan komunikasi tersandi dan penggunaan dalam komersi elektris.
Selain menggunakan komunikasi plain text, HTTPS menyandikan data sesi menggunakan protokol SSL (Secure Socket layer) atau protokol TLS (Transport Layer Security). Pada umumnya port HTTPS adalah 443.

Menurut ane
HTTPS adalah protokol yang akan melindungi http atau web server anda dengan kode enkripsi yang akan dibuat ssl. 


Perbedaan utama yang terdapat pada HTTP dan HTTPS adalah terhadap penggunaan port. Pada HTTP, port yang digunakan adalah port 80. Sedangkan untuk HTTPS, port yang digunakan adalah 443. Dengan menggunakan HTTPS, informasi akan lebih aman karena dilakukan enkripsi pada pengiriman informasi. Informasi yang dikirim pun hanya akan dapat diakses oleh client dan server akhir.
Selain itu, HTTPS mencakup hal auntentikasi server, kerahasiaan data, dan integritas data. Autentikasi server memungkinkan pengguna memiliki kepercayaan sedang berkomunikasi dengan server yang dituju. Data yang tersandi membuat data yang dikirimkan atau diterima akan menjadi sangat rahasia. Integritas data ini terkait penyerang jaringan yang tidak dapat merusak atau mengubah komunikasi data antara client dan server karena divalidasi oleh MAC (Message Authentication Code).
HTTPS bukanlah protokol yang terpisah, tetapi HTTPS mengacu pada kombinasi dari interaksi HTTP normal melalui Secure Socket Layer (SSL) atau Transport Layer Security (TLS). Hal ini menjamin keamanan dari para penyadap informasi.
Dalam hal ini, ada dua jenis umum lapisan enkripsi diantaranya Transport Layer Security (TLS) dan Secure Socket Layer (SSL). TLS adalah protokol pada jaringan komputer yang dapat menjaga kerahasiaan data yang dikirim oleh client ke server ataupun sebaliknya. Dengan itu, pihak ketiga tidak dapat menyadap data yang dikirim ke server atau ke client.
Sedangkan SSL adalah sebuah teknologi enkripsi untuk mengamankan HTTP sehingga terjaga pengiriman data antara server dengan client. Penggunaan SSL biasanya dapat dilihat pada address bar browser yang digunakan. Web yang sudah terpasang SSL akan menjadi https://namadomain.com. Kemanan seperti ini biasanya digunakan oleh web yang melakukan transaksi keuangan seperti PayPal, Intenet Banking, dan lainnya.

Itulah pengertian singkatnya dari ssl. Berikut adalah konfigurasi HTTPS pada NginX centos7. 

Melanjutkan materi sebelumnnya, saya menggunakan topologi sebagai berikut.



Berdasarkan Topologi diatas, saya akan menggunakan webserver centos 7 dengan domain "www.networknjay.com" atau IP 172.16.11.115. CEKIDOOOTT!!!


Konfigurasi Web Server NginX


1. Menuju ke direktori certs nyaa.
cd /etc/pki/tls/certs



2. Lalu buat key servernya. Ini bertujuan agar client dapat melakukan otentikasi pada server secara aman.
make servergw.key




3. Lalu kita lanjutkan pembuatan Key nya, ya ini ibarat lagi disahkan sama aplikasi ssl nya.

openssl rsa -in servergw.key -out servergw.key




5. Lalu kita akan buat csr. Ini berisi identitas dari server itu sendiri.

make servergw.csr





6. Kita akan membuat .crt atau certificate dari SSL Server kita. Kita menggunakan format SSL yang standar atau umum digunakan. Kita akan masukkan .csr (data identitas server) ke .crt (certificate) lalu untuk request dan sign key (autentikasi klien) akan menggunakan .key yang diawal telah kita buat.

openssl x509 -in servergw.csr -out servergw.crt -req -signkey servergw.key -days 3650
Keterangan :
-openssl adalah aplikasi pembuat SSL
-X509 adalah format certificate standar untuk SSL.
- -in adalah memasukkan atau membuat
- -out file baru yang akan dihasilkan
- -req -signkey adalah mengambil key dan autentikasi berdasarkan sever key.





7. Setelah SSL dibuat, kita akan edit sedikit pada konfigurasi

nano /etc/nginx/nginx.conf




8. Menuju ke baris 38 pada kata "server".






9. Lalu kita edit sedikit pada zona server tersebut. Seperti ini





10. Setelah file konfigurasi global nginx di simpan, sekarang kita daftarkan "HTTPS" atau SSL pada firewall. Ya biar klien bisa mengakses https tanpa diblok oleh firewall

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



11. Lalu restart nginx. BILA "FAILED", PERIKSA FILE KONFIGURASI GLOBAL NGINX, APAKAH ADA KESALAHAN TULISAN ATAU TIDAK/.

systemctl restart nginx


UjiCoba Klien

Saya menggunakan windows 10 pro original dengan ip seperti topolgi, 172.16.11.232/24 dengan DNS mengarah ke 172.16.11.115 atau ip domain. "https://ns.networknjay.com"




saya akan coba mengakses domain saya.




Lalu lihat secara detail informasi HTTPS nya.





Persiss kek yang kita buat :v


0 comments: