Linux

Jak nastavit WireGuard VPN v Debianu 10

Jak nastavit WireGuard VPN v Debianu 10

WireGuard je univerzální VPN (Virtual Private Network), která využívá nejmodernější kryptografii. Ve srovnání s jinými populárními řešeními VPN, jako jsou IPsec a OpenVPN, je WireGuard obecně rychlejší, snadněji konfigurovatelný a má menší stopu. Je multiplatformní a může běžet téměř kdekoli, včetně Linux, Windows, Android a macOS.

Wireguard je peer-to-peer VPN; nepoužívá model klient-server. V závislosti na konfiguraci může partner fungovat jako tradiční server nebo klient. Funguje to tak, že vytvoříte síťové rozhraní na každém peer zařízení, které funguje jako tunel. Peers se navzájem ověřují výměnou a ověřováním veřejných klíčů, napodobováním modelu SSH. Veřejné klíče jsou mapovány se seznamem IP adres, které jsou v tunelu povoleny. Provoz VPN je zapouzdřen v UDP.

Tento článek vysvětluje, jak nainstalovat a nakonfigurovat WireGuard na Debianu 10, který bude fungovat jako server VPN. Ukážeme vám také, jak nakonfigurovat WireGuard jako klienta v Linuxu, Windows a macOS. Provoz klienta bude směrován přes server Debian 10.

Toto nastavení lze použít jako ochranu proti útokům Man in the Middle, anonymnímu procházení webu, obcházení obsahu s omezeným geografickým přístupem nebo umožnění bezpečného připojení kolegů, kteří pracují z domova, k firemní síti.

Předpoklady #

Chcete-li postupovat podle této příručky, budete potřebovat počítač s nainstalovaným Debianem 10. Potřebujete také root nebo [sudo access] (https: // linuxize.com / post / how-to-create-a-sudo-user-on-debian / k instalaci balíčků a provádění změn v systému.

Nastavení serveru WireGuard #

Začneme instalací balíčku WireGuard na stroj Debian a jeho nastavením tak, aby fungoval jako server. Nakonfigurujeme také systém tak, aby přes něj směroval provoz klientů.

Nainstalujte si WireGuard na Debian 10 #

WireGuard je k dispozici v úložištích backportů Debianu. Chcete-li do svého systému přidat úložiště, spusťte:

echo 'deb http: // ftp.debian.org / debian buster-backports main '| sudo tee / etc / apt / sources.seznam.d / buster-backports.seznam

Jakmile je úložiště povoleno, aktualizujte apt mezipaměť a nainstalujte modul a nástroje WireGuard:

sudo apt aktualizacesudo apt nainstalovat wireguard
WireGuard běží jako modul jádra.

Konfigurace WireGuard #

Rozhraní WireGuard můžete konfigurovat a spravovat pomocí wg a wg-rychlé nástroje příkazového řádku.

Každé zařízení v síti WireGuard VPN musí mít soukromý a veřejný klíč. Spuštěním následujícího příkazu vygenerujte pár klíčů:

wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey

Soubory jsou generovány v / etc / wireguard adresář. Použijte kočka nebo méně příkazy pro zobrazení obsahu souborů. Soukromý klíč by nikdy neměl být nikomu sdílen a měl by být vždy zabezpečen.

Wireguard také podporuje předem sdílený klíč, který přidává další vrstvu kryptografie se symetrickým klíčem. Tento klíč je volitelný a musí být jedinečný pro každý pár peer.

Dalším krokem je konfigurace tunelového zařízení, které bude směrovat provoz VPN.

Zařízení lze nastavit buď z příkazového řádku pomocí ip a wg příkazy nebo ručním vytvořením konfiguračního souboru. Konfiguraci vytvoříme pomocí textového editoru.

Otevřete editor a vytvořte nový soubor s názvem wg0.konf s následujícím obsahem:

sudo nano / etc / wireguard / wg0.konf
/ etc / wireguard / wg0.konf
[Rozhraní] Adresa = 10.0.0.1/24 SaveConfig = true ListenPort = 51820 PrivateKey = SERVER_PRIVATE_KEY PostUp = iptables -A FORWARD -i% i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE PostDown = iptables -D FORWARD -i% i -j PŘIJMOUT; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE 

Rozhraní můžete pojmenovat, jak chcete. Doporučuje se však použít něco podobného wg0 nebo wgvpn0.

Nastavení v sekci rozhraní mají následující význam:

The wg0.konf a privatekey soubory by neměly být čitelné pro běžné uživatele. Použití chmod nastavit oprávnění souborů na 600:

sudo chmod 600 / etc / wireguard / privatekey, wg0.conf

Po dokončení přineste wg0 rozhraní pomocí atributů uvedených v konfiguračním souboru:

sudo wg-quick up wg0

Výstup bude vypadat asi takto:

[#] ip link přidat wg0 typ wireguard [#] wg setconf wg0 / dev / fd / 63 [#] ip -4 adresa přidat 10.0.0.1/24 dev wg0 [#] ip link set mtu 1420 up dev wg0 [#] iptables -A dopředu -i wg0 -j PŘIJMOUT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE 

Chcete-li zkontrolovat stav a konfiguraci rozhraní, spusťte:

sudo wg show wg0
rozhraní: wg0 veřejný klíč: + Vpyku + gjVJuXGR / OXXt6cmBKPdc06Qnm3hpRhMBtxs = soukromý klíč: (skrytý) naslouchající port: 51820 

Stav rozhraní můžete také ověřit pomocí ip show wg0:

ip show wg0
4: wg0:  mtu 1420 qdisc stav fronty NEZNÁMÁ výchozí skupina qlen 1000 odkaz / žádný inet 10.0.0.1/24 rozsah globální wg0 valid_lft navždy preferovaný_lft navždy 

WireGuard lze spravovat pomocí Systemd. Chcete-li přivést rozhraní WireGuard v době spuštění, spusťte následující příkaz:

sudo systemctl povolit wg-quick @ wg0

Konfigurace sítě a konfigurace brány firewall #

Aby NAT fungovalo, musí být povoleno přesměrování IP. Otevři / etc / sysctl.konf soubor a přidejte nebo odkomentujte následující řádek:

sudo nano / etc / sysctl.konf
/ etc / sysctl.konf
síť.ipv4.ip_forward = 1

Uložte soubor a použijte změnu:

sudo sysctl -p
síť.ipv4.ip_forward = 1 

Pokud ke správě brány firewall používáte UFW, musíte na portu otevřít provoz UDP 51820:

sudo ufw povolit 51820 / udp

A je to. Byl nastaven rovnocenný partner Debianu, který bude fungovat jako server.

Nastavení klientů Linux a macOS #

Pokyny k instalaci pro všechny podporované platformy jsou k dispozici na https: // wireguard.com / install / . V systémech Linux můžete balíček nainstalovat pomocí správce distribučních balíků a v systému macOS s vařit.

Po instalaci nakonfigurujte klientské zařízení podle následujících pokynů.

Proces nastavení klienta se systémem Linux a macOS je téměř stejný jako u serveru. Nejprve vygenerujte veřejný a soukromý klíč:

wg genkey | sudo tee / etc / wireguard / privatekey | wg pubkey | sudo tee / etc / wireguard / publickey

Vytvořte soubor wg0.konf a přidejte následující obsah:

sudo nano / etc / wireguard / wg0.konf
/ etc / wireguard / wg0.konf
[Rozhraní] PrivateKey = CLIENT_PRIVATE_KEY Adresa = 10.0.0.2/24 [Peer] PublicKey = SERVER_PUBLIC_KEY Endpoint = SERVER_IP_ADDRESS: 51820 AllowedIPs = 0.0.0.0/0 

Nastavení v sekci rozhraní mají stejný význam jako při nastavování serveru:

Sekce peer obsahuje následující pole:

Pokud potřebujete nakonfigurovat další klienty, opakujte stejné kroky pomocí jiné soukromé adresy IP.

Nastavení klientů Windows #

Stáhněte a nainstalujte balíček Windows msi z webu WireGuard .

Po instalaci otevřete aplikaci WireGuard a klikněte na „Přidat tunel“ -> „Přidat prázdný tunel…“, jak je znázorněno na obrázku níže:

Publickey pair je automaticky vytvořen a zobrazen na obrazovce.

Zadejte název tunelu a upravte konfiguraci následujícím způsobem:

[Rozhraní] PrivateKey = CLIENT_PRIVATE_KEY Adresa = 10.0.0.2/24 [Peer] PublicKey = SERVER_PUBLIC_KEY Endpoint = SERVER_IP_ADDRESS: 51820 AllowedIPs = 0.0.0.0/0 

V sekci rozhraní přidejte nový řádek k definování adresy tunelu klienta.

V sekci peer přidejte následující pole:

Po dokončení klikněte na tlačítko „Uložit“.

Přidejte klienta peer na server #

Posledním krokem je přidání veřejného klíče a IP adresy klienta na server. Chcete-li to provést, spusťte na serveru Debian následující příkaz:

sudo wg set wg0 peer CLIENT_PUBLIC_KEY enabled-ips 10.0.0.2

Nezapomeňte změnit KLIENT_PUBLIC_KEY s veřejným klíčem, který jste vygenerovali na klientském počítači (sudo cat / etc / wireguard / publickey) a upravte IP adresu klienta, pokud je odlišná. Uživatelé Windows mohou zkopírovat veřejný klíč z aplikace WireGuard.

Po dokončení se vraťte ke klientskému počítači a vyvolejte rozhraní tunelování.

Klienti Linux a macOS #

Spusťte následující příkaz k vyvolání rozhraní:

sudo wg-quick up wg0

Nyní byste měli být připojeni k serveru Debian a přes něj by měl být směrován provoz z vašeho klientského počítače. Můžete zkontrolovat připojení pomocí:

sudo wg
rozhraní: wg0 veřejný klíč: gFeK6A16ncnT1FG6fJhOCMPMeY4hZa97cZCNWis7cSo = soukromý klíč: (skrytý) poslechový port: 53527 fwmark: 0xca6c peer: r3imyh3MCYggaZACmkx + CxlD6uAcIC8 = PG.XXX.XXX.XXX: 51820 povoleno IPS: 0.0.0.0/0 poslední podání ruky: před 53 sekundami přenos: 3.23 KiB obdrženo, 3.50 KiB odesláno 

Můžete také otevřít prohlížeč, napsat „what is my ip“ a měla by se zobrazit IP adresa vašeho serveru Debian.

Chcete-li zastavit tunelování, stáhněte dolů wg0 rozhraní:

sudo wg-quick down wg0

Klienti Windows #

Pokud jste nainstalovali WireGuard ve Windows, klikněte na tlačítko „Aktivovat“. Jakmile jsou partneři připojeni, stav tunelu se změní na Aktivní:

Závěr #

Ukázali jsme vám, jak nainstalovat WireGuard na Debian 10 a nakonfigurovat jej jako server VPN. Toto nastavení umožňuje anonymní procházení webu tím, že vaše provozní data zůstanou soukromá.

Pokud čelíte jakýmkoli problémům, neváhejte zanechat komentář.

Hry Jak nainstalovat League Of Legends na Ubuntu 14.04
Jak nainstalovat League Of Legends na Ubuntu 14.04
Pokud jste fanouškem League of Legends, pak je to pro vás příležitost otestovat běh League of Legends. Všimněte si, že LOL je podporován na PlayOnLinu...
Hry Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
Nainstalujte si nejnovější strategickou hru OpenRA na Ubuntu Linux
OpenRA je herní engine Libre / Free Real Time Strategy, který obnovuje rané hry Westwood, jako je klasický Command & Conquer: Red Alert. Distribuované...
Hry Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Emulátor Dolphin vám umožní hrát vybrané hry Gamecube a Wii na osobních počítačích se systémem Linux (PC). Jako volně dostupný herní emulátor s otevř...