Langsung ke konten utama

Konfigurasi Web Server Dengan SSL


OS yang saya gunakan :
1. VM Debian 10.2 (server) (IP : 192.168.56.2 / 24)
2. Linux Mint 19.3 Mate (client) (IP : 192.168.56.1 / 24)

INSTALASI APLIKASI

1. Install aplikasinya dengan perintah

apt update && apt install -y openssl ssl-cert apache2

KONFIGURASI SSL

1. Buatlah sebuah folder tersendiri untuk menyimpan SSL yang ingin digunakan

mkdir /etc/ssl/apache2


Kemudian, masuk ke foldernya

cd /etc/ssl/apache2

3. Buat sertifikat SSL-nya dengan perintah berikut 

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -out apache.crt -keyout apache.key

Berikut sekilas penjelasan untuk perintah di atas
  • openssl : Merupakan perintah dasar untuk membuat dan mengatur sertifikasi, kunci, dan file OpenSSL lainnya
  • req: Sub-perintah ini menentukan bahwa kita akan menggunakan manajemen Certificate Signing Request (CSR) X.509. "X.509" adalah standar infrastruktur kunci publik yang dipatuhi SSL dan TLS untuk manajemen kunci dan sertifikatnya. Kita akan membuat sertifikat X.509 baru, jadi kita menggunakan sub-perintah ini. 
  • -x509: Perintah ini memodifikasi sub-perintah sebelumnya dengan memberi tahu si utility OpenSSL bahwa kita akan membuat sertifikat yang ditandatangani sendiri alih-alih menghasilkan CSR, seperti yang biasanya terjadi.
  • -nodes: Ini memberitahu OpenSSL untuk melewati opsi pengamanan sertifikat kita dengan passphrase. Kita ingin Apache untuk dapat membaca file-nya tanpa campur tangan pengguna ketika server dijalankan. Passphrase akan mencegah hal ini terjadi karena kita harus memasukkannya setelah setiap restart.
  • -days 365: Opsi ini menetapkan durasi waktu sertifikat untuk dianggap valid. Saya atur selama satu tahun di sini.
  • -newkey rsa: 2048: Perintah ini menandakan bahwa kita ingin membuat sertifikat baru dan kunci baru secara bersamaan. Tentunya, kita tidak ingin membuat kunci yang dipakai pada sertifikat pada langkah sebelumnya, jadi kita harus membuatnya bersama dengan sertifikat. Bagian rsa: 2048 memberitahukan untuk membuat kunci RSA yang panjangnya 2048 bit.
  • -keyout: Bagian ini menentukan lokasi untuk meletakkan file private key yang akan kita buat
  • -out: Perintah ini menentukan lokasi untuk meletakkan sertifikat yang kita akan buat.
Kemudian, akan muncul output seperti di atas. Isikan sesuai dengan data anda

4. Kemudian, ubah permissionnya supaya hanya dapat diedit oleh root

chmod 600 *

5. Aktifkan modul SSL-nya dengan perintah

a2enmod ssl

KONFIGURASI APACHE

1. Masuk ke direktori konfigurasi situsnya

cd /etc/apache2/sites-available

2. Buatlah file konfigurasi web servernya

cp 000-default.conf nama_file.conf

3. Kemudian, edit file seperti berikut. Jangan lupa tambahkan ServerName (domain) pada filenya juga



Jangan lupa untuk menambahkan bagian SSLEngine, SSLCertificateFile dan SSLCertificateKeyFile. Bagian tersebut kita gunakan untuk memberitahu Apache letak file sertifikat dan key-nya

4. Sekarang, aktifkan web-nya dengan perintah

a2ensite nama_file.conf

5. Sekarang, kita buat folder untuk menampung html-nya (lokasi file harap disesuaikan dengan yang anda tulis pada konfigurasi sebelumnya)

mkdir /var/www/html/web

6. Sekarang, masuk ke foldernya

cd /var/www/html/web

Buatlah file html dengan perintah

nano nama_file.html

Atau, anda juga dapat meng-copy file dari /var/www/html/index.html untuk cepatnya jika hanya untuk pengujian/belajar

cp /var/www/html/index.html /var/www/html/web

Jika sudah, restart apache dengan perintah berikut

systemctl restart apache2

PERCOBAAN PADA WEB

Masukkan domain website yang sudah dibuat tadi pada browser anda




Jika diperhatikan lebih detail, terdapat simbol gembok dengan warning di sebelah kiri atas. Hal tersebut normal, karena browser menganggap sertifikat yang kita buat tidak aman dan belum diverifikasi oleh browser, hal ini karna sertifikat yang kita buat sendiri dan kita yang tanda tangan sendiri.

Sekian tutorial dari saya, selamat mencoba 😄😄

Komentar