Portál AbcLinuxu, 10. května 2025 09:41

Dotaz: Přesměrovani portu skrze OpenVPN

8.11.2015 15:54 Pat1 | skóre: 15
Přesměrovani portu skrze OpenVPN
Přečteno: 365×
Odpovědět | Admin
Mám počítač(server) s veřejnou IP a klienta s privátní IP a snažím se přesměrovat jeden port ze serveru na klienta. OpenVPN spojeni mi funguje a momentálně mám "přesměrování" vyřešené jednoduchým skriptem pomoci netcat:

while [ 1 ]; do nc -q 1 -l -p 12070 -c "nc -q 1 10.203.0.10 22"; done

Tím samozřejmě stratím informaci o zdrojove IP, ale to mi zase tak nevadí. Problém je spíš to, že mužu mít otevřené jen jedno spojení a ani z hlediska výkonu/latence to nebude nejlepší. Předpokládám že to půjde vyřešit na úrovni IPTABLES, ale nevím jak. Dostal jsem se k tomu že vím jak ze serveru přeposílat spojení z jednoho portu na klienta (DNAT), ale nevím jak zajistit, aby se data vracela správnou cestou přes OpenVPN a zároven se musi někde opět změnit zdrojová adresa(SNAT). Zaroveň bych chtěl aby přes OpenVPN šla jen spojeni přes jeden konkretni port, odchozí spojeni by měla jít rovnou. Ideální by bylo kdyby se to dalo vyřešit pouze na straně serveru, vpodstatě by mi stačilo dosáhnout stejného výsledku jako teď pomocí netcat. Mužete mě někdo nakopnout jak na to?

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

8.11.2015 18:29 NN
Rozbalit Rozbalit vše Re: Přesměrovani portu skrze OpenVPN
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mohl by jsi nez dorazi paket na server, presmerovat ho na klienta:
iptables -t nat -A PREROUTING -i WAN -p tcp -d WANIP --dport 12070 -j DNAT --to-destination CLIENTIP:22
a nez vleze do tunelu jeste prepsat zdroj:
iptables -t nat -A POSTROUTING -o VPN -d CLIENTIP --dport 22 -j SNAT --to- source VPNIP
tak, ze se pro klinta bude zdat, ze komunikuje s branou. Netusim jestli je vubec mozne takto na sebe napojit dvakrat NAT.
8.11.2015 20:17 Pat1 | skóre: 15
Rozbalit Rozbalit vše Re: Přesměrovani portu skrze OpenVPN
Nad necim podobnym jsem premyslel, ale myslim si, ze az by se to vratilo zpet na server, tak by to asi neposlal zpet k puvodnimu zdroji ne? Tipuji ze odpoved od klienta by sla na tu nahrazenou adresu z druheho pravidla.
Petr Tomášek avatar 9.11.2015 22:21 Petr Tomášek | skóre: 39 | blog: Vejšplechty
Rozbalit Rozbalit vše Re: Přesměrovani portu skrze OpenVPN
Hm, já měl za to, že jak DNAT tak SNAT jsou "obousměrné"...
multicult.fm | monokultura je zlo | welcome refugees!
Řešení 1× (Pat1 (tazatel))
Jendа avatar 8.11.2015 19:19 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Přesměrovani portu skrze OpenVPN
Odpovědět | | Sbalit | Link | Blokovat | Admin
socat TCP4-LISTEN:12070,reuseaddr,fork TCP4:10.203.0.10:22
8.11.2015 20:18 Pat1 | skóre: 15
Rozbalit Rozbalit vše Re: Přesměrovani portu skrze OpenVPN
Porad je to userspace, ale urcite lepsi nez to co mam ted, vyzkousim to (:
9.11.2015 21:11 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Přesměrovani portu skrze OpenVPN
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mám počítač(server) s veřejnou IP a klienta s privátní IP…

Chyba. Řešením je IPv6.

12.11.2015 09:09 bigBRAMBOR | skóre: 37
Rozbalit Rozbalit vše Re: Přesměrovani portu skrze OpenVPN
dobrá rada nad zlato

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.