socat SOCKS mostovi: sačuvajte TLS ime hosta sajta
Koristite loopback TCP osluškivač za jednu SOCKS destinaciju uz očuvanje HTTP i TLS identiteta u aplikaciji.
Aplikacija nema SOCKS opciju, ali se može povezati na izabranu TCP adresu. Adapter sa fiksnom metom može pružiti SOCKS razgovor za jednu destinaciju. Ne mora postati još jedan univerzalni prosleđujući proksi.
Za socat gradnje koje nude SOCKS4A, ilustrativan raspored je:
socat TCP4-LISTEN:9443,bind=127.0.0.1,reuseaddr,fork \
SOCKS4A:127.0.0.1:service.example.net:443,socksport=1080
SOCKS krajnja tačka je lokalni port 1080. Adapter sluša na lokalnom portu 9443 i traži od te tačke service.example.net:443. Ovo su primernе vrednosti, a ne potpuno postavljanje usluge.
Adapter ima jednu fiksnu metu
Svaka prihvaćena TCP veza traži istu uslugu. Aplikacija koja se povezuje na 9443 šalje svoje uobičajene protokolarne bajtove; socat pruža SOCKS4A pregovaranje. Novi HTTP CONNECT zahtev na 9443 ne bi izabrao drugu destinaciju—poslao bi te bajtove dalje fiksnoj usluzi.
SOCKS4A daje ime hosta SOCKS krajnjoj tački za daljinsko razrešavanje. To se razlikuje od oblika SOCKS4 koji koristi adresu koju je izabrao klijent. Izabrani upstream—uključujući javnog kandidata sa liste SOCKS4 proksija—mora podržavati SOCKS4A obradu imena hosta i potrebnu autentifikaciju; ovaj primer nije recept za prijavu lozinkom na SOCKS5.
Povežite se lokalno, prepoznajte pravu uslugu
Promena HTTPS URL-a u https://127.0.0.1:9443/ menja ime hosta koje klijent može koristiti za TLS i HTTP. Sertifikat za service.example.net neće postati važeći sertifikat za loopback.
Kada klijent podržava odvojeno usmeravanje veze, zadržite identitet izvornog URL-a. Curl može ilustrovati tu razliku:
curl --noproxy '*' \
--connect-to service.example.net:443:127.0.0.1:9443 \
https://service.example.net/
Socket ide lokalnom adapteru, dok TLS provera i HTTP odredište ostaju service.example.net. Druge aplikacije trebaju sopstvenu ekvivalentnu podržanu kontrolu; nema je svaki klijent.
Loopback vezivanje ograničava mrežnu izloženost, ali druge podobne lokalne procese i dalje mogu doći do njega. Neka trajanje usluge i korisnici budu prikladni. Zadržite TLS proveru umesto da potiskujete grešku identiteta izazvanu loopback URL-om.