Privoxy: forbind en HTTP-proxyklient med en SOCKS-tunnel
Forbind en proxyklient, der kun accepterer HTTP, med en SOCKS-tunnel via en lokal HTTP-proxy i stedet for at omdøbe tunnelporten.
En dynamisk SSH-tunnel, herunder PuTTYs dynamiske videresendelse, giver en SOCKS-grænseflade. Et program, der kun accepterer en HTTP-proxy, kan ikke bruge den port bare ved at kalde den HTTP.
En lokal protokolbro kan sidde mellem dem. Programmet sender HTTP-proxyanmodninger til broen, og broen åbner forbindelser til destinationen via SOCKS-tjenesten.
Privoxy dokumenterer denne ordning gennem sine videresendelsesregler. For en eksisterende lokal SOCKS5-tunnel er et konfigurationsuddrag:
forward-socks5 / 127.0.0.1:1080 .
Programmet forbinder til Privoxys HTTP-lytter, ikke port 1080. Hold den lytter lokal under den tilsigtede adgangspolitik. Det sidste punktum i reglen har en dokumenteret betydning; det er ikke en pladsholder for et manglende internet-værtsnavn.
Dette er protokoloversættelse
Privoxys videresendelsesdokumentation forklarer SOCKS-videresendelsessyntaks og håndtering af værtsnavne. En almindelig TCP-portvideresendelse udfører ikke den samme oversættelse: den transporterer klientens HTTP-bytes uændret til en SOCKS-lytter, som stadig forventer en SOCKS-forhandling.
Broen bliver også en del af den konfiguration, du skal forstå. Privoxy kan have sine egne indstillinger for indholdsfiltrering og adgang. At tilføje den er ikke det samme som at få det oprindelige program til at understøtte SOCKS indbygget.
For HTTPS-websteder beder programmet normalt HTTP-broen om CONNECT, og broen får destinationsforbindelsen via SOCKS. Almindelig websteds-TLS forbliver et forhold mellem program og websted; broen behøver ikke at udgive sig for at være webstedet for at tilbyde denne vej.
Hvis programmet kan bruge SOCKS direkte, kan den ekstra komponent være unødvendig. Brug broen til at løse en faktisk protokoluoverensstemmelse, med lytteren og opstrøms tydeligt adskilt.