Https adalah versi aman dari http karena https akan melakukan enkripsi dari data yang ditransmisikan antara client dan server, dan data tersebut tidak dapat diubah oleh pihak lain karena data tersebut akan di validasi oleh message authentication code, dan https menggunakan port 443 sedanhkan http menggunakan port 80, sebelumnya saya sudah mwmbuat tutorial konfigurasi https pada web apache, sekarang saya akan membuat tutorialnya untuk nginx. Happy reading
Topologi
Konfigurasi Server
1. Pertama masuk dulu ke direktori /certs/ di direktori ini kita akan membuat sertifikat dari httpsnya. perintahnya cd /etc/pki/tls/certs/
2. Lalu buat server key dengan perintah make server.key lalu anda akan diminta untuk membuat password untuk server key masukan passwordnya, server key digunakan oleh server untuk mendecrypt informasi terenkripsi dari browser, Private key ini sifatnya sangat rahasia dan tidak ada yang boleh tau (bocor) karena kunci ini yang digunakan untuk membongkar enkripsi data dari dan ke server
3. Sekarang generate openssl pada server.key dengan perintah openssl rsa -in server.key -out server.key lalu masukan password yang dibuat sebelumnya, perintah tersebut untuk pembuatan certificate
4. Lalu buat server.csr ini berfungsi untuk memberikan informasi https, perintahnya make server.csr lalu masukan informasinya seperti gambar dibawah untuk extra attribute bisa dikosongkan
5. Lalu generate lagi certificatenya dengan perintah openssl x509 -in server.csr -out server.crt -req -server.key -days 3650
6. Lalu sekarang konfigurasi file nginxnya dengan perintah nano /etc/nginx/nginx.conf
7. Lalu masukan beberapa baris yang saya tandai, jika sudah jangan lupa di save
Keterangan :
listen : baris ini dimaksudkan agar server menggunakan port 443 ssl
ssl protocols : untuk mengatur protocols apa yang digunakan ssl
ssl certificate : untuk memberitahu letak dari sertifkatnya
ssl certifictae key : letak dari sertifikat keynya
8. Lalu sekarang masukan service https pada firewall dengan perintah firewall-cmd --add-service=https --permanent lalu reload firewall dengan perintah firewall-cmd --reload
9. Sekarang buat file index.html, file ini akan dimunculkan untuk tampilan dihalaman webnya, perintahnya nano /usr/share/nginx/html/index.html
10. Lalu masukan script htmlnya seperti dibawah, atau jika ingin buat sendiri silahkan, lalu save
11. Lalu agar pengkonfigurasian berjalan restart nginx dengan perintah systemctl restart nginx
Verifikasi client
1. Coba buka browser anda lalu masukan https://domain anda pada url, jika ada peringatan dibawah klik continue saja, ini dikarenakan kita membuat sertifikatnya dengan cara gratisan jadi browser belum percaya dengan sertifikat yang dibuat
2. Sudah berhasil masuk ke web dengan https, klik tanda silang yang ada didekat url lalu klik view certificate untuk melihat sertifikat yang dibuat sebelumnya
3. Pilih tab details lalu pilih subject, maka akan terlihat informasi yang sebelumnya diisi