Transparenter Squid
Aus BraLUG-Wiki
Inhaltsverzeichnis |
Idee
In Ermangelung einer geeigneteten Möglichkeit, unbekannten Rechnern die lokalen Proxy-Einstellungen überzuhelfen und zur Erfüllung des Wunsches nach einem Proxy innerhalb des BraLUG-Netzes hier die Konfiguration für einen transparenten HTTP-Proxy. Per DHCP wird der Proxy-Server als Default-Gateway verbreitet, weitere Einstellungen sind nicht notwendig.
Getestet wurde das Konzept mit einem Squid 3.0-PRE3-20050309 und Linux Kernel 2.6.11.2.
IPTables-Konfiguration
TRANSSQUID=127.0.0.1:3128 # enable ip forwarding sysctl -w net.ipv4.ip_forward=1 # flush output chain iptables -t nat -F OUTPUT # local network iptables -t nat -A OUTPUT -p tcp --destination 192.168.0.0/16 -j ACCEPT iptables -t nat -A OUTPUT -p tcp --destination 195.37.0.0/22 -j ACCEPT # redirect outgoing, non-local traffic on port 80 to local, transparent squid iptables -t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to $TRANSSQUID # source nat (masquerading, tbd)
Squid-Konfiguration
die relevanten Stellen aus der $PREFIX/etc/squid.conf
http_port 3128 transparent cache_peer proxy.fh-brandenburg.de parent 3128 3130 no-query default # das sollte etwas eingeschraenkt werden http_access allow all # dieser Teil funktioniert nicht wie erwartet und wird jetzt durch iptables-Regeln erschlagen acl local-domain dstdomain .fh-brandenburg.de always_direct allow local-domain always_direct deny !local-domain never_direct deny local-domain never_direct allow !local-domain
HTTPS/FTP
Wider Erwarten funktioniert das nicht transparent, gleiches Problem also wie SSH.
SSH
offen
Was jetzt noch fehlt, ist SSH nach außen. Es steht ein Socks5-Server zur Verfügung, allerdings habe ich noch keinen transparenten Socks-Proxy gefunden.
wie wäre es denn damit:
http://weblog.christoph-probst.com/article.php/20061121233948297
- das wäre Socks über SSH, gesucht wurde damals SSH über Socks (und zwar, ohne dass die Clients umkonfiguriert werden müssen --MaD 09:46, 4. Apr. 2007 (CEST)