Přidat článek mezi oblíbenéZasílat nové komentáře e-mailem Mikrotik router 9 - WireGuard VPN

Čas pokročil a ROS 7 přinesl možnost Wireguard VPN. Tak se podíváme, jak ji nastavit

Proč WireGuard VPN, když tu máme OpenVPN? Protože je rychlejší (doba připojení i přenosová rychlost) a z mého pohledu jednodušeji nastavitelná. Existuje klient pro Window, Android, Apple. Po připojení pak v domácí síti přistupujeme na adresy jak jsme zvyklí, prostě jako bychom byli doma.

Princip:

WireGuard tunel funguje na principu šifrování, kdy obě strany (server i klient) obsahují soukromou část klíče a sdílí vzájemně veřejnou část klíče. Tohle je třeba si uvědomit - na serveru (routeru) nastavujeme záznam pro každého klienta, do kterého vkládáme veřejnou část klíče klienta a naopak na klientovi vkládáme veřejnou část klíče serveru. Odpadá nutnost generovat certifikáty jako v případě OpenVPN.

Předpoklady:

Vnitřní síť doma: 192.168.110.xxx (upravte dle sebe)
Rozsah pro tunel (přidělované adresy WireGuardem): 192.168.155.xxx (upravte dle sebe)
Veřejná IP adresa vašeho internetového připojení: 111.222.333.444 (upravte dle sebe)
Port necháme standardní 13231 pro WireGuard
Veřejný DNS server - použijeme 1.1.1.1

1. Vytvoření serverové části na Mikrotiku

V menu vybereme Wireguard a přes tlačítko [+] přidáme nový interface. Jediné, co vyplňujeme je jméno a uložíme, pokud nejsou speciální požadavky třeba na změnu portu. Po uložení se vygeneruje soukromá a veřejná část klíče, což uvidíme po opětovném rozkliknutí. Veřejnou část budeme potřebovat pro klienta.

[97282-wireguard01-png]

Ve druhém kroku nadefinujeme rozsah IP adres, který bude WireGuard přidělovat klientům - IP / Addresses

[97283-wireguard02-png]

Je třeba zvolit rozsah, který nebude kolidovat s vaší vnitřní adresou, a nejlépe ani s adresami ze sítě, odkud budete WireGuard spouštět. pro náš případ to bude rozsah 192.168.155.xxx. Adresu 192.168.155.1 má vlastní interface WireGuardu.

Ještě potřebujeme zkontrolovat pravidlo pro firewall, měli bychom mít povolený UDP port 13231 (IP / Firewall) a této chvíli máme nastavený server.

2. Nastavení klienta

Půjdeme na nastavení klienta, toho si stáhneme ze stránek WireGuard a následně nainstalujeme.
Po spuštění je třeba přidat "tunel", buď rozkliknutím volby a následně volbou přidat prázdný tunel nebo Ctrl+N. Jako výchozí akce tlačítka je import nastavení, ale teď nemáme odkud importovat.
V podstatě můžete klienta využít jako konfigurační prostředí pro další klienty (třeba mobil) a odsud následně exportovat konfigurace.

Otevře se nové okno, kde zadáváme jméno připojení a vidíme veřejnou a soukromou část klíče. Veřejnou část budeme potřebovat, až budeme vytvářet klienta (Peer) na serveru (Mikrotiku). Bude třeba konfiguraci "dopsat", protože klient nemá klikací rozhraní.

Já sem vložím celou konfiguraci s vysvětlením jednotlivých položek

[Interface]
PrivateKey = CMQ5YQI3oPj65Sm52hsNpaOT0gJtZm+2mn8lxAL86XE=
Address = 192.168.155.2/32
DNS = 1.1.1.1

[Peer]
PublicKey = eIvbe1CBrgQ3dwk8AXu1vwDUWNvhP8heS3GtCQojkjk=
AllowedIPs = 192.168.110.0/24
Endpoint = 111.222.333.444:13231
Část interface:

Private key - vygeneroval se při vytváření klienta. Jeho změnou se mění veřejný klíč, který přijde později na server (Mikrotik) do části Peer
Address - adresa, která bude přidělena pro tunel z rozsahu IP adres, kterou jsme nastavovali na Mikrotiku v IP / Addresses. Každý klient má svou, takže další klienty postupně číslujeme 192.168.155.3/32, 192.168.155.4/32
DNS - adresa nějakého veřejného DNS serveru, takže 1.1.1.1, 1.1.0.0, 8.8.8.8 apod.

Část Peer:

PublicKey - veřejný klíč z WireGuard na Mikrotiku
AllowedIPs - rozsah adres, na které se po připojení dostaneme. Zde by měl být rozsah vaší vnitřní sítě, takže 192.168.110.0/24
EndPoint - vaše veřejná internetová adresa a port, takže 111.222.333.444:13231

Nastavení klienta WireGuard na Mikrotiku (WireGuard / Peers / Add)

[97284-wireguard03-png]

Nastavujeme:
Public Key - zkopírujeme veřejnou část klíče z klienta
Interface - zde vybereme WireGuard interface
Allowed address - zde je adresa z klienta 192.168.155.2/32 (Address z části interface)

To je celé nastavení. Pokud chceme přidat dalšího klienta, postupujeme od bodu 2.
Jak jsem psal dříve, můžeme klienta použít k vytvoření dalších připojení a ty pak vyexportovat a na nové zařízení jen naimportovat. Pak to znamená jen vzít z existujícího klienta následující část a vložit pod vygenerovanou část nového klienta.
Následně upravit adresu a zkopírovat veřejný klíč klienta (nahoře) pro nastavení Peer na Mikrotiku.

Address = 192.168.155.2/32
DNS = 1.1.1.1

[Peer]
PublicKey = eIvbe1CBrgQ3dwk8AXu1vwDUWNvhP8heS3GtCQojkjk=
AllowedIPs = 192.168.110.0/24
Endpoint = 111.222.333.444:13231

Na Mikrotiku nový Peer, vložit veřejnou část klíče, upravit adresu a připojení je hotové.
Export (nebo soubor pro import) není nic jiného než textový soubor s příponou .CONF, který se jmenuje podle připojení a obsahuje sekce [Interface] a [Peer] s hodnotami, které jsme si popsali.

Existují i generátory konfigurace:
https://dbca-wa.github.io/wg-webcfg/wg-webcfg.html
Potřebujete pouze veřejný klíč Wireguard serveru z MT, přednastavit hodnoty a zadat počet klientů (peerů)

A jak dostat několik peerů na MT? Můžeme použít třeba terminál:

/interface wireguard peers
add allowed-address=192.168.155.2/32 comment=peerA endpoint-address="" interface=wireguard1 public-key="eIvbe1CBrgQ3dwk8AXu1vwDUWNvhP8heS3GtCQojkjk="
add allowed-address=192.168.155.3/32 comment=peerB endpoint-address="" interface=wireguard1 public-key="{public key 2}"
...
Předchozí kapitola

Mikrotik router 8 - hlídání zařízení s informačním mailem

Jsou zobrazeny jen nové komentáře. Zobrazit všechny
Předmět Autor Datum
takze nakonfiguroval som na mkt wireguard. Tiahol som si appku na android, nakonfiguroval. Po spuste…
truhlik 04.08.2023 10:55
truhlik
To, že se spojeni nadvaze jeste neznamena, ze je tunel propojeny. Obvykle je chyba v IP adresach, kl…
Jan Fiala 04.08.2023 11:06
Jan Fiala
:-) Nieco na tom asi bude Zmazana cela konfiguracia na nt, a zacate odznova, vyzera to funkcne. poslední
truhlik 04.08.2023 11:19
truhlik

takze nakonfiguroval som na mkt wireguard.
Tiahol som si appku na android, nakonfiguroval.
Po spusteni pekne vidim napr v mojaip moju domacu IP , v peers pekne nabiehaju Tx/Rx aj v queue (podla IP) vidim pripojenie a prenos jak pakety, tak total MB.
Ale ked toto nadefinujem do ntb (skontrolovane s konfig. z tel, dokonca som neskor dal vsetko rovnako, aj IP, okrem kluca), a dam aktivovat wireguard , tak sice vidim ze spojenie nadviazane, vidim data ako posledne spojenie a prenos, ale ten je len v radovo bajtoch, na mkt v peers tiez len obcas pribudnu bity, a v queue ziaden prenos , ani paket . . . v mojaip zostava stale rovnaka ip operatora
ntb som pripojil na mobilny bod z tlf (data operatora)

kde moze byt problem, ked cez tlf ok, a ntb nie a nie?

Zpět na články Přidat komentář k článku Nahoru