Portál AbcLinuxu, 30. dubna 2024 12:13


Dotaz: port forwarding pres wireguard

1.3.2021 16:06 hovnocuc
port forwarding pres wireguard
Přečteno: 478×
Odpovědět | Admin
Ahoj, potrebuju poradit, jak protunelovat port 51413 skrz wireguard tak, aby se stroj za natem tvaril jakoze ma verejnou ip adresu.

Mam VPS s verejnou IP adresou a stroj za natem. Oba stroje jsou propojene skrz wireguard, kde stroj s verejnou IP adresou ma adresu 172.24.24.1 a stroj za natem 172.24.24.199 (a ma nastavene AllowedIPs = 0.0.0.0/0, takze veskery traffic jde skrz wireguard).

Na VPS mam toto (eth0 je rozhrani s verejnou IP adresou, wg0 s adresou 172.24.24.1):
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i wg0 -j ACCEPT
-A FORWARD -i eth0 -o wg0 -p udp -m state --state NEW -m udp --dport 51413 -j ACCEPT
-A FORWARD -i eth0 -o wg0 -p tcp -m state --state NEW -m tcp --dport 51413 -j ACCEPT
-A PREROUTING -i eth0 -p udp -m udp --dport 51413 -j DNAT --to-destination 172.24.24.199
-A PREROUTING -i eth0 -p tcp -m tcp --dport 51413 -j DNAT --to-destination 172.24.24.199
-A POSTROUTING -d 172.24.24.199/32 -o wg0 -p udp -m udp --dport 51413 -j SNAT --to-source 172.24.24.1
-A POSTROUTING -d 172.24.24.199/32 -o wg0 -p tcp -m tcp --dport 51413 -j SNAT --to-source 172.24.24.1
A nefunguje to. Nechybi mi tam neco?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

1.3.2021 16:34 X
Rozbalit Rozbalit vše Re: port forwarding pres wireguard
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mas zapnuty ip_forward?
-A POSTROUTING -d 172.24.24.199/32 -o wg0 -p udp -m udp --dport 51413 -j SNAT --to-source 172.24.24.1
-A POSTROUTING -d 172.24.24.199/32 -o wg0 -p tcp -m tcp --dport 51413 -j SNAT --to-source 172.24.24.1
Tohle zkus dat pric..
1.3.2021 17:16 hovnocuc
Rozbalit Rozbalit vše Re: port forwarding pres wireguard
ip_forward zapnuty mam... Ten POSTROUTING oddelam, spis jsem myslel, jestli tam nepotrebuju nejake pravidlo, ktere by mi menilo source address z 172.24.24.199 na verejnou adresu toho VPS.
1.3.2021 18:03 X
Rozbalit Rozbalit vše Re: port forwarding pres wireguard
V tom DNATu je zahrnuty i opacny smer, takze to nemusis prepisovat zase obracene..
Josef Kufner avatar 1.3.2021 18:12 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: port forwarding pres wireguard
Odpovědět | | Sbalit | Link | Blokovat | Admin
Obvykle je vhodné si postupně otestovat jednotlivé úseky cesty.

Funguje služba na daném portu lokálně na cílovém stroji? Poslouchá i na wg0 rozhranní, nejlépe na 0.0.0.0?

Wireguard spojení funguje? Jde se z natujícího stroje připojit na ten port přes wg0?

Přichází pakety na natující stroj? Neodchytí to firewall ještě před natem?

Když přijde paket na přeposlaný port, odejde na wg0?

tcpdump je kamarád a poví ti, kam až co dojde.
Hello world ! Segmentation fault (core dumped)
2.3.2021 10:43 hovnocuc
Rozbalit Rozbalit vše Re: port forwarding pres wireguard
Odpovědět | | Sbalit | Link | Blokovat | Admin
Vypada to, ze to zaclo fungovat pote, co jsem prerouting a postrouting zmenil na nasledujici:
-A PREROUTING -d VEREJNA_IP -i eth0 -p tcp -m tcp --dport 51413 -j DNAT --to-destination 172.24.24.199
-A PREROUTING -d VEREJNA_IP -i eth0 -p udp -m udp --dport 51413 -j DNAT --to-destination 172.24.24.199
-A POSTROUTING -s 172.24.24.199/32 -p tcp -j SNAT --to-source VEREJNA_IP
-A POSTROUTING -s 172.24.24.199/32 -p udp -j SNAT --to-source VEREJNA_IP
3.3.2021 10:49 hovnocuc
Rozbalit Rozbalit vše Re: port forwarding pres wireguard
Pro upresneni jsem jeste do POSTROUTINGu pridal -o eth0, cili je to takto:
-A POSTROUTING -s 172.24.24.199/32 -o eth0 -p tcp -j SNAT --to-source VEREJNA_IP
-A POSTROUTING -s 172.24.24.199/32 -o eth0 -p udp -j SNAT --to-source VEREJNA_IP

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.