Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt
I de fleste tilfeller er det ikke vanskelig å koble en ruter til en VPN, men hvis du ønsker å beskytte hele nettverket og samtidig opprettholde optimal tilkoblingshastighet, så er den beste løsningen å bruke en VPN-tunnel WireGuard.

Rutere Mikrotik viste seg å være pålitelige og svært fleksible løsninger, men dessverre WireGurd-støtte på RouterOS fortsatt ikke, og det er ikke kjent når det vil vises og i hvilken ytelse. Nylig det ble kjent om hva utviklerne av WireGuard VPN-tunnelen foreslo lappesett, som vil gjøre deres VPN-tunnelprogramvare til en del av Linux-kjernen, håper vi dette vil bidra til adopsjonen i RouterOS.

Men for nå, dessverre, for å konfigurere WireGuard på en Mikrotik-ruter, må du endre fastvaren.

Blinker Mikrotik, installerer og konfigurerer OpenWrt

Først må du sørge for at OpenWrt støtter modellen din. Se om en modell samsvarer med markedsføringsnavnet og bildet du kan besøke mikrotik.com.

Gå til openwrt.com til fastvarenedlastingsseksjonen.

For denne enheten trenger vi 2 filer:

downloads.openwrt.org/releases/18.06.2/targets/ar71xx/mikrotik/openwrt-18.06.2-ar71xx-mikrotik-rb-nor-flash-16M-initramfs-kernel.bin|elf

downloads.openwrt.org/releases/18.06.2/targets/ar71xx/mikrotik/openwrt-18.06.2-ar71xx-mikrotik-rb-nor-flash-16M-squashfs-sysupgrade.bin

Du må laste ned begge filene: Install и Oppgradere.

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

1. Nettverksoppsett, last ned og oppsett PXE-server

nedlasting Liten PXE-server for Windows nyeste versjon.

Pakk ut til en egen mappe. Legg til parameteren i config.ini-filen rfc951=1 seksjon [dhcp]. Denne parameteren er den samme for alle Mikrotik-modeller.

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

La oss gå videre til nettverksinnstillingene: du må registrere en statisk ip-adresse på et av nettverksgrensesnittene til datamaskinen din.

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

IP-adresse: 192.168.1.10
Nettmaske: 255.255.255.0

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Løpe Liten PXE-server på vegne av administratoren og velg i feltet DHCP Server server med adresse 192.168.1.10

På enkelte versjoner av Windows kan dette grensesnittet bare vises etter en Ethernet-tilkobling. Jeg anbefaler å koble til en ruter og umiddelbart bytte ruter og PC ved hjelp av en patch-kabel.

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Trykk på "..."-knappen (nederst til høyre) og spesifiser mappen der du lastet ned fastvarefilene for Mikrotik.

Velg en fil hvis navn slutter med "initramfs-kernel.bin eller elf"

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

2. Oppstart av ruteren fra PXE-serveren

Vi kobler til PC-en med en ledning og den første porten (wan, internett, poe in, ...) på ruteren. Etter det tar vi en tannpirker, stikker den inn i hullet med påskriften "Reset".

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Vi slår på strømmen til ruteren og venter i 20 sekunder, og slipper deretter tannpirken.
I løpet av neste minutt skal følgende meldinger vises i Tiny PXE Server-vinduet:

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Hvis meldingen vises, er du i riktig retning!

Gjenopprett innstillingene på nettverksadapteren og still inn til å motta adressen dynamisk (via DHCP).

Koble til LAN-portene på Mikrotik-ruteren (2…5 i vårt tilfelle) ved å bruke samme patch-kabel. Bare bytt den fra 1. port til 2. port. Åpen adresse 192.168.1.1 i nettleseren.

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Logg på OpenWRT administrative grensesnitt og gå til menydelen "System -> Backup/Flash Firmware"

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

I underseksjonen "Flash nytt fastvarebilde" klikker du på knappen "Velg fil (Bla gjennom)".

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Spesifiser banen til en fil hvis navn slutter med "-squashfs-sysupgrade.bin".

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Klikk deretter på "Flash Image"-knappen.

I neste vindu klikker du på "Fortsett"-knappen. Fastvaren vil begynne å laste ned til ruteren.

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

!!! IKKE UNDER INGEN OMSTENDIGHET KOPPE STRØM TIL RUTEREN UNDER FIRMWARE-PROSESSEN !!!

Sette opp WireGuard på en Mikrotik-ruter som kjører OpenWrt

Etter å ha blinket og startet ruteren på nytt, vil du motta Mikrotik med OpenWRT-fastvare.

Mulige problemer og løsninger

Mange Mikrotik-enheter utgitt i 2019 bruker en FLASH-NOR minnebrikke av typen GD25Q15 / Q16. Problemet er at når den blinker, lagres ikke data om enhetsmodellen.

Hvis du ser feilen "Den opplastede bildefilen inneholder ikke et format som støttes. Pass på at du velger det generelle bildeformatet for plattformen din." da er mest sannsynlig problemet i flash.

Det er enkelt å sjekke dette: kjør kommandoen for å sjekke modell-ID-en i enhetsterminalen

root@OpenWrt: cat /tmp/sysinfo/board_name

Og hvis du får svaret "ukjent", må du spesifisere enhetsmodellen manuelt i formen "rb-951-2nd"

For å få enhetsmodellen, kjør kommandoen

root@OpenWrt: cat /tmp/sysinfo/model
MikroTik RouterBOARD RB951-2nd

Etter å ha mottatt enhetsmodellen, installer den manuelt:

echo 'rb-951-2nd' > /tmp/sysinfo/board_name

Etter det kan du flashe enheten gjennom nettgrensesnittet eller bruke kommandoen "sysupgrade".

Opprett en VPN-server med WireGuard

Hvis du allerede har en server med WireGuard konfigurert, kan du hoppe over dette trinnet.
Jeg vil bruke applikasjonen til å sette opp en personlig VPN-server MyVPN.RUN om katten jeg allerede publiserte en anmeldelse.

Konfigurere WireGuard Client på OpenWRT

Koble til ruteren via SSH-protokoll:

ssh [email protected]

Installer WireGuard:

opkg update
opkg install wireguard

Forbered konfigurasjonen (kopier koden nedenfor til en fil, erstatt de angitte verdiene med dine egne og kjør i terminalen).

Hvis du bruker MyVPN, trenger du bare å endre i konfigurasjonen nedenfor WG_SERV - Server IP WG_KEY - privat nøkkel fra wireguard-konfigurasjonsfilen og WG_PUB - offentlig nøkkel.

WG_IF="wg0"
WG_SERV="100.0.0.0" # ip адрес сервера
WG_PORT="51820" # порт wireguard
WG_ADDR="10.8.0.2/32" # диапазон адресов wireguard

WG_KEY="xxxxx" # приватный ключ
WG_PUB="xxxxx" # публичный ключ 

# Configure firewall
uci rename firewall.@zone[0]="lan"
uci rename firewall.@zone[1]="wan"
uci rename firewall.@forwarding[0]="lan_wan"
uci del_list firewall.wan.network="${WG_IF}"
uci add_list firewall.wan.network="${WG_IF}"
uci commit firewall
/etc/init.d/firewall restart

# Configure network
uci -q delete network.${WG_IF}
uci set network.${WG_IF}="interface"
uci set network.${WG_IF}.proto="wireguard"
uci set network.${WG_IF}.private_key="${WG_KEY}"

uci add_list network.${WG_IF}.addresses="${WG_ADDR}"

# Add VPN peers
uci -q delete network.wgserver
uci set network.wgserver="wireguard_${WG_IF}"
uci set network.wgserver.public_key="${WG_PUB}"
uci set network.wgserver.preshared_key=""
uci set network.wgserver.endpoint_host="${WG_SERV}"
uci set network.wgserver.endpoint_port="${WG_PORT}"
uci set network.wgserver.route_allowed_ips="1"
uci set network.wgserver.persistent_keepalive="25"
uci add_list network.wgserver.allowed_ips="0.0.0.0/1"
uci add_list network.wgserver.allowed_ips="128.0.0.0/1"
uci add_list network.wgserver.allowed_ips="::/0"
uci commit network
/etc/init.d/network restart

Dette fullfører WireGuard-oppsettet! Nå er all trafikk på alle tilkoblede enheter beskyttet av en VPN-tilkobling.

referanser

Kilde #1
Endrede instruksjoner på MyVPN (ekstra tilgjengelige instruksjoner for å sette opp L2TP, PPTP på standard Mikrotik-fastvare)
OpenWrt WireGuard-klient

Kilde: www.habr.com

Legg til en kommentar