Contoh cara setting server openvpn mikrotik, membuat certificate openvpn di mikrotik dan beberapa alasan setup OpenVPN Server menggunakan Mikrotik RouterOS versi 7.
Prerequisites
Untuk bisa mengikuti tutorial di artikel ini atau apa saja yang saya gunakan sebagai contoh, minimal :
- RouterOS versi 7.16.2
- Familiar dengan Command Terminal (CLI) RouterOS.
- IP Public Statik atau Dinamis tapi menggunakan DynamisDNS.
Kelebihan Setup Server OpenVPN di MikroTik
Kekurangan Setup Server OpenVPN di MikroTik
Cara Membuat Certificate Untuk OpenVPN MikroTik
Pertama, kita akan membuat certificate yang diperlukan untuk Server OpenVPN dan Client OpenVPN.
Membuat CA Certificate
Certificate Template
/certificate add \
name=CA \
country=ID \
state=Jakarta \
locality=Jakarta \
organization=Modalsemangat.com \
unit=IT \
common-name=CA \
days-valid=3650 \
key-usage=crl-sign,key-cert-sign
Sign Certificate
/certificate
sign CA ca-crl-host=2.2.2.2
Sesuaikan dengan IP Public Anda pada parameter “ca-crl-host”
Membuat Server Certificate
Certificate Template
/certificate add \
name=Server \
country=ID \
state=Jakarta \
locality=Jakarta \
organization=Modalsemangat.com \
unit=IT \
common-name=Server \
days-valid=3650 \
key-usage=digital-signature,key-encipherment,tls-server
Sign Certificate
/certificate
sign Server ca=CA
set Server trusted=yes
Membuat Client Certificate
Certificate Template
/certificate add \
name=Client \
country=ID \
state=Jakarta \
locality=Jakarta \
organization=Modalsemangat.com \
unit=IT \
common-name=Client \
days-valid=3650 \
key-usage=tls-client
Sign Certificate
/certificate
sign Client ca=CA
set Client trusted=yes
Export CA dan Client Certificate
/certificate
export-certificate CA file-name=CA
export-certificate Client export-passphrase=inirahasia file-name=Client
Sesuaikan “inirahasia” dengan passphrase Anda.
Generate File Config .ovpn
/interface/ovpn-server/server/export-client-configuration ser
ver-address=2.2.2.2 ca-certificate=CA.crt client-certificate=Client.crt client-cert-key=Client.key
Sesuaikan parameter pada “server-address” dengan IP Public Anda. File config .ovpn ini yang nanti nya kita copy ke komputer user/klien untuk melakukan koneksi ke Server OpenVPN.
Ke menu Files > Anda bisa lihat 4 file baru CA.crt, Client.key, Client.crt dan client1733927035.ovpn.
[adam@MikroTik] > file/print
# NAME TYPE SIZE LAST-MODIFIED
0 CA.crt .crt file 1367 2024-12-11 21:19:24
1 Client.crt .crt file 1334 2024-12-11 21:19:51
2 Client.key .key file 1886 2024-12-11 21:19:51
3 client1733927035.ovpn .ovpn file 4907 2024-12-11 21:23:55
Konfigurasi OpenVPN Server di MikroTik
Kedua, kita setting Mikrotik sebagai OpenVPN Server.
Membuat IP Address Pool
Buat IP Address Pool yang ingin diberikan ke client openvpn. Disini saya setting client/user openvpn akan mendapatkan salah satu IP dari 192.168.40.2 s/d 192.168.40.254.
/ip pool
add name=ovpn-pool ranges=192.168.40.2-192.168.40.254 comment="Pool OpenVPN Client IPs | Modalsemangat.com"
Membuat Rules NAT
Buat rules NAT masquerade untuk IP client openvpn.
/ip firewall nat
add action=masquerade chain=srcnat src-address=192.168.40.0/24 comment="Masquerade OpenVPN Client IPs | Modalsemangat.com"
Menambahkan Rule Firewall
Buat rule firewall trafik OpenVPN untuk dapat di akses.
/ip firewall filter
add action=accept chain=input comment="Allow OpenVPN Traffic | Modalsemangat.com" dst-port=1194 \
protocol=tcp
Membuat Profiles OpenVPN
Tambahkan Profiles untuk digunakan secara Default untuk OpenVPN, yang diarahkan agar menggunakan IP Pool yang sudah ditetapkan.
/ppp profile
add change-tcp-mss=yes comment="OpenVPN Profiles | Modalsemangat.com" \
local-address=192.168.40.1 name=ovpn-prof remote-address=ovpn-pool \
use-encryption=yes
Mengaktifkan Server OpenVPN
Aktifkan Service OpenVPN dengan untuk menentukan Certificate Server yang digunakan dan algorithma enkripsi.
/interface ovpn-server server
set auth=sha512 certificate=Server cipher=aes256-cbc,aes256-gcm \
default-profile=ovpn-prof enabled=yes require-client-certificate=yes
Push Route
Push route fitur yang di tambahkan di 7.14, yang berguna jika Anda ingin routing IP Lokal di sisi jaringan server melalui gateway OpenVPN.
/interface ovpn-server server set myServer push-routes="192.168.0.0 255.255.240.0 192.168.40.1 9"
Membuat User OpenVPN
Kemudian kita buat Username Password yang nanti nya digunakan untuk otentifikasi ke Server OpenVPN.
/ppp secret
add name=ovpn-user1 password=888 profile=ovpn-prof service=ovpn
add name=ovpn-user2 password=999 profile=ovpn-prof service=ovpn
Conclusion
OpenVPN merupakan solusi VPN yang ideal untuk personal, organisasi kecil, hingga perusahaan. Dengan konfigurasi yang tepat, OpenVPN menyediakan koneksi yang aman, andal, dan fleksibel sesuai kebutuhan. Meski membutuhkan pengetahuan teknis, manfaatnya jauh melebihi tantangan implementasinya.
Tinggalkan komentar jika ada koreksi, pertanyaan seputar setting server openvpn dan membuat certificate openvpn di mikrotik RouterOS.
FAQ
Apakah OpenVPN gratis atau berbayar?
OpenVPN mempunyai versi open-source OpenVPN Community Edition yang sepenuhnya gratis untuk digunakan.
Apakah bisa install OpenVPN Client di Windows, macOS, Linux, Android, iOS?
Ya, Dapat digunakan di berbagai platform dan perangkat.
Apakah OpenVPN aman untuk digunakan?
Ya, OpenVPN aman untuk digunakan, asalkan dikonfigurasi dan dikelola dengan benar.
Apa perbedaan antara mode TUN dan TAP? Mana yang harus saya gunakan?
Mode TUN bekerja pada level Layer 3 (IP layer) dan hanya mengirimkan paket IP (IPv4 atau IPv6), cocok untuk aplikasi seperti remote access atau koneksi point-to-point.
Mode TAP bekerja pada level Layer 2 (Ethernet layer) dan dapat mengirimkan semua jenis paket Ethernet, termasuk broadcast dan multicast. Cocok untuk aplikasi yang memerlukan koneksi Layer 2, seperti DHCP, file sharing (SMB), atau aplikasi legacy.
Apa perbedaan protocol UDP dan TCP pada OpenVPN? Kapan sebaiknya saya menggunakan masing-masing?
Gunakan UDP jika: Anda membutuhkan koneksi yang cepat dan efisien, seperti untuk aktivitas internet umum (streaming, gaming, atau remote access).
Gunakan TCP jika: Anda membutuhkan koneksi yang sangat andal dengan jaminan data diterima secara utuh (contohnya untuk transfer file atau koneksi penting). Jaringan Anda menggunakan firewall ketat yang hanya mengizinkan lalu lintas TCP (misalnya port TCP/443). Atau ketika UDP diblokir atau tidak stabil di jaringan yang Anda gunakan.
Apa yang harus dilakukan jika certificate sudah expired/kedaluwarsa?
Jika certificate OpenVPN sudah expired, buat certificate baru dan update di sisi server maupun klien.
Apa algoritma enkripsi terbaik untuk OpenVPN? (AES-256-GCM vs AES-256-CBC)
Algoritma enkripsi terbaik untuk OpenVPN adalah AES-256-GCM, karena menawarkan kombinasi keamanan yang kuat dan efisiensi tinggi
Apakah OpenVPN bisa digunakan bersamaan dengan VPN lain?
OpenVPN Server dapat digunakan bersamaan dengan VPN Server lain, baik pada perangkat yang sama maupun perangkat berbeda. Namun, untuk menghindari konflik, Anda perlu mengkonfigurasi dengan benar.
Referensi :