Portál AbcLinuxu, 24. dubna 2024 22:43


Dotaz: OpenWrt 2 subnets tcp tunnel na VPS

19.9.2019 22:27 Souris23ET
OpenWrt 2 subnets tcp tunnel na VPS
Přečteno: 223×
Odpovědět | Admin
Ahoj. Mam doma zelezo s dost vykonem a velkym ulozistem vcetne radice a napadlo me misto zatezovani VPSky vsemi projekty zkratka premostit spojeni, aby VPS jen routovala pozadavky z urcitych portu (pripadne FQDN - nginx) na moje zelezo, ktery je ale na moji wifi (router se sim od ISP) pripojeni jeste pres jeden router (chlazena mistnost, nechci tahat 50m cat5e a cpat to do zdi nebo podobne, proste wifi -> nehostuju tam nic pro 10k klientu takze staci wifi propust), na kterem mam openWrt a je k me wifi jako wifi-client a zelezo je pres lan (nechci kupovat usb wifi :D kdyz muzu vyuzit ten router jeste). /toliko k abstraktu

Zelezo (192.168.1.2 na ISP rout.) (192.168.2.2 na wrt) wrt router (192.168.1.9 na ISP rout.) (192.168.2.1 na wrt)

doted sem mirroroval bez 2 subnetu gohttptunnel-em (takovy lightweight reseni), ale tady prichazi problem s firewallem zrejme jak daleko jsem problem dosledoval. (gohttptunnel funguje tak ze na vps se pusti server a na zeleze klient. server posloucha na portu a kdyz prijde komunikace tak to posle pripojenemu klientu, klient pak tu komunikaci naroutuje na ten port a pripadne odpovedi posila zpet na server kde se deje totez opacne - jako binarka simple as fuck a to by se mi libilo :D)

priklad: (berme ted jen ciste tcp tunel na nejaky port, ne nutne to FQDN to uz vicemene neni rozdil, ale jen pro cistotu prikladu a toho co sem zkousel a nejde)

-na zeleze bezi echo server na 8022 na ktery se chci dostat -na vps mi gohttptunnel tuneluje tu 8022 na stejnej public klidne pro poradek na vps pustim server gohttptunnelu, naroutuju si ho, otevru porty, pohodicka vse by melo slapat. na zeleze pustim client gohttptunnelu, ve firewallu otevru porty. na wrt forwardnu port ktery reachuje ten gohttptunnel (ale ne reach pri otevreni ale pri dotazu, to je mozna ten problem)

svete div se, klient ne a ne otevrit spojeni se serverem (gohttptunnelu). mozna se v tom jenom motam dyl a uchazi mi neco zakladniho :D

a ted ocekavani:

-- na zeleze bezi server 8022 -- na vps bezi server a posloucha na 8055 treba a veskerou komunikaci dava na pripojeneho klienta, kdyz klient neni vrati fallback -noproblem- -- na zeleze zapnu klienta pro vps server, ktery udela tunel mezi localhost:8022 a spojenim se serverem.

Jde mi ciste o TCP protokol, UDP spojeni takhle mirrorovat nepotrebuju, a taky to nebude extra rozdil.

Bohuzel je tu zadrhel ze na wrtcku nemuzu zkompilovat golang abych zkompiloval ten go-http-client, jednak kvuli pameti a druhak kvuli dependencies, a kompilovat cely jadro se mi kvuli tomu zrovna nechce :D

jinak by se to dalo resit ze klient by bezel misto na zeleze na wrtcku.

hlavni problem teda podle me je, ze ta tcp komunikace s tim serverem se proste nespoji, protoze se jim nepodari udelat tunel skrz 2 subnety, protoze pri otevirani pouziva i jinej port nez ten ktery se pouziva mezi klientem a serverem??

existuje nejaka elegantni cesta jak tohle resit aby se to pripadne dalo automatizovat, jsem takovej utilitar na veci co delam roboticky a musim mit walkthrough abych to udelal vzdycky vsechno :D

Pri nejhorsim podle me existuje moznost delat ssh reverse proxy x2 , tj na wrt udelat ssh tunnel na vps a na zeleze otevrit ten tunel z wrt a forwardnout tam ten muj port, coz ve sve podstate je asi nejlepsi ale pro me nic moc skalovatelny a navic v tom ssh tunnelingu co sem vypozoroval panuje docela zmatek :D Ted vikend delame akci tak nebudu mit cas tak polozim dotaz jestli se nenajde elegantni reseni (tj automatizovatelny, abych nemusel poustet nejaky root scripty, pripadne jen na zeleze, kde to vyresim uzivatelema zejo) jinak si pak asi nakreslim ty ssh tunnely a udelam nejakej hardcore, ale to sezere strasne casu a zas tolik volnyho nemam. pomocte! :D Dik a hezkej den, vikend. :)

Ř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

Řešení 1× (Käyttäjä 11133)
20.9.2019 18:50 NN
Rozbalit Rozbalit vše Re: OpenWrt 2 subnets tcp tunnel na VPS
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proc tak slozite. Vytvor si mezi klientem a VPS VPN spojeni, ktere propoji sit klienta s VPS a pak na VPS do VPN presmeruj provoz firewallem.

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.