Episode ini membangun fondasi sertifikat untuk L2TP/IPsec: hirarki CA berlapis, penerbitan sertifikat dengan certutil untuk Libreswan dan pki untuk strongSwan, penanganan revocation lewat CRL dan OCSP, serta pemantauan masa berlaku sertifikat.

Di episode 6 kita memilih sertifikat X.509 sebagai otentikasi enterprise. Episode 16 mempraktikkannya: bagaimana membangun hirarki CA, menerbitkan sertifikat untuk server dan client, mencabut sertifikat yang bermasalah, dan memastikan seluruh proses berjalan otomatis.
Sertifikat adalah fondasi kepercayaan: seluruh keamanan deployment kalian bergantung pada CA yang dijaga baik dan proses revocation yang benar. Setelah episode ini, kalian bisa mengelola identitas digital untuk ribuan client tanpa berbagi satu rahasia bersama.
Hirarki sertifikat yang benar berlapis: Root CA (offline, dijaga ketat) menerbitkan Intermediate CA yang dipakai sehari-hari, dan intermediate menerbitkan leaf certificates untuk server dan client. Lapisan ini membatasi risiko: jika intermediate bocor, kalian cukup menggantinya tanpa menyentuh root.
Root CA (offline)
-> Intermediate CA (operasional)
-> Server cert (vpn.example.com)
-> Client cert (user-1, user-2, ...)Model ini juga membuat rotation dan revocation lebih mudah, karena chain yang pendek mempercepat validasi.
Kita bisa membangun seluruh hirarki dengan OpenSSL. Pertama, buat Root CA:
openssl genrsa -out rootCA.key 4096
openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 3650 \
-out rootCA.crt -subj "/CN=VPN Root CA"Perintah openssl req -x509 menandatangani sendiri sertifikat root dengan masa berlaku 10 tahun. Simpan rootCA.key offline — ini adalah kunci yang paling berharga di seluruh sistem.
Kemudian terbitkan Intermediate CA dari Root:
openssl genrsa -out intermediate.key 4096
openssl req -new -key intermediate.key -subj "/CN=VPN Intermediate CA" \
-out intermediate.csr
openssl x509 -req -in intermediate.csr -CA rootCA.crt -CAkey rootCA.key \
-CAcreateserial -out intermediate.crt -days 1825 -sha256strongSwan menyediakan tool pki yang menyederhanakan penerbitan:
sudo pki --issue --cacert intermediate.crt --cakey intermediate.key \
--san vpn.example.com --san 203.0.113.10 \
--lifetime 365 --dn "CN=vpn.example.com" \
--outform pem > server.crt
sudo pki --gen --type ecdsa --outform pem > server.keypki --issue menerbitkan leaf certificate dengan subject alternative name (SAN) berisi domain dan IP server. Pasangan kunci server dibuat terpisah dengan pki --gen.
Libreswan menyimpan sertifikat di database NSS, jadi gunakan certutil:
sudo certutil -A -d sql:/etc/ipsec.d -n "Root CA" -t "CT,," -i rootCA.crt
sudo certutil -A -d sql:/etc/ipsec.d -n "Intermediate" -t ",," -i intermediate.crt
sudo certutil -A -d sql:/etc/ipsec.d -n "server-cert" -t ",," -i server.crt
sudo pk12util -d sql:/etc/ipsec.d -i server.p12 -W "password-pkcs12"pk12util mengimpor pasangan kunci dan sertifikat dalam satu file PKCS12. Setelah itu, authby=rsasig dengan leftcert=server-cert akan memakai identitas ini.
Saat kunci client bocor, sertifikatnya harus dicabut. Ada dua mekanisme: CRL (Certificate Revocation List) yang didistribusikan sebagai daftar, dan OCSP yang menjawab pertanyaan per sertifikat secara real-time. Untuk IPsec, sertakan titik distribusi CRL atau OCSP di sertifikat saat menerbitkan, lalu aktifkan pemeriksaan di daemon.
Libreswan memeriksa CRL yang didistribusikan via URL, sedangkan strongSwan menyediakan plug-in revocation dan ocsp. Konfigurasi minimal di strongSwan:
charon {
plugins {
revocation {
enable = yes
crl_uri = "http://crl.example.com/vpn.crl"
}
}
}Nilai crl_uri menunjuk file CRL yang diterbitkan ulang berkala.
Sertifikat yang kedaluwarsa adalah penyebab paling umum downtime VPN. Otomatiskan pemantauan:
for c in *.crt; do
openssl x509 -in "$c" -noout -enddate
doneLoop di atas mencetak tanggal kedaluwarsa semua sertifikat di direktori. Siapkan cron yang menjalankannya setiap pekan dan mengirim peringatan jika sisa waktu kurang dari 30 hari.
Tip
Pasang kalender rotation otomatis: perpanjang sertifikat client setiap 90-365 hari dan sertifikat server setiap tahun. Intermediate bisa bertahan 5 tahun, sedangkan Root 10 tahun dengan penyimpanan offline.
Episode 16 melengkapi fondasi sertifikat: hirarki CA berlapis yang membatasi risiko, penerbitan dengan OpenSSL, pki dan certutil, penanganan revocation lewat CRL dan OCSP, serta pemantauan masa berlaku yang otomatis.
Inti yang harus dibawa pulang:
pki --issue untuk strongSwan; certutil dan pk12util untuk NSS Libreswan.Di episode 17 selanjutnya kita akan membahas virtual IP dan address management — alokasi alamat client lewat ModeConfig IKEv1 atau Configuration Payload IKEv2, kolom rightsourceip, dan integrasi alokasi dinamis dengan RADIUS.