A Mikrotik RouterOS v7-től elérhető a Wireguard VPN technológia. Példánkban az otthon vagy az irodában lévő Mikrotik routert használjuk Wireguard szerverként. Nem indít kifelé kapcsolatot, csak hallgatózik és fogadja a bejövő roadwarrior kapcsolatot. Roadwarrior az a kliens aki nem állandóan kapcsolódik, hanem időszakosan. Tipikusan a felhasználók, akik irodán kívülről szeretnék használni az iroda belső erőforrásait.

A Mikrotik Winbox alkalmazást használva garfikus felületen is elvégezhető a beállítás, de konzolon is.
Fix IP cím esetén használhatjuk az IP címet mint szerver elérhetőség. Otthoni internet esetén dinamikus IP címet oszt ki a szolgáltató, így mindenképpen valamilyen dinamikus DNS (DDNS) szolgáltatást kell igénybe vennünk. A Mikrotik gyárilag biztosít DDNS szolgáltatást.
IP menü –> Cloud menüpont. Engedélyezzük a DDNS funkciót. A DNS name mezőben megkapjuk a hostnevet amihez majd kapcsolódni fogunk.
/ip cloud set ddns-enabled=yes
/ip cloud force-update
/ip cloud print
ddns-enabled: yes
ddns-update-interval: 30m
update-time: yes
public-address: 1xx.xx.xx.xxx
dns-name: xxxxxxxxxxx.sn.mynetname.net
status: updated


Hozzunk létre egy új Wireguard interfacet az alábbi képen létható sorrend szerint. A végén a létrehozott „Public Key”-t mentsük el, mert erre lesz majd szükség a roadwarrior kliensen. A „Listen port” egy szabadon választott magas portszám. Ezen az UDP porton fog hallgatózni és várni a bejövő kapcsolatot.
/interface wireguard
add listen-port=51320 name=wireguard2
print
Flags: X - disabled; R - running
0 R name="wireguard2" mtu=1420 listen-port=51320 private-key="UDAQ******************************hypiBGNVM="
public-key="idN******************************A8dnifD7zk="


A wireguard vpn tunnelnek IP címet kell adnunk. Ez az IP cím lesz a tunnelen belüli kommunikációra használva.
/ip addresses
add address=10.100.100.1/24 interface=wireguard2

A router tűzfalon engedélyezni kell 3 féle wireguard forgalmat.
- Internet felől beérkező kapcsolat a megadott porton
- Átmenő forgalom a belső hálózatba
- A roadwarrior kliens kimenő internet forgalma
/ip firewall filter
add action=accept chain=input comment="allow WireGuard" dst-port=51320 in-interface-list=WAN protocol=udp place-before=1
add action=accept chain=forward comment="allow WireGuard traffic" in-interface=wireguard2 place-before=1
add action=masquerade chain=srcnat src-address=10.100.100.0/24 out-interface-list=WAN place-before=1

Ahhoz, hogy a kliensünk hozzáférhessen a router többi szolgáltatásához és a router mögött lévő erőforrásokhoz, adjuk hozzá a wireguard2 interfacet a LAN interface listához.
/interface list member
add interface=wireguard2 list=LAN

Windows 10 vagy 11 operációs rendszeren töltsük le és telepítsük a Wireguard kliens programot. Sikeres telepítés után megnyitva létre kell hoznunk a kliensre vonatkozó privát és publikus kulcsokat, valamint be kell állítani a Mikrotik routerünket ahová kapcsolódni fogunk.
Hozzunk létre egy üres tunnelt (Add empty tunnel… CTRL+N). A megnyíló ablakban már létni fogjuk a létrehozott publikus és privát kulcsunkat. Egészítsük ki a beállításokat a router adataival, majd a Save gombra kattintva mentsük el.
[Interface]
PrivateKey = *****Ide kerül a létrehozott privát kulcsunk********
Address = 10.100.100.2/24
[Peer]
PublicKey = *****Ide kell bemásolni a router publikus kulcsát*******
AllowedIPs = 0.0.0.0/0
Endpoint = router_IP_címe:51320



Az előző lépésben a kliensen létrehozott publikus kulcsot felhasználva a Mikrotik routeren is létre kell hozni a roadwarrior kliensünket, mint peert. A Public Key mezőbe illesszük be a kliens publikus kulcsát.

Ezzel befejeztük a beállítosokat. A kliensen az Activate gombra kattintva pár másodpercen belül csatlakozunk a routerhez és elérhetjük a router mögött lévő belső erőforrásokat. A sikeres csatlakozást a zöld pipa melletti Active státusz jelzi.


