GNU/Linux >> Znalost Linux >  >> Linux

WireGuard na Kali

V poslední době jsme o WireGuard hodně slyšeli, a protože byl nedávno přidán do repozitářů Kali, řekli jsme si, že to rychle zkusíme, abychom zjistili, o čem je ten povyk. Celkově jsme zjistili, že je to opravdu pěkné a rychlé řešení VPN na konfiguraci a možná by stálo za to ho vyzkoušet.

Začínáme

S WireGuard přidaným do repozitářů je instalace pěkná a snadná:

apt install wireguard resolvconf

A jsme pryč. Dále přichází čas na konfiguraci. Tady pro nás WireGuard opravdu zazářil, protože k uvedení do provozu netrvalo téměř nic.

Na serveru musíme vygenerovat pár veřejného/soukromého klíče a nastavit počáteční konfigurační soubor.

wg genkey | tee privatekey | wg pubkey > publickey
umask u=rwx,go= && cat > /etc/wireguard/wg0.conf << EOF
[Interface]
Address = 10.222.222.1/24
SaveConfig = true
ListenPort = 51820
PrivateKey = -SERVER PRIVATE KEY-

[Peer]
PublicKey = -CLIENT PUBLIC KEY-
AllowedIPs = 10.222.222.2/32
EOF

A stejný proces provedeme na klientovi, abychom vytvořili jeho pár klíčů a konfiguraci.

wg genkey | tee privatekey | wg pubkey > publickey
umask u=rwx,go= && cat /etc/wireguard/wg0.conf  << EOF
[Interface]
Address = 10.222.222.2/32
PrivateKey = -CLIENT PRIVATE KEY-
DNS = 8.8.8.8

[Peer]
PublicKey = -SERVER PUBLIC KEY-
Endpoint = public.ip.of.server:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 21
EOF

Jsou to docela jednoduché konfigurace, ale stojí za to upozornit na několik věcí. Nejprve musíte samozřejmě vložit výstup z párů klíčů do konfigurací podle potřeby. Řádek DNS na klientovi má navíc pomoci zabránit únikům DNS při použití vašeho místního výchozího serveru DNS. To můžete nebo nemusíte chtít změnit v závislosti na vašich potřebách.

Nejdůležitější je však řádek „AllowedIPs“. To bude řídit, co IP dělají nebo neprocházejí přes VPN. V tomto případě nastavíme klienta tak, aby vše směroval přes server VPN. Za chvíli si s tím pohrajeme více, ale podívejme se na spuštění této základní konfigurace.

Spustit a zastavit tunel je docela snadné.

# The VPN can be enabled using
wg-quick up wg0
# To disable the VPN:
wg-quick down wg0
# Information about the connection can be retrieved with following command:
wg show

A samozřejmě musíme povolit IP maškarádu a předávání IP na serveru.

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

Takže máme tradiční konfiguraci VPN. Pokud hledáte pouze standardní nastavení VPN, v tomto okamžiku jste hotovi. Ve srovnání s používáním OpenVPN to má určité výhody, například toto řešení se zdá být mnohem rychlejší, konfigurace je mnohem jednodušší a je o něco nenápadnější v tom, že server nebude reagovat na pakety, které nemají správný pár klíčů s nimi spojený. Mysleli jsme si však, že by mohlo být zajímavé změnit konfiguraci tak, aby odrážela naši konfiguraci ISO of Doom, s klientem, který se automaticky připojí k serveru při spouštění a umožní serveru směrovat a přistupovat do klientské sítě.

WireGuard of DOOM!

Nejprve u našeho klienta rychle nastavíme předávání a maskování IP:

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

Skvělé, když je to hotové, provádíme pár menších změn v našich konfiguracích. Nejprve na serveru změníme řádek „AllowedIPs“ tak, aby byla soukromá síť umístěna na stránce sestavy. To by vypadalo takto:

[Interface]
Address = 10.222.222.1/24
SaveConfig = true
ListenPort = 51820
PrivateKey = -SERVER PRIVATE KEY-

[Peer]
PublicKey = -CLIENT PUBLIC KEY-
AllowedIPs = 10.200.200.2/32, 192.168.2.0/24

Když se na serveru změnil jeden řádek, vyladíme klientský řádek „AllowedIPs“, abychom odstranili možnost směrovat vše na server VPN.

[Interface]
Address = 10.200.200.2/32
PrivateKey = -CLIENT PRIVATE KEY-
DNS = 8.8.8.8

[Peer]
PublicKey = -SERVER PUBLIC KEY-
Endpoint = public.ip.of.server:51820
AllowedIPs = 10.200.200.0/24
PersistentKeepalive = 21

A je to!

[email protected]:~# ping 192.168.2.22
PING 192.168.2.22 (192.168.2.22) 56(84) bytes of data.
64 bytes from 192.168.2.22: icmp_seq=19 ttl=63 time=50.2 ms
64 bytes from 192.168.2.22: icmp_seq=20 ttl=63 time=53.4 ms
64 bytes from 192.168.2.22: icmp_seq=21 ttl=63 time=48.1 ms

Nyní má server VPN přístup k podsítím na druhé straně WireGuard VPN.

Zabalení

Čas ukáže, zda WireGuard nahradí OpenVPN jako preferovanou VPN, nebo zda je poslední šuškanda jen vzrušením z používání nejnovějších hraček. V každém případě je hezké mít možnost to vyzkoušet a použít, pokud se hodí. Jak jsme zde viděli, je rozhodně snadné jej nastavit a v uživatelských případech je relativně univerzální.


Linux
  1. Témata komunity Kali

  2. Secure Kali Pi (2022)

  3. Kali Unkaputtbar

  1. Vylepšení přístupnosti Kali Linuxu

  2. Raspberry Pi 4 a Kali

  3. Kali všude!

  1. Následky vydání Kali Linuxu

  2. Vydání Kali Linux 1.0.7

  3. Metabalíky Kali Linux