Pereiti prie turinio

Kaip prijungti MikroTik prie VPSnet privataus tinklo per WireGuard

Skirta: MikroTik (RouterOS) 7.25Žingsnių: 5

Norėdami prijungti MikroTik maršrutizatorių prie VPSnet privataus tinklo per WireGuard, VPSnet valdymo skydelyje pridėkite padalinį ir atsisiųskite jo .conf failą, tada RouterOS 7 sukurkite WireGuard sąsają su privačiu raktu iš to failo, pridėkite VPN kaip jos peer, sąsajai priskirkite tunelio adresą ir kiekvieną VPSnet tinklą nukreipkite į ją. Prie kiekvieno žingsnio – WebFig lango vaizdas (WinBox meniu tokie patys) ir tą patį atliekanti Terminal komanda. Išbandyta su RouterOS 7.25 ir pastoviu viešuoju IPv4 adresu, kai ryšį užmezga maršrutizatorius.

Prieš pradedant

  • VPSnet valdymo skydelyje atidarykite savo VPN, pasirinkite Prijungti padalinį (maršrutizatorių), pažymėkite MikroTik, skiltyje Jungtis per palikite WireGuard ir spauskite Toliau. Įveskite padalinio tinklus. Lauką Maršrutizatoriaus viešas adresas tuneliui (nebūtina) palikite tuščią, jei maršrutizatorius yra už NAT arba jo adresas keičiasi: tada ryšį užmezga maršrutizatorius – taip šis gidas ir išbandytas.
  • Iškart atsisiųskite .conf failą: jame yra maršrutizatoriaus privatus raktas, o failas rodomas tik vieną kartą.
  • Vėliau reikšmes rasite padalinio eilutėje paspaudę Maršrutizatoriaus nustatymas: VPN adresas ir portas, VPN viešasis raktas, tunelio adresas, į tunelį siunčiami adresai (AllowedIPs), keepalive ir tos pačios komandos su mygtuku Kopijuoti visas komandas; įklijuotos kartu, jos nieko nekeičia, jei maršrutizatoriuje jau yra tokio pavadinimo sąsaja.

Paveikslėliuose rodomos pavyzdinės reikšmės (dokumentacijai skirti adresai). Įveskite reikšmes iš savo instrukcijos skydelyje.

1. Sukurkite WireGuard sąsają

MikroTik (RouterOS) 7.25: WireGuard > WireGuard > New – Sukurkite WireGuard sąsają

WireGuard > WireGuard > New

Pavadinkite ją padalinio vardu, kaip tai daro skydelio komandos (čia vilnius-branch; paveikslėliuose – vpsnet-vpn), ir įklijuokite privatų raktą iš .conf failo; viešasis raktas užsipildys pats. Listen Port nustatykite tik tada, kai jį rodo skydelis (jei įvedėte maršrutizatoriaus adresą).

LaukasReikšmė
Namevilnius-branch
MTU1420
Private Keyprivatus raktas iš .conf failo
Listen Porttik skydelio rodomas portas, jei jis yra

Tas pats Terminal lange:

/interface wireguard add name=vilnius-branch private-key="PRIVATE_KEY_FROM_THE_CONF_FILE"

2. Pridėkite VPN kaip peer

MikroTik (RouterOS) 7.25: WireGuard > Peers > New – Pridėkite VPN kaip peer

WireGuard > Peers > New

Visus skydelio AllowedIPs adresus įrašykite į Allowed Address. Keepalive neleidžia ryšiui nutrūkti, net kai maršrutizatorius yra už NAT.

LaukasReikšmė
Interfacevilnius-branch
Public KeyVPN viešasis raktas
EndpointVPN adresas
Endpoint PortVPN portas (51820)
Allowed AddressAllowedIPs adresai
Persistent Keepalive00:00:25

Tas pats Terminal lange:

/interface wireguard peers add interface=vilnius-branch public-key="VPN_PUBLIC_KEY" endpoint-address=198.51.100.7 endpoint-port=51820 allowed-address=172.31.250.0/24,10.255.0.0/24 persistent-keepalive=25s

3. Priskirkite sąsajai tunelio adresą

MikroTik (RouterOS) 7.25: IP > Addresses > New – Priskirkite sąsajai tunelio adresą

IP > Addresses > New

Maršrutizatoriaus tunelio adresas iš skydelio, su /32.

LaukasReikšmė
Addressmaršrutizatoriaus tunelio adresas (/32)
Interfacevilnius-branch

Tas pats Terminal lange:

/ip address add address=10.255.0.5/32 interface=vilnius-branch

4. Nukreipkite VPSnet tinklus į tunelį

MikroTik (RouterOS) 7.25: IP > Routes > New – Nukreipkite VPSnet tinklus į tunelį

IP > Routes > New

Kiekvienam AllowedIPs adresui pridėkite po maršrutą, kurio šliuzas – WireGuard sąsaja.

LaukasReikšmė
Dst. Addresskiekvienas AllowedIPs adresas
Gatewayvilnius-branch

Tas pats Terminal lange:

/ip route add dst-address=172.31.250.0/24 gateway=vilnius-branch
/ip route add dst-address=10.255.0.0/24 gateway=vilnius-branch

5. Patikrinkite ryšį

MikroTik (RouterOS) 7.25: WireGuard > Peers – Patikrinkite ryšį

WireGuard > Peers

Last Handshake turi rodyti mažiau nei 2 minutes, o Rx ir Tx – didėti. Tada iš biuro kompiuterio paleiskite ping į VPSnet serverio privatų adresą.

LaukasReikšmė
Last Handshakemažiau nei 2 minutės

Tas pats Terminal lange:

/interface wireguard peers print detail where interface=vilnius-branch

Patikra ir galimos problemos

  • Skydelyje atidarykite padalinį ir spauskite Tikrinti tunelį: patikrinama, ar maršrutizatorius atsako, ar sutampa raktai ir ar eina srautas.
  • Handshake nėra: patikrinkite endpoint adresą ir portą, VPN viešąjį raktą ir ar privatus raktas paimtas iš .conf failo. Jei nustatėte listen port, atverkite jį: IP > Firewall > Filter Rules (input).
  • Handshake yra, bet ping nepraeina: patikrinkite peer Allowed Address ir maršrutus bei ar srautui į vilnius-branch netaikomas masquerade.

DUK

Kurioms RouterOS versijoms skirtas šis gidas?

Gidas parengtas ir išbandytas su RouterOS 7.25 (CHR), kai viešasis IPv4 adresas pastovus, o ryšį užmezga maršrutizatorius. WireGuard yra RouterOS 7 dalis; RouterOS 6 jo neturi.

Kur gauti privatų raktą?

Tik .conf faile, kurį skydelis sukuria padaliniui. Failas rodomas vieną kartą.

Mano maršrutizatorius yra už NAT. Ar veiks?

Taip. Ryšį užmezga maršrutizatorius, o keepalive jį palaiko.

Ar keli padaliniai gali pasiekti vienas kitą?

Taip, kai VPN nustatymuose įjungta „Padaliniai gali pasiekti vienas kitą“. Tada kitų padalinių tinklai pridedami prie AllowedIPs: dar kartą atverkite „Maršrutizatoriaus nustatymas“ ir pridėkite juos maršrutizatoriuje.

Ar tuneliui reikia NAT?

Ne. VPSnet serveriai mato biuro kompiuterių adresus.