MikroTik

⌘K
  1. Home
  2. Docs
  3. MikroTik
  4. VPN
  5. Cara Setting IPsec IKEv2 dengan PSK Hub-and-Spoke di MikroTik

Cara Setting IPsec IKEv2 dengan PSK Hub-and-Spoke di MikroTik

Untuk setting VPN Tunnel IPsec IKEv2 dari beberapa lokasi cabang (multi-site) ke satu router MikroTik pusat yang hanya memiliki satu IP publik, Kita harus menggunakan IKEv2 dengan PSK (Pre-Shared Keys) dan dynamic peers.

Dengan memakai IPSec Identifier FQDN (Fully Qualified Domain Name) unik sebagai identitas di tiap lokasi cabang, router pusat bisa mengenali asal koneksi setiap cabang walau semuanya terhubung ke IP publik pusat yang sama. Konfigurasi IPsec IKEv2 dengan model Hub-and-Spoke di MikroTik memfokuskan jalur VPN pada router utama (Hub) yang terhubung ke beberapa router cabang (Spoke).

Dokumentasi ini membahas cara membangun VPN Tunnel IPsec IKEv2 PSK dengan model Hub-and-Spoke menggunakan perangkat MikroTik RouterOS, di mana kantor pusat bertindak sebagai central hub yang melayani koneksi dari berbagai spoke (cabang).

Contoh Topologi Jaringan

MikroTik RouterPeranIP WANIP LANSubnet LAN
Kantor PusatHub203.0.113.1 (Public IP Statik)192.168.10.1192.168.10.0/24
Kantor Cabang ASpoke ADHCP/Dynamic (Behind NAT)192.168.20.1192.168.20.0/24
Kantor Cabang BSpoke BDHCP/Dynamic (Behind NAT)192.168.30.1192.168.30.0/24

Tujuan: Subnet LAN Kantor Cabang A (192.168.20.0/24) dan B (192.168.30.0/24) bisa terhubung langsung ke subnet LAN Kantor Pusat 192.168.10.0/24. Begitu juga sebaliknya subnet LAN Kantor Pusat bisa terhubung langsung ke Subnet LAN Kantor Cabang A dan B.

Prasyarat

  • RouterOS versi v7.x
  • Satu IP Public Statis/Dinamis di router Mikrotik kantor pusat
  • Pastikan ISP atau Router Mikrotik di kantor pusat dan cabang mengizinkan koneksi UDP 500 (IKE) UDP 4500 (NAT-T)

Router MikroTik Kantor Pusat (Hub)

Konfigurasi IPsec IKEv2

Router Hub bertindak sebagai responder (pasif) yang menunggu koneksi masuk dari spoke. Kita akan membuat peer template yang dinamis.

Buat IPsec Profile dan Proposal (IKEv2)

Definisikan Profile (Fase 1 / IKE) dan Proposal (Fase 2 / IPsec SA)

/ip ipsec profile
add name=ikev2-profile \
    dh-group=modp2048 \
    enc-algorithm=aes-256 \
    hash-algorithm=sha256 \
    prf-algorithm=sha256

/ip ipsec proposal
add name=ikev2-proposal \
    auth-algorithms=sha256 \
    enc-algorithms=aes-256-cbc \
    pfs-group=modp2048 \
    lifetime=8h

Buat Peer (Negosiator Tunnel)

/ip ipsec peer
add name=ikev2-dynamic-peer \
    address=0.0.0.0/0 \
    exchange-mode=ike2 \
    profile=ikev2-profile \
    passive=yes
  • address=0.0.0.0/0: terima koneksi dari IP mana pun, karena spoke tidak punya IP publik statis, Hub harus “open” untuk dynamic peer
  • passive=yes: Hub hanya menunggu inbound connection dari spoke
  • exchange-mode=ike2: Menggunakan IKEv2

Buat IPsec Identity (Autentikasi PSK)

IPSec Identifier FQDN (Fully Qualified Domain Name) unik sebagai identitas di tiap lokasi cabang agar router pusat bisa mengenali asal koneksi setiap cabang.

/ip ipsec identity
add peer=ikev2-dynamic-peer \
    auth-method=pre-shared-key \
    secret="PSK-CabangA-ModalSemangat2026!" \
    match-by=remote-id \
    remote-id=fqdn:cabangA.local \
    generate-policy=port-override

add peer=ikev2-dynamic-peer \
    auth-method=pre-shared-key \
    secret="PSK-CabangB-ModalSemangat2026!" \
    match-by=remote-id \
    remote-id=fqdn:cabangB.local \
    generate-policy=port-override
  • auth-method=pre-shared-key: Metode autentikasi sederhana dengan PSK untuk multi-site kecil-menengah
  • match-by=remote-id: Cara matching identitas, Hub mencocokkan spoke berdasarkan ID yang dikirim spoke, bukan berdasarkan IP (karena IP spoke dinamis).
  • remote-id: Seperti “username” untuk spoke saat autentikasi. Harus unik per spoke.
  • secret: Pre-Shared Key. Minimal 20 karakter, kombinasi huruf, angka, dan simbol.
  • generate-policy=port-override: Auto-generate policy, Cocok digunakan untuk skenario khusus seperti VPN L2TP/IPsec di balik NAT berlapis.

Buat IPsec Policy (Traffic Selector)

/ip ipsec policy
add src-address=192.168.10.0/24 \
    dst-address=192.168.20.0/24 \
    peer=ikev2-dynamic-peer \
    proposal=ikev2-proposal \
    tunnel=yes

add src-address=192.168.10.0/24 \
    dst-address=192.168.30.0/24 \
    peer=ikev2-dynamic-peer \
    proposal=ikev2-proposal \
    tunnel=yes

Firewall NAT Bypass ke Cabang

Kita harus memastikan traffic antar subnet LAN tidak di-NAT ketika melewati tunnel.

/ip firewall nat
add chain=srcnat action=accept \
    src-address=192.168.10.0/24 dst-address=192.168.20.0/24 \
    comment="Bypass NAT ke Cabang A"

add chain=srcnat action=accept \
    src-address=192.168.10.0/24 dst-address=192.168.30.0/24 \
    comment="Bypass NAT ke Cabang B"

Secara default, NAT srcnat (masquerade) akan mengubah IP sumber. Rule ini membuat traffic antar subnet LAN dilewatkan tanpa di-NAT, sehingga IP asli subnet terjaga dan IPsec policy bisa match. Wajib diletakkan di atas rule masquerade. Jika di bawah, traffic sudah di-NAT duluan sebelum dicek oleh IPsec.

Open Firewall input

Pastikan juga input chain pada Firewall Filter Anda mengizinkan protokol UDP port 500, UDP port 4500 (NAT-T), dan protokol ipsec-esp

/ip firewall filter
add chain=input action=accept \
    protocol=udp dst-port=500,4500 \
    comment="Allow IKEv2"

add chain=input action=accept \
    protocol=ipsec-esp comment="Allow IPsec ESP"

Port 500 untuk IKE awal, 4500 untuk IKEv2 dengan NAT-T. Setelah negosiasi selesai, data aktual mengalir melalui ESP (IP protocol 50).

Router MikroTik Kantor Cabang A (Spoke)

Spoke A menginisiasi koneksi ke Hub secara aktif.

Konfigurasi IPsec IKEv2

Buat IPsec Profile dan Proposal (IKEv2)

/ip ipsec profile
add name=ikev2-profileA \
    dh-group=modp2048 \
    enc-algorithm=aes-256 \
    hash-algorithm=sha256 \
    prf-algorithm=sha256

/ip ipsec proposal
add name=ikev2-proposalA \
    auth-algorithms=sha256 \
    enc-algorithms=aes-256-cbc \
    pfs-group=modp2048 \
    lifetime=8h

Buat Peer (Pointing ke IP Public Kantor Pusat)

/ip ipsec peer
add name=peerKePusat \
    address=203.0.113.1 \
    exchange-mode=ike2 \
    profile=ikev2-profileA
  • address=203.0.113.1: Ganti dengan IP publik router kantor pusat (Hub), kasih tahu kemana harus “dial”
  • passive=no: spoke aktif menginisiasi koneksi, karena spoke di belakang NAT

Buat Identity (Autentikasi PSK)

/ip ipsec identity
add peer=peerKePusat \
    auth-method=pre-shared-key \
    secret="PSK-CabangA-ModalSemangat2026!" \
    my-id=fqdn:cabangA.local
  • my-id=fqdn:cabangA.local: ID yang dikirim ke Hub, seperti “username” yang di-presentasikan ke Hub untuk matching.

Buat Policy

/ip ipsec policy
add src-address=192.168.20.0/24 \
    dst-address=192.168.10.0/24 \
    peer=peerKePusat \
    proposal=ikev2-proposalA \
    tunnel=yes

Bypass NAT ke Pusat

/ip firewall nat
add chain=srcnat action=accept \
    src-address=192.168.20.0/24 dst-address=192.168.10.0/24 \
    comment="Bypass NAT ke Kantor Pusat"

Router MikroTik Kantor Cabang B (Spoke)

Spoke B menginisiasi koneksi ke Hub secara aktif.

Konfigurasi IPsec IKEv2

Buat IPsec Profile dan Proposal (IKEv2)

/ip ipsec profile
add name=ikev2-profileB \
    dh-group=modp2048 \
    enc-algorithm=aes-256 \
    hash-algorithm=sha256 \
    prf-algorithm=sha256

/ip ipsec proposal
add name=ikev2-proposalB \
    auth-algorithms=sha256 \
    enc-algorithms=aes-256-cbc \
    pfs-group=modp2048 \
    lifetime=8h

Buat Peer (Pointing ke IP Public Kantor Pusat)

/ip ipsec peer
add name=peerKePusat \
    address=203.0.113.1 \
    exchange-mode=ike2 \
    profile=ikev2-profileB

address=203.0.113.1: Ganti dengan IP publik router kantor pusat (Hub).

Buat Identity (Autentikasi PSK)

/ip ipsec identity
add peer=peerKePusat \
    auth-method=pre-shared-key \
    secret="PSK-CabangB-ModalSemangat2026!" \
    my-id=fqdn:cabangB.local

Buat Policy

/ip ipsec policy
add src-address=192.168.30.0/24 \
    dst-address=192.168.10.0/24 \
    peer=peerKePusat \
    proposal=ikev2-proposalB \
    tunnel=yes

Bypass NAT ke Pusat

/ip firewall nat
add chain=srcnat action=accept \
    src-address=192.168.30.0/24 dst-address=192.168.10.0/24 \
    comment="Bypass NAT ke Kantor Pusat"

Rekomendasi Tambahan

Untuk memastikan tunnel ini tetap stabil dan aman dalam jangka panjang, berikut adalah beberapa tips optimasi yang sangat disarankan:

  • Aktifkan DPD (Dead Peer Detection): Pada menu /ip ipsec profile, pastikan fitur DPD aktif (misal dpd-interval=20s dan dpd-maximum-failures=5). Ini berfungsi agar router segera mendeteksi jika ada gangguan koneksi internet di salah satu sisi, lalu otomatis membangun ulang (reconnect) tunnel tanpa perlu di-restart manual.
  • Sesuaikan IPsec MSS (Maximum Segment Size): Enkripsi IPsec memakan sedikit ruang overhead pada paket data. Agar performa transfer data/file besar antar-cabang tetap ngebut dan tidak ada web yang terasa lambat dibuka (akibat fragmentasi paket), tambahkan aturan Change MSS di menu /ip firewall mangle pada semua router:
/ip firewall mangle
add chain=forward action=change-mss new-mss=clamp-to-pmtu passthrough=yes protocol=tcp tcp-flags=syn comment="Fix IPsec MSS"

Kesimpulan

Konfigurasi IPsec IKEv2 Hub-and-Spoke dengan dynamic peers dan PSK adalah solusi yang sangat efektif dan ekonomis untuk menghubungkan multiple site ke kantor pusat menggunakan MikroTik RouterOS. Model ini memungkinkan cabang-cabang yang berada di belakang NAT untuk secara aman terhubung ke jaringan pusat tanpa memerlukan IP publik.

Tags ,
guest

0 Comments
Oldest
Newest Most Voted