WireGuard® je extrémně jednoduchá, ale rychlá a moderní VPN, která využívá nejmodernější kryptografii. Jeho cílem je být rychlejší, jednodušší, štíhlejší a užitečnější než IPsec a zároveň se vyhnout masivním bolestem hlavy. Má v úmyslu být podstatně výkonnější než OpenVPN. WireGuard je navržen jako univerzální VPN pro běh na vestavěných rozhraních a superpočítačích, která je vhodná pro mnoho různých okolností. Původně byl vydán pro linuxové jádro, nyní je multiplatformní (Windows, macOS, BSD, iOS, Android) a široce implementovatelný.

Nastavení rozhraní WireGuard

Tabulka 1. Nastavení rozhraní tunelu
Vlastnost Popis

comment (řetězec znaků; default: "")

Krátký popis tunelu.

disabled (yes|no; default: "")

Zapíná nebo vypíná tunel.

listen-port (integer; default: 13231)

UDP port na kterém poslouchá služba WireGuard na příchozí spojení.

mtu (integer [0..65536]; default: 1420)

Maximum transfer unit na vrstvě 3.

name (string; default: "")

Jméno tunelu (jméno rozhraní).

private-key (string; default: )

Soukromý klíč ve formátu base64. Pokud není zadáno, bude automaticky vygenerováno při vytvoření rozhraní. Každé síťové rozhraní má soukromý klíč a seznam partnerů.

Tabulka 2. Vlastnosti rozhraní Wireguard jen ke čtení
Vlastnost Popis

public-key (řetězec znaků)

Veřejný klíč ve formátu base64 se vypočítá ze soukromého klíče. Každý peer má veřejný klíč. Veřejné klíče používají kolegové ke vzájemné autentizaci. Mohou být předány pro použití v konfiguračních souborech.

running (yes|no)

Informace zda rozhraní běží nebo ne.

Partneři (peers)

Tabulka 3. Nastavení partnera
Vlastnost Popis

allowed-address (IPv4/IPv6 prefix; default: )

Seznam IP adres (v4 nebo v6) s maskami CIDR, ze kterých je povolen příchozí provoz pro tohoto partnera a na který je směrován odchozí provoz pro tohoto partnera. Tato IP adresa musí být ve stejné podsíti jako rozhraní WireGuard nastavené na ROS. Pokud je rozhraní WireGuard na 192.168.99.1/24, musíte klientovi zadat 192.168.99.2. Přidáním této IP pod 'Povolená adresa' říkáte, že pouze tento konkrétní klient (například telefon) se může připojit k této peer konfiguraci. Povolený rozsah adres se nemůže překrývat na jednom rozhraní, takže je třeba nastavit vlastní rozsah pro každého partnera.

comment (řetězec znaků; default:)

Krátký popis partnera.

disabled (yes|no; default:no)

Povoluje nebo zakazuje připojení partnera.

endpoint-address (IP/hostname; default:)

IP adresa nebo jméno stroje. Používá se k navázání zabezpečeného spojení k vzdálenému partnerovi (koncovému bodu).

endpoint-port (integer [0..65535]; default:)

UDP port, na kterém pouslouchá vzdálený partner.

interface (řetězec znaků; default:)

Jméno rozhraní WireGuardu, kterému přináleží partner.

persistent-keepalive (integer [0..65535]; default: 0)

Sekundový interval mezi 1 a 65535 včetně, jak často se má odesílat ověřený prázdný paket partnerovi za účelem zachování trvalé platnosti stavového firewallu nebo mapování NAT. Pokud například rozhraní odesílá provoz velmi zřídka, ale může kdykoli přijímat provoz od partnera a je za NAT, rozhraní může mít prospěch z trvalého intervalu udržování 25 sekund.

preshared-key (řetězec znaků; default:)

Předsdílený klíč ve formátu base64. Nepovinné a může být vynecháno. Tato možnost přidává další vrstvu kryptografie se symetrickým klíčem, která se má přimíchat k již existující kryptografii s veřejným klíčem pro postkvantovou odolnost. Může být také vygenerován automaticky nebo zadán ručně, když klíč poskytne správce systému.

private-key (auto/nic; default:nic)

Privátní klíč pro klienta ve formátu base64.

public-key (řetezec znaků; default:)

Veřejný klíč base64 se vypočítá ze soukromého klíče. Každý peer má veřejný klíč. Veřejné klíče používají kolegové ke vzájemné autentizaci. Mohou být předány pro použití v konfiguračních souborech.

show-client-config

Zobrazí již vytvořenou konfiguraci pro partnera a vygeneruje QR kód pro snazší nastavení partnera na klientském zařízení. Nemá vliv na server WireGuard.

Při použití pro scénář nastavení klient-server, když je konfigurace importována pomocí QR kódu pro klienta, podrobnosti o konfiguraci na kartě s kódem qrcode se zobrazí, jakmile bude nastaven v polích:

Tabulka 4. Nastavení klienta
Vlastnost Popis

client-address

Při importu pomocí QR kódu pro klienta (například telefon) se na tomto zařízení nastaví tato adresa pro rozhraní wg.

client-dns

Určuje recursivní DNS server, pokud používáte server WireGuard jako bránu VPN pro vzájemný provoz.

client-endpoint

IP adresa a číslo portu serveru WireGuard.

client-keepalive

Stejné jako persistent-keepalive, ale ze strany partnera.

client-listen-port

Místní port, na kterém bude tento tunel WireGuard naslouchat příchozímu provozu od kolegů, a port, ze kterého bude získávat odchozí pakety.

name

Umožňuje přidat jméno k peerovi. Název bude použit jako odkaz na partnera v protokolech WireGuard. (K dispozici od verze RouterOS 7.15)

responder

Určuje, zda má být peer iniciátorem připojení nebo pouze odpovídačem. Mělo by být použito na zařízeních WireGuard, která se používají jako „servery“ pro jiná zařízení jako klienty, ke kterým se lze připojit. V opačném případě se budou všechny routery opakovaně pokoušet připojit „adresu koncového bodu“ nebo „adresu aktuálního koncového bodu“.

Zdroje a odkazy