Salah satu fitur VPN yang ada di MikroTik adalah SSTP (Secure Socket Tunneling
Protocol). SSTP merupakan sebuah PPP Tunnel dengan TLS 1.0 Channel. Fitur ini
berjalan pada protokol TCP dan Port 443. Supaya dapat memanfaatkan SSTP secara
optimal dengan keamanan yang baik, kita diharuskan menambahkan sertifikat SSL
untuk koneksi antara server dan client.
Kita bisa mendapatkan sertifikat SSL itu dengan membeli melalui vendor-vendor
yang ada atau kita bisa membuat sendiri sertifikat tersebut menggunakan OpenSSL.
Pada contoh kali ini kita akan menghubungkan dua network melalui WAN menggunakan
SSTP. Disini kita akan menekankan cara pembuatan sertifikat dengan OpenSSL dan
implementasi pada konfigurasi SSTP baik server maupun client. Untuk sisi SSTP
Server kita menggunakan RB751U dan sisi SSTP Client menggunakan RB941-2n (hAP-Lite).
Membuat Sertifikat dengan OpenSSL
Berikut ini adalah langkah-langkah dalam membuat CA (Certificate Authority) dan
Server/Client Certificate menggunakan Linux.
Pertama, Kita membuat CA Private Key dan CA Certificate Pair.
Ketikkan perintah berikut pada Terminal di Linux.
openssl genrsa -des3 -out ca.key 4096
Pada proses
generating RSA private key, kita diminta untuk memasukkan '
pass phrase'.
Misal, kita masukkan
mikrotikid. Selanjutnya, kita generate file
CA Certificate dengan mengetikkan perintah
berikut pada terminal di Linux.
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
Masukkan '
Pass Phrase' yang telah kita buat tadi, yaitu
mikrotikid. Kemudian selama proses kita diharuskan untuk mengisi data-data untuk
CA Certificate
seperti
Common Name (CN),
Organization,
State or province, dll.
Kedua, kita buat
private-key/
certificate pair untuk server SSTP.
Ketikkan perintah berikut pada Terminal di Linux.
openssl genrsa -des3 -out server.key 4096
Seperti halnya pembuatan CA, pada saat
generating RSA private key kita diminta
untuk memasukkan '
Pass Phrase'. Kita bisa memasukkan '
Pass Phrase' yang sama atau
berbeda dengan CA. Untuk lebih mudah kita masukkan '
Pass Phrase' yang sama.
Selanjutnya, untuk membuat
Server Certificate dibutuhkan
Certificate Signing
Request (CSR). Kita buat CSR dengan mengetikkan perintah berikut.
openssl req -new -key server.key -out server.csr
Pada langkah ini kita juga diminta untuk mengisi beberapa informasi untuk sertifikat,
seperti
Common Name (CN),
Organization, dll.
Selanjutnya kita akan men-generate
Server Certificate. Kita ketikkan perintah
pada Terminal seperti contoh berikut.
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey ca.key -set_serial
01 -out server.crt
Pada langkah ini kita diminta untuk memasukkan '
Pass Phrase' dari
CA.
Ketiga, Kita akan membuat c
lient key/certificate pair. Langkah-langkah dan juga informasi
yang diisikan pun juga sama seperti kita membuat
Server Certificate. Adapun untuk
perintah yang kita ketikkan pada Terminal Linux adalah sebagai berikut.
openssl genrsa -des3 -out client.key 4096 (
Untuk membuat client key)
openssl req -new -key client.key -out client.csr (
Untuk membuat CSR)
openssl x509 -req -days 3650 -in client.csr -CA ca.crt -CAkey ca.key -set_serial
01 -out client.crt (
Untuk men-generate Client Certificate).
Nah, langkah-langkah pembuatan CA (Certificate Authority) dan Server/Client Certificate
sudah selesai. Sekarang kita bisa mengecek apakah semua sertifikat yang telah
kita buat berjalan dengan baik atau tidak. Caranya kita ketikkan perintah pada
Terminal Linux seperti berikut.
openssl x509 -noout -text -in server.crt -purpose
Pastikan sertifikat yang telah kita buat tidak ada '
Error' dan '
Warning'.
Import Sertifikat
Kita upload file
CA (
Certificate Authority) dan
Server/Client Certificate ke
router dengan menggunakan FTP atau langsung '
Drag & Drop' jika menggunakan
Windows.
Untuk
SSTP Server file yang diupload adalah
CA (ca.crt, ca.key) dan
Server Certificate
(server.crt, server.key). Kemudian untuk
SSTP Client hanya
Client Certificate
(client.crt,client.key).
Apabila file yang dibutuhkan sudah di upload ke router, selanjutnya masuk ke
menu
System >
Certificates. Dan klik pada tombol command '
Import'. Pada parameter
'
Only File' isikan dengan file yang akan diupload kemudian pada '
Passphrase' isikan
sesuai dengan passphrase yang kita buat pada langkah sebelumnya.
Hal ini dilakukan di kedua router baik
SSTP Server maupun
SSTP Client. Dan file
yang diimport sama dengan file yang diupload di masing-masing router diatas. Jika
semua file berhasil di upload dengan baik akan muncul seperti pada tampilan berikut.
Alangkah baiknya untuk lebih memudahkan kita rename sertifikat yang kita import
dari '
cert-X' ke
CA atau
Server/Client.
Koneksi SSTP Tunnel dengan Sertifikat SSL
Konfigurasi SSTP pada masing-masing router baik server maupun client sama halnya
dengan fitur VPN yang lain. Namun pada SSTP perlu ditambahkan sertifikat.
Pada sisi server kita tambahkan Server Certificate dan pada sisi client ditambahkan
Client Certificate.
Catatan:
Untuk pengisian informasi Common Name (CN) pada proses pembuatan CA (Certificate
Authority) dan Server/Client Certificate harus berbeda. Misal, pada contoh diatas
Common Name untuk CA yaitu www.mikrotik.co.id sedangkan Server/Client Certificate
yaitu 192.168.1.1 (IP Public dari router SSTP server).