Squidi SO_ORIGINAL_DST vea lugemine
Kontrollige, kas selgesõnaliselt seadistatud klient on jõudnud püüdmiskõlari juurde, enne kui hakkate lahendama Squidi algse sihtkoha otsingu tõrget.
NF getsockopt(SO_ORIGINAL_DST) viitab algse sihtkoha otsingule. Püüdmise seadistuses peab Squid taastama, kuhu ümbersuunatud ühendus algselt teel oli.
Selgesõnaliselt seadistatud brauser saadab oma päringud puhverserverile tahtlikult. See ühendus ei saa NAT-püüdmise ajalugu ainult sellepärast, et Squidi kõlari pordi kõrval on kirjas intercept.
Seetõttu võib see lahknevus nurjuda enne, kui sihtkoha sert üldse oluliseks muutub.
Alustage sellest, kuidas ühendus kohale jõudis
- Kui rakendusel on puhverserveri aadress seadistatud, tehke kindlaks tavaline edastava puhverserveri kõlar, mida see peaks kasutama.
- Kui lüüs suunab ümber muidu otsese liikluse, kontrollige, et see jõuab ettenähtud püüdmiskõlarini ja et toetatud NAT-lahendus säilitab vajaliku sihtkoha teabe.
- Kui mõlemad režiimid on olemas, kontrollige, millise aadressi ja pordiga tõrkuv klient tegelikult ühendus.
Squidi http_port dokumentatsioon teeb vahe selgeks: režiimilipu ärajätmine valib edastava puhverserveri režiimi; intercept eeldab NAT-püüdmist IP-kihis.
Seejärel käsitlege transporditurvet eraldi. HTTP-puhverserver saab HTTPS-i edastada CONNECTi kaudu. TLS-ühendus puhverserverini nõuab ühilduvat kõlarit ja kliendi seadistust. Sihtkoha liikluse dekrüpteerimine on jälle eraldi valikuline võime.
Ärge kopeerige vana “HTTPS-parandust”, mis lülitab sertide genereerimise sisse ainult sellepärast, et sihtkoha URL algab HTTPS-iga. Parandage kõigepealt kliendi ja kõlari kokkulepe. Kui pärast seda jääb tõeline TLS-viga, on see uurimiseks kasulikum viga.