socat SOCKS-brýr: varðveit TLS vertsnavnið á heimasíðuni
Brúka ein loopback TCP-lyttara til eitt SOCKS-mál, meðan HTTP- og TLS-samleiki verður varðveittur í forritinum.
Eitt forrit hevur ongan SOCKS-møguleika, men kann binda seg til eina valda TCP-adressu. Ein adapter við føstum máli kann veita SOCKS-samrøðuna fyri eitt mál. Tað má ikki gerast enn ein almennur framsendingarproxy.
Fyri socat-byggingar við SOCKS4A er eitt lýsandi uppsetning hendan:
socat TCP4-LISTEN:9443,bind=127.0.0.1,reuseaddr,fork \
SOCKS4A:127.0.0.1:service.example.net:443,socksport=1080
SOCKS-endapunktið er lokal portur 1080. Adapterin lurar á lokal port 9443 og biður hetta endapunktið um service.example.net:443. Hesi eru dømisvirði, ikki full service-útsetning.
Adapterin hevur eitt fast mál
Hvør móttikin TCP-samband biður um somu tænastu. Eitt forrit, ið bindur seg til 9443, letur sín vanligu protokoll-byte; socat letur SOCKS4A-samráðingina. Ein nýggj HTTP CONNECT-umbøn til 9443 hevði ikki valt eitt annað mál—hon hevði sent hesar bytini víðari til ta faste tænastuna.
SOCKS4A letur eitt vertsnavn til SOCKS-endapunktið fyri fjargreining. Tað er øðrvísi enn SOCKS4-formin, ið brúkar eina adressu valda av klientinum. Tann valda uppstreymurin—eisini ein almennur kandidat úr SOCKS4-proxylistanum—má stuðla SOCKS4A-vertsnavnahandling og neyðuga váttan; hetta dømið er ikki ein SOCKS5-loyniorðsinnritan.
Binda seg lokalt, eyðmerk tann veruliga tænastuna
At broyta eina HTTPS-adressu til https://127.0.0.1:9443/ broytir vertsnavnið, ið klienturin kann brúka til TLS og HTTP. Eitt skjalprógv fyri service.example.net verður ikki galdandi skjalprógv fyri loopback.
Har klienturin stuðlar serstakri sambandsleiðing, varðveit uppruna-adressu-samleikan. Curl kann lýsa hendan munin:
curl --noproxy '*' \
--connect-to service.example.net:443:127.0.0.1:9443 \
https://service.example.net/
Sokketið fer til lokala adapterin, meðan TLS-váttan og HTTP-málið verða verandi service.example.net. Onnur forrit tørva sína egnu samsvarandi stuðlaðu stýring; ikki hvør klientur letur eina.
Loopback-bindingin avmarkar net-útsetning, men onnur hóskandi lokal prosess kunnu enn náa henni. Halt tænastu-lívstíð og brúkarar hóskandi. Varðveit TLS-váttan heldur enn at doyva samleiksvilluna orsakaða av loopback-adressu.