Tag

, , ,


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 client 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 http://www.mikrotik.co.id sedangkan Server/Client Certificate yaitu 192.168.1.1 (IP Public dari router SSTP server).