socat SOCKS hidak: őrizze meg a webhely TLS-gazdagépnevét
Használjon loopback TCP-figyelőt egy SOCKS-célhoz, miközben megőrzi a HTTP- és TLS-identitást az alkalmazásban.
Az alkalmazásnak nincs SOCKS-lehetősége, de csatlakozhat egy kiválasztott TCP-címhez. A rögzített célú adapter biztosíthatja a SOCKS-beszélgetést egy célhoz. Nem kell újabb általános előre továbbító proxyszerverré válnia.
A SOCKS4A-t nyújtó socat-buildeléshez szemléltető elrendezés:
socat TCP4-LISTEN:9443,bind=127.0.0.1,reuseaddr,fork \
SOCKS4A:127.0.0.1:service.example.net:443,socksport=1080
A SOCKS végpont a helyi 1080-as port. Az adapter a helyi 9443-as porton figyel, és ettől a végponttól service.example.net:443-et kér. Ezek példaértékek, nem teljes szolgáltatástelepítés.
Az adapternek egyetlen rögzített célja van
Minden elfogadott TCP-kapcsolat ugyanazt a szolgáltatást kéri. A 9443-hoz csatlakozó alkalmazás a szokásos protokollbájtjait adja; a SOCKS4A-tárgyalást a socat biztosítja. Egy új HTTP CONNECT-kérés a 9443-hoz nem választana másik célt—továbbküldené ezeket a bájtokat a rögzített szolgáltatásnak.
A SOCKS4A hosztnevet ad a SOCKS végpontnak a távoli feloldáshoz. Ez eltér a SOCKS4 formától, amely ügyfél által választott címet használ. A kiválasztott upstreamnek—beleértve a SOCKS4 proxy listáról származó nyilvános jelöltet is—támogatnia kell a SOCKS4A hosztnév-kezelést és a szükséges hitelesítést; ez a példa nem SOCKS5 jelszavas bejelentkezési recept.
Csatlakozzon helyben, ismerje fel az igazi szolgáltatást
Egy HTTPS URL https://127.0.0.1:9443/-re változtatása megváltoztatja a hosztnevet, amelyet az ügyfél TLS-hez és HTTP-hez használhat. A service.example.net tanúsítványa nem lesz érvényes tanúsítvány a loopbackhez.
Ahol az ügyfél külön kapcsolatútvonalválasztást támogat, tartsa meg az eredeti URL identitását. A Curl szemléltetheti ezt a különbséget:
curl --noproxy '*' \
--connect-to service.example.net:443:127.0.0.1:9443 \
https://service.example.net/
A socket a helyi adapterhez megy, miközben a TLS-ellenőrzés és a HTTP-cél service.example.net marad. Más alkalmazásoknak saját egyenértékű támogatott vezérlésre van szükségük; nem minden ügyfél nyújt ilyet.
A loopback-kötés korlátozza a hálózati kitettséget, de más jogosult helyi folyamatok még elérhetik. Tartsa a szolgáltatás élettartamát és a felhasználókat megfelelően. Őrizze meg a TLS-ellenőrzést, ahelyett hogy elnyomná a loopback URL okozta identitáshibát.