Hi, ich verstehe das einfach nicht. Selbst die einfachste Variante des Firewalls funktioniert bei mir zu gut, es geht gar nix mehr. (ich meine die im Linux 2.4 Packet Filtering HOWTO, Punkt 5). :(
Ich kann weder nen ping aus führen, noch auf nen DNS server zugreifen oder gar http, mail usw ausführen, dabei habe ich doch fast alles erlaubt!? Die von Joerg Friedrich vorgeschlagene Variante führt auch zu keinem Logging, außer ich suche an den falschen Stellen (syslog, iptraf, kern.log). Ich weiß einfach nicht mehr weiter. Zur Zeit nutze ich folgendes Script: #!/bin/sh # Firewallscript # /etc/rcS.d/S98firewall echo "Starte Firewall... " # Nun müssen die Interfaces und IP - Nummern alle zugewiesen werden. EXTERNES_INTERFACE="eth0" # Module laden insmod ip_tables # Lösche alle Filter iptables -F INPUT iptables -F FORWARD iptables -F OUTPUT # Default Policy iptables -P INPUT DROP #input drop iptables -P FORWARD DROP #forward drop iptables -P OUTPUT DROP #output drop # LogRegeln, erstmal alles loggen, dann droppen iptables -F droplog iptables -N droplog iptables -A droplog -j LOG iptables -A droplog -j DROP # Anti spoofing Regeln iptables -A INPUT -s 127.0.0.1/255.0.0.0 -i ! lo -j droplog # Kette erstellen, die neue Verbindung blockt, es sei denn, sie kommen # von innen iptables -N block iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A block -m state --state NEW -i ! $EXTERNES_INTERFACE -j ACCEPT iptables -A block -j DROP # Kette erstellen, die ausgehenden Traffic erlaubt iptables -N allout iptables -A allout -i $EXTERNES_INTERFACE -j ACCEPT iptables -A allout -j DROP # Von INPUT und FORWARD Ketten zur Kette block springen iptables -A INPUT -j block iptables -A FORWARD -j block # Von OUTPUT Kette zur Kette allout springen iptables -A OUTPUT -j allout ------------------------------------------------------------- Das gibt folgende Ausgabe: debian:/home/fzzgrr# ./S98new Starte Firewall... Using /lib/modules/2.4.1/kernel/net/ipv4/netfilter/ip_tables.o iptables: No chain/target/match by that name Wo der Fehler liegt habe ich noch nicht herausgefunden. -------------------------------------------------------------- debian:/home/fzzgrr# iptables -L Chain INPUT (policy DROP) target prot opt source destination droplog all -- localnet/8 anywhere block all -- anywhere anywhere Chain FORWARD (policy DROP) target prot opt source destination block all -- anywhere anywhere Chain OUTPUT (policy DROP) target prot opt source destination allout all -- anywhere anywhere Chain allout (1 references) target prot opt source destination ACCEPT all -- anywhere anywhere DROP all -- anywhere anywhere Chain block (2 references) target prot opt source destination ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT all -- anywhere anywhere state NEW DROP all -- anywhere anywhere Chain droplog (1 references) target prot opt source destination LOG all -- anywhere anywhere LOG level warning DROP all -- anywhere anywhere Ich erlaube doch allen Eingehenden Traffic für alle Protocolle, sofern ich die Verbindung gestartet habe! Dann sollte doch auch ein ping bzw. eine DNS Anfrage erlaubt sein, ebenso wie z.B. fetchmail, kommt doch auch von innen. http doch ebenso??? Ach ja, drucken funzt auch nicht mehr! Kann mir da jemand weiterhelfen? Ich habe jedes zu findende HOWTO mindestens 3x gelesen... Gruß Uli