Hallo, ich habe auf meinem Router Squid / SquidGaurd und privoxy laufen. Mit dem einem will ich Domain filtern und mit dem anderen Werbung. Wenn ich in das Internet gehe, geht der Verkehr erst über squid und dann über privoxy. Die squid.conf habe ich folgende Einträge: cache_prrt localhost parent 8180 no-query acl ftp proto FTP alawys_direct allow ftp never_direct allo all Der Browser ist auf den SquidProxy 3128 eingestellt. Privoxy ist auf listen_addess 127.0.0.1:8180 eingestellt. Dazu habe ich folgendes Firewall Skript aufgebaut "siehe unten" Ohne diese Skript läuft das Ganze ohne Probleme. Nur wenn ich diese Skript starte geht nichts. Was muss ich an der HTTP Einstellung verändern. Ich habe es schon mit diversen anderen Einstellungen wie mit den folgenden probiert. Testeinstellungen: # ---------------------------------------------------------- # HTTP #iptables -t nat -A PREROUTING -i eth0 -p tcp --dport http \ # -j DNAT --to 192.168.99.100:3128 #iptables -A OUTPUT -j ACCEPT -o $EXT -p tcp --dport http --sport \ # $p_high -m state --state NEW,ESTABLISHED # #iptables -A INPUT -j ACCEPT -i $EXT -p tcp --dport $p_high --sport \ # http -m state --state NEW,ESTABLISHED # $IPTABLES -A PREROUTING -i $INT -p tcp --dport $p_high -j REDIRECT --to-port 3128 #$IPTABLES -A FORWARD -i $INT -o $EXT -m state \ # --state NEW,ESTABLISHED,RELATED \ # -p TCP --sport $p_high --dport 3128 \ # -j ACCEPT #$IPTABLES -A FORWARD -i $EXT -o $INT -m state \ # --state NEW,ESTABLISHED,RELATED \ # -p TCP --sport 3128 --dport $p_high \ # -j ACCEPT $IPTABLES -A FORWARD -o $EXT -m state --state New \ -p TCP --sport $p_high --dport http \ -j ACCEPT # ---------------------------------------------------------- FirewallSkript #!/bin/tcsh # Firewall-Skript für gate # ========================================================== # PART I: Variablen # ========================================================== set IPTABLES = /usr/sbin/iptables # ---------------------------------------------------------- # special ports set p_high = 1024:65535 # unprivileged ports set p_ssh = 500:1023 # common ssh source ports # ---------------------------------------------------------- # interfaces set EXT = ippp0 set INT = eth0 set IF = ( $EXT $INT ) # ---------------------------------------------------------- # ip hosts set NS = ( 193.101.111.10 193.101.111.20 ) set mail = 192.76.144.56 # uumail.de.uu.net set loghost = 192.168.1.9 # syslog purposes set INTERN = 192.168.1.0/255.255.255.0 # example set FRIENDs = 192.0.84.0/255.255.255.0 # ========================================================== # PART II: Grundkonfiguration: absichern # ========================================================== # dynamische Kernelparameter setzen echo "0" > /proc/sys/net/ipv4/ip_forward # erstmal abschalten echo "1" > /proc/sys/net/ipv4/tcp_syncookies echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses echo "5" > /proc/sys/net/ipv4/icmp_destunreach_rate echo "5" > /proc/sys/net/ipv4/icmp_echoreply_rate echo "5" > /proc/sys/net/ipv4/icmp_paramprob_rate echo "10" > /proc/sys/net/ipv4/icmp_timeexceed_rate foreach if ( $IF ) echo "1" > /proc/sys/net/ipv4/conf/$if/rp_filter echo "0" > /proc/sys/net/ipv4/conf/$if/accept_redirects echo "0" > /proc/sys/net/ipv4/conf/$if/accept_source_route echo "0" > /proc/sys/net/ipv4/conf/$if/bootp_relay echo "1" > /proc/sys/net/ipv4/conf/$if/log_martians end # ---------------------------------------------------------- # Default Policy und flush $IPTABLES -P INPUT DROP $IPTABLES -P FORWARD DROP $IPTABLES -P OUTPUT DROP $IPTABLES -F # flush aller chains (Tabelle filter) $IPTABLES -t nat -F # flush aller chains (Tabelle nat) $IPTABLES -X # delete all userdefined chains # (Tabelle filter) # ---------------------------------------------------------- # lokale Prozesse $IPTABLES -A OUTPUT -o lo -j ACCEPT $IPTABLES -A INPUT -i lo -j ACCEPT # ---------------------------------------------------------- # ssh fuer Fernwartung $IPTABLES -A INPUT -i $INT -s $INTERN \ -p TCP --sport $p_ssh --dport ssh \ -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A OUTPUT -o $INT -d $INTERN \ -p TCP --dport $p_ssh --sport ssh \ -m state --state ESTABLISHED,RELATED -j ACCEPT # ========================================================== # Userdefinierte Regelketten # ========================================================== # ---------------------------------------------------------- # DROP & LOG Chain $IPTABLES -N my_drop $IPTABLES -A my_drop -p ICMP -j LOG --log-prefix "DROP-ICMP " $IPTABLES -A my_drop -p UDP -j LOG --log-prefix "DROP-UDP " $IPTABLES -A my_drop -p TCP -j LOG --log-prefix "DROP-TCP " $IPTABLES -A my_drop -j DROP # ========================================================== # PART IV: Masquerading, generell bestehende Verbindungen # ========================================================== # ---------------------------------------------------------- # MASQUERADING $IPTABLES -t nat -A POSTROUTING -o $EXT -j MASQUERADE echo "1" > /proc/sys/net/ipv4/ip_forward # wieder einschalten echo "1" > /proc/sys/net/ipv4/ip_dynaddr # ---------------------------------------------------------- # ausgehende Pakete bei bereits aufgebauter Verbindung $IPTABLES -A OUTPUT \ -m state --state ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A FORWARD -i $INT -o $EXT \ -m state --state ESTABLISHED,RELATED -j ACCEPT # Rückkanal: eingehende Pakete zu einer bestehenden Verbindung $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A INPUT -m state --state NEW,INVALID -j my_drop $IPTABLES -A FORWARD -i $EXT -o $INT \ -m state --state ESTABLISHED,RELATED -j ACCEPT $IPTABLES -A FORWARD -i $EXT -o $INT \ -m state --state NEW,INVALID -j my_drop # ========================================================== # PART V: Filterregeln für lokale Dienste # ========================================================== # ---------------------------------------------------------- # ICMP $IPTABLES -A OUTPUT -p ICMP --icmp-type echo-request -j ACCEPT # ---------------------------------------------------------- # SYSLOG $IPTABLES -A OUTPUT -o $INT -m state --state NEW \ -p UDP --sport syslog -d $loghost --dport syslog \ -j ACCEPT # ========================================================== # PART VI: Filterregeln für Forwarding # ========================================================== # ---------------------------------------------------------- # ICMP $IPTABLES -A FORWARD -o $EXT -p ICMP --icmp-type echo-request \ -j ACCEPT # ---------------------------------------------------------- # DNS foreach ns ( $NS ) $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p UDP --sport $p_high -d $ns --dport domain \ -j ACCEPT $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_high -d $ns --dport domain \ -j ACCEPT end # ---------------------------------------------------------- # SMTP, POP3 $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_high -d $mail --dport smtp \ -j ACCEPT $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_high -d $mail --dport pop3 \ -j ACCEPT # ---------------------------------------------------------- # HTTP $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_high --dport http \ -j ACCEPT # ---------------------------------------------------------- # HTTP via SSL $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_high --dport https \ -j ACCEPT # ---------------------------------------------------------- # ftp, out, control connection $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_high --dport ftp \ -j ACCEPT # ftp, out, passive data connection $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_high --dport $p_high \ -j ACCEPT # ---------------------------------------------------------- # SSH $IPTABLES -A FORWARD -o $EXT -m state --state NEW \ -p TCP --sport $p_ssh --dport ssh \ -d $FRIENDs -j ACCEPT # ---------------------------------------------------------- # Ausputzer: Rest sperren, loggen $IPTABLES -A INPUT -j my_drop $IPTABLES -A FORWARD -j my_drop $IPTABLES -A OUTPUT -j my_drop Danke Jochen