ADVERTISEMENT

Dalam tutorial ini, saya tuliskan step by step bagaimana membuat sertifikat SSL valid untuk keperluan di localhost. Untuk keperluan ini, digunakan beberapa alat sebagai berikut:

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

Instalasi linuxbrew

Instalasi mkcert dilakukan dengan menggunakan bantuan package manager linuxbrew. Berikut ini cara instalasi linuxbrew:

sudo apt-get install build-essential curl file git
sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"
test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)
test -d /home/linuxbrew/.linuxbrew && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
test -r ~/.bash_profile && echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.bash_profile
echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile

Instalasi mkcert

brew install mkcert
mkcert -h

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:

31
32
33
34
35
# baris ke 32
SSLCertificateFile /etc/ssl/certs/localhost

# baris ke 33
SSLCertificateKeyFile /etc/ssl/private/localhost-key.pem

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:

ADVERTISEMENT