Rakendusel pole SOCKS-valikut, kuid see saab ühenduda valitud TCP-aadressiga. Fikseeritud sihtmärgiga adapter saab pakkuda SOCKS-vestlust ühe sihtkoha jaoks. See ei pea muutuma veel üheks üldiseks edasisaatmise puhverserveriks.

SOCKS4A-d pakkuvate socat-i buildide puhul on näitlik paigutus järgmine:

socat TCP4-LISTEN:9443,bind=127.0.0.1,reuseaddr,fork \
  SOCKS4A:127.0.0.1:service.example.net:443,socksport=1080

SOCKS-i lõpp-punkt on kohalik port 1080. Adapter kuulab kohalikul pordil 9443 ja küsib sellelt lõpp-punktilt service.example.net:443. Need on näidisväärtused, mitte täielik teenuse juurutamine.

Adapteril on üks fikseeritud sihtmärk

Iga vastuvõetud TCP-ühendus küsib sama teenust. Rakendus, mis ühendub pordiga 9443, edastab oma tavalised protokollibaidid; socat edastab SOCKS4A-läbirääkimised. Uus HTTP CONNECT-päring pordile 9443 ei valiks teist sihtkohta—see saadaks need baidid edasi fikseeritud teenusele.

SOCKS4A annab SOCKS-i lõpp-punktile hostinime kauglahenduseks. See erineb SOCKS4-vormist, mis kasutab kliendi valitud aadressi. Valitud ülemvool—sealhulgas avalik kandidaat SOCKS4 puhverserverite loendist—peab toetama SOCKS4A hostinime käsitlemist ja nõutavat autentimist; see näide ei ole SOCKS5 parooliga sisselogimise retsept.

Ühendu kohapeal, tuvasta tegelik teenus

HTTPS-i URL-i muutmine https://127.0.0.1:9443/-ks muudab hostinime, mida klient võib TLS-i ja HTTP jaoks kasutada. service.example.net jaoks mõeldud sertifikaat ei muutu loopbacki jaoks kehtivaks sertifikaadiks.

Kui klient toetab eraldi ühenduse marsruutimist, säilita algse URL-i identiteet. Curl saab seda erinevust illustreerida:

curl --noproxy '*' \
  --connect-to service.example.net:443:127.0.0.1:9443 \
  https://service.example.net/

Socket läheb kohalikku adapterisse, samal ajal kui TLS-i kontroll ja HTTP-sihtkoht jäävad service.example.net-iks. Teised rakendused vajavad oma samaväärset toetatud juhtimist; mitte iga klient ei paku seda.

Loopback-i sidumine piirab võrgu Exposure'it, kuid teised sobilikud kohalikud protsessid võivad sellele siiski ligi pääseda. Hoia teenuse eluiga ja kasutajad asjakohased. Säilita TLS-i kontroll, selle asemel et summutada loopbacki URL-ist põhjustatud identiteediviga.

Seotud artiklid