Proxychains přes Squid: omezení CONNECT na portu 80
Odlište běžné požadavky HTTP proxy od tunelů HTTP CONNECT nástroje proxychains, když je cílový port 80 odmítnut.
Prohlížeč načte stránku HTTP přes Squid. Stejný cíl pod proxychains selže. To nutně neznamená, že jeden z obou programů zvolil špatnou IP adresu proxy.
Běžný klient, který rozumí HTTP, může odeslat webový požadavek dopřednému proxy ve formě HTTP proxy. Obecný obal nad socketem naopak potřebuje bajtový tunel pro spojení, které aplikace chtěla otevřít. Pro HTTP proxy ve svém řetězu používá proxychains CONNECT.
To znamená, že prostý textový web na portu 80 může vytvořit požadavek CONNECT na port 80. Zásada Squidu, která povoluje CONNECT pouze na schválený seznam portů TLS, může takový tunel odmítnout, i když jsou běžné požadavky HTTP na port 80 povoleny.
Porovnávejte požadavky, ne jen názvy hostitelů
Dokumentace proxychains-ng popisuje jeho podporu HTTP CONNECT. Přístupová pravidla Squidu umějí rozlišit metodu a cílový port. Jde o různé cesty požadavku na stejný web.
Přečtěte si odmítnutí a zamýšlenou zásadu, než ji změníte. Rozšíření přístupu CONNECT na všechny porty je podstatná změna; nemělo by být výchozí reakcí na nesoulad obalu.
Pokud aplikace podporuje HTTP proxy nativně, její použití může předejít zbytečnému obecnému tunelu pro prostý textový HTTP. Pokud skutečně potřebuje surový tunel TCP, zvolte schválený protokol proxy a portovou zásadu, které jej poskytují.
Úspěšný požadavek prohlížeče je užitečný důkaz o dosažitelnosti proxy a o jednom podporovaném režimu požadavku. Nedokazuje, že každá metoda tunelování, cílový port nebo protokol aplikace je přes tento proxy povolen.