Sebenarnya saya pernah membuat tutorial tentang bagaimana membuat SSL valid untuk digunakan di localhost. Tutorial yang saya maksud tersebut bisa diakses di pranala https://hanifmu.com/posts/membuat-sertifikat-ssl-valid-untuk-localhost/.
Karena tutorial yang saya buat tersebut di atas —menurut saya— terlalu banyak langkah-langkah yang harus dieksekusi dalam membuat SSL valid untuk localhost, maka saya membuat ulang tutorial tersebut tentu saja dengan langkah-langkah yang lebih sederhana.
Catatan: Saya menggunakan sistem operasi Linux Mint 20.2 Uma dalam membuat tutorial ini.
Sekilas Tentang mkcert
mkcert adalah alat yang dapat kita digunakan untuk membuat sertifikat SSL valid untuk digunakan hanya di localhost saja.
Instalasi certutil
sudo apt install libnss3-tools -y
Instalasi mkcert
Unduh berkas instalasi mkcert di https://github.com/FiloSottile/mkcert/releases.
Saat tutorial ini ditulis, versi terbaru mkcert adalah v1.4.3.
wget https://github.com/FiloSottile/mkcert/releases/download/v1.4.3/mkcert-v1.4.3-linux-amd64
sudo cp mkcert-v1.4.3-linux-amd64 /usr/local/bin/mkcert
sudo chmod +x /usr/local/bin/mkcert
Membuat Sertifikat SSL
Buat Local CA terlebih dahulu dengan perintah berikut:
mkcert -install
mkcert -CAROOT
Dalam contoh ini, kita membuat sertifikat SSL untuk localhost.
mkdir ~/ssl
cd ~/ssl
mkcert localhost
Perintah di atas akan menghasilkan 2 file, yakni file sertifikat (localhost.pem) dan private key (localhost-key.pem).
ls
Menggunakan Sertifikat SSL di Apache2
Sertifikat yang sudah kita buat selanjutnya dapat kita gunakan di web server Apache2. Bila belum melakukan instalasi web server Apache2, gunakan perintah berikut:
sudo apt install apache2
Kemudian pindahkan file sertifikat yang sudah kita buat dengan perintah berikut:
sudo mv ~/ssl/localhost.pem /etc/ssl/certs/
sudo mv ~/ssl/localhost-key.pem /etc/ssl/private/
Selanjutnya kita sesuaikan virtualhost localhost (port 443).
sudo vi /etc/apache2/sites-available/default-ssl.conf
Sesuaikan bagian berikut:
|
|
Aktifkan modul SSL Apache2 dan virtualhost localhost (port 443).
sudo a2enmod ssl
sudo a2ensite default-ssl.conf
Muat ulang Apache2.
sudo systemctl restart apache2
sudo systemctl status apache2
Percobaan Akses
Gunakan browser dan akses alamat https://localhost/.
Membuat SSL Subdomain
Untuk membuat sertifikat SSL dengan subdomain misal demo.localhost, gunakan perintah berikut:
mkcert demo.localhost
Referensi: