[size=+2]UPDATE : Bitte meinen letzten Post lesen ![/size]
Also mein IPFW-Ruleset sieht momentan so aus :
Das Ruleset funktioniert so auch ganz problemfrei - alles was ich an Programmen wie ICQ oder IRC laufen lasse funktioniert einwandfrei, auch zocken funktioniert ohne Probleme, aber manchmal scheint überhaupt nichts zu funktionieren.
Wenn ich mein Windows-Rechner hochgefahren hab, sendet Samurize z.B. Anfragen ins Netz bezüglich Wettervorschau, Anzahl ungelesener eMails und aktueller externer IP. Manchmal funktioniert das einwandfrei, manchmal scheint Samurize keine Netz-Verbindung zu bekommen. Ein Ping und Surfen funktioniert aber problemlos und ich finde ums Verrecken nicht heraus, warum die Firewall manchmal erst nen kleinen "Anstoss" per Hand braucht, bevor sie so die Pakete verwaltet, wie sie soll ...
Habe nun nach einigem Testen herausgefunden, dass die Windows 98-Rechner im Netz z.b. die ersten fünf Minuten ausser PING garnichts machen können - Surfen geht nicht, FTP nicht, Mails abrufen auch nicht, pingen können sie aber alles und jeden, woraus ich folgere, dass DNS zu funktionieren scheint, aber irgendwelche anderen Ports scheinen wohl stress zu machen. Nach fünf bis zehn Minuten funktioniert dann aber alles und ich komm ums Verrecken nicht drauf, woran das liegen könnte ...
Zumal ich mich eh wundere, warum DNS-Anfragen nicht von der Stateful-Firewall erkannt werden, also eine auf Port 53 aufgebaute Anfrage nicht beantwortet werden kann und ich dafür extra Port 53-Antworten erlauben muss.
Also habe ich mal die Closed-Ports-Regel komplett auskommentiert und siehe da - alles funktioniert sofort. Sobald ich aber wieder die Ports abschotte, brauchen alle Windows-Rechner nach dem Neustart ne halbe Ewigkeit, um überhaupt irgendetwas anderes ausser Ping zu nutzen und irgendwie ist das ja nicht Sinn der Sache, die Ports wieder alle offen zu haben...
Desweiteren sollte ja die Stateful-Firewall automatisch Verbindungen rauslassen, die meine Windows-Rechner ins Netz senden, nur komischerweise scheint dies nicht zu funktionieren ...
PS : Ich bin mir des inflationären Gebrauchs des Wortes "Verrecken" durchaus bewusst, aber ich raufe mir hier seit ner Woche die Haare und komm nich auf eine probate Lösung !
Also mein IPFW-Ruleset sieht momentan so aus :
Code:
#!/bin/sh
# Keine Ausgaben
fwcmd="/sbin/ipfw -q"
# Bisherige Rules saeubern
${fwcmd} -f flush
#${fwcmd} pipe flush
#${fwcmd} queue flush
# Variablen setzen
#natd_interface="rl0"
natd_interface="tun0"
lan_interface="sis0"
dns_servers="194.25.2.129 194.25.2.130 194.25.2.131 194.25.2.132 192.25.2.133 \
194.25.0.69 194.25.0.70 194.25.0.61 194.25.0.62 194.25.0.53 194.25.0.54 \
217.237.150.225 217.237.149.161 217.237.149.225"
#############################################
# Workaround for timeout on first five minutes
#############################################
closed_ports="22,135-140,445,901,1243,1720,1999,2049,5000,6000,6776,7789,12345,20034,31337,54320,54321"
#closed_ports="0-1056,1243,1720,1999,2049,5000,6000,6776,7789,12345,20034,31337,54320,54321"
#############################################
## Traffic Shaping ##
#############################################
# One-pass disabled due to firewall-management
# ${fwcmd} enable one_pass
# Upload-pipe for 22 kbyte/s
${fwcmd} pipe 1 config bw 192Kbit/s
# High-Priority queue for ACK-Packets
${fwcmd} queue 1 config pipe 1 weight 100 gred 0.05/35/45/0.4
# Medium-Priority queue for DNS/Gaming/SSH
${fwcmd} queue 2 config pipe 1 weight 80 gred 0.05/35/45/0.4
# Low-Priority for the dirty rest ;)
${fwcmd} queue 3 config pipe 1 weight 40 gred 0.05/35/45/0.4
# Outgoing ACK packets go thru the hp-queue
${fwcmd} 00100 add queue 1 tcp from any to any out via ${natd_interface} tcpflags ack iplen 0-80
${fwcmd} 00110 add skipto 00200 tcp from any to any out via ${natd_interface} tcpflags ack iplen 0-80
# Outgoing DNS/Gaming/SSH traffic go thru the mp-queue
${fwcmd} 00140 add queue 2 udp from any to any out via ${natd_interface}
${fwcmd} 00150 add skipto 00200 udp from any to any out via ${natd_interface}
# The dirty rest goes thru the lp-queue
${fwcmd} 00160 add queue 3 all from any to any out via ${natd_interface}
${fwcmd} 00170 add skipto 00200 all from any to any out via ${natd_interface}
#############################################
## Traffic Shaping ##
#############################################
# Localhost-Traffic erlauben
${fwcmd} add 00200 allow ip from any to any via lo0
# Network-Adress-Translation ermoeglichen
# ${fwcmd} add divert natd all from any to any via ${natd_interface}
# Stateful-Firewall verwenden
${fwcmd} add check-state
${fwcmd} add allow tcp from any to any out setup keep-state
${fwcmd} add allow ip from any to any out keep-state
# Fragmentierte Pakete verwerfen
${fwcmd} add deny all from any to any in via ${natd_interface} frag
# Anti-Spoofing Rules
${fwcmd} add unreach host-unknown log ip from 10.0.0.0/8 to any in via ${natd_interface}
${fwcmd} add unreach host-unknown log ip from 172.16.0.0/12 to any in via ${natd_interface}
${fwcmd} add unreach host-unknown log ip from 192.68.0.0/16 to any in via ${natd_interface}
# ICMP Types 3 und 8 mal mitprotokollieren
${fwcmd} add allow log icmp from any to any in via ${natd_interface} icmptype 3
${fwcmd} add allow log icmp from any to any in via ${natd_interface} icmptype 8
# Allen DNS-Servern (auch Backup-Servern) Antwortpakete erlauben
for i in ${dns_servers}
do
${fwcmd} add allow ip from $i 53 to any in via ${natd_interface}
done
# Sonstige Anfragen auf den ersten 1056 Ports ohne vorigen Request abweisen
${fwcmd} add unreach host-unknown all from any to any ${closed_ports} in via ${natd_interface}
# Alles erlauben
${fwcmd} add allow all from any to any
Wenn ich mein Windows-Rechner hochgefahren hab, sendet Samurize z.B. Anfragen ins Netz bezüglich Wettervorschau, Anzahl ungelesener eMails und aktueller externer IP. Manchmal funktioniert das einwandfrei, manchmal scheint Samurize keine Netz-Verbindung zu bekommen. Ein Ping und Surfen funktioniert aber problemlos und ich finde ums Verrecken nicht heraus, warum die Firewall manchmal erst nen kleinen "Anstoss" per Hand braucht, bevor sie so die Pakete verwaltet, wie sie soll ...
Habe nun nach einigem Testen herausgefunden, dass die Windows 98-Rechner im Netz z.b. die ersten fünf Minuten ausser PING garnichts machen können - Surfen geht nicht, FTP nicht, Mails abrufen auch nicht, pingen können sie aber alles und jeden, woraus ich folgere, dass DNS zu funktionieren scheint, aber irgendwelche anderen Ports scheinen wohl stress zu machen. Nach fünf bis zehn Minuten funktioniert dann aber alles und ich komm ums Verrecken nicht drauf, woran das liegen könnte ...
Zumal ich mich eh wundere, warum DNS-Anfragen nicht von der Stateful-Firewall erkannt werden, also eine auf Port 53 aufgebaute Anfrage nicht beantwortet werden kann und ich dafür extra Port 53-Antworten erlauben muss.
Also habe ich mal die Closed-Ports-Regel komplett auskommentiert und siehe da - alles funktioniert sofort. Sobald ich aber wieder die Ports abschotte, brauchen alle Windows-Rechner nach dem Neustart ne halbe Ewigkeit, um überhaupt irgendetwas anderes ausser Ping zu nutzen und irgendwie ist das ja nicht Sinn der Sache, die Ports wieder alle offen zu haben...
Desweiteren sollte ja die Stateful-Firewall automatisch Verbindungen rauslassen, die meine Windows-Rechner ins Netz senden, nur komischerweise scheint dies nicht zu funktionieren ...
PS : Ich bin mir des inflationären Gebrauchs des Wortes "Verrecken" durchaus bewusst, aber ich raufe mir hier seit ner Woche die Haare und komm nich auf eine probate Lösung !
Last edited:

