BSDForen.de  

Zurück   BSDForen.de > FreeBSD > FreeBSD - Netzwerk

Antwort
 
Themen-Optionen Thema bewerten Ansicht
Alt 19.10.2012, 10:03   #1
xcvb
BSD Frischfleisch
 
Registrierungsdatum: Feb 2007
Ort: Uelsen
Beiträge: 212
ipfw blockt icmp-reply - warum?

Hallo Leute,

vielleicht hab ich Tomaten auf den Augen, aber ich finde den Fehler nicht. Wie der Titel schon verrät blockt mein ipfw icmp-reply. Hier mal das Regelwerk:
Code:
# ipfw list 00100 allow ip from any to any via lo0 00200 check-state 00300 allow tcp from me to any established 00400 allow tcp from me to any setup keep-state 00500 allow udp from me to any keep-state 00600 allow tcp from table(1) to any dst-port 22 in setup keep-state 00700 allow tcp from 10.0.0.0/8 to 10.0.0.12 dst-port 2049 in setup keep-state 00800 allow udp from 10.0.0.0/8 to 10.0.0.12 dst-port 2049 in 00900 allow tcp from 10.0.0.0/8 to 10.0.0.12 dst-port 879 in 01000 allow udp from 10.0.0.0/8 to 10.0.0.12 dst-port 879 in 01100 allow tcp from 10.0.0.0/8 to 10.0.0.12 dst-port 111 in 01200 allow udp from 10.0.0.0/8 to 10.0.0.12 dst-port 111 in 01300 allow tcp from 10.0.0.0/8 to 10.0.0.12 dst-port 8118 in setup keep-state 01400 allow tcp from 10.0.0.0/8 to 10.0.0.12 dst-port 9050 in setup keep-state 01500 allow tcp from any to 10.0.0.81 dst-port 80 in setup limit src-addr 4 01600 allow tcp from any to 10.0.0.81 dst-port 443 in setup limit src-addr 4 01700 allow tcp from 10.0.0.0/8 to 10.0.0.82 dst-port 80 in setup keep-state 01800 allow tcp from 10.0.0.0/8 to 10.0.0.12 dst-port 9091 in setup keep-state 01900 allow tcp from any to 10.0.0.12 dst-port 51413 in 02000 allow udp from any to 10.0.0.12 dst-port 51413 in 02100 allow icmp from 10.0.0.0/8 to any icmptypes 0,3,4,8,11 02200 allow icmp from me to any keep-state 02300 unreach host-unknown log tcp from any to any 02400 deny log ip from any to any 65535 deny ip from any to any
Wenn ich einen Host pinge dann werden die Antworten von Regel 2400 geblockt. In 2200 hab ich ein keep-state, m. E. müsste dann doch eine State erstellt werden und auch die Antwortpakete müssten durch gehen.

Wenn ich Regel 2200 aber auf 550 setzte, dann klappt der Ping komplett.

???
xcvb ist offline   Mit Zitat antworten
Alt 19.10.2012, 11:38   #2
Lateralus
Registered User
 
Registrierungsdatum: Aug 2004
Beiträge: 31
Hi, hab wirklich keine Ahnung, aber nur mal so die Idee: Könnte es sein, dass Regel 02100 auf "me" zutrifft und daher keep-state (02200) nicht in Kraft tritt?
Lateralus ist offline   Mit Zitat antworten
Alt 19.10.2012, 11:56   #3
xcvb
BSD Frischfleisch
 
Registrierungsdatum: Feb 2007
Ort: Uelsen
Beiträge: 212
Natürlich! Du hast Recht. Danke Lateralus.
Wenn ich die Regel 2100 entferne klappt ping-request/reply.

Aber so ganz verstehe ich das immer noch nicht. Ein ping beginnt mit einen icmp-request. Der wird von Regel 2200 abgedeckt und sollte einen STATE erstellen. Wenn dann der icmp-reply reinkommt sollte doch zuerst der 200 check-state greifen, und somit durchgelassen werden.

Oder nicht?
xcvb ist offline   Mit Zitat antworten
Alt 19.10.2012, 14:17   #4
Lateralus
Registered User
 
Registrierungsdatum: Aug 2004
Beiträge: 31
Wie gesagt: Ich rekonstruiere nur eine innere Logik, ich habe keine Ahnung von ipfw (hab momentan nicht mal ein BSD installiert - schande auf mein Haupt).

Das ausgehende Paket muss als eines registriert werden, das zu einer Verbindung gehört, deren State erhalten werden soll.

Du schickst den Ping raus, Regel 02100 trifft zu -> Paket / "Verbindung" kommt in die Schublade "allow icmp from 10.0.0.0/8 to any icmptypes 0,3,4,8,11" (ohne keep-state). Jetzt kommt irgendein ICMP-Paket zurück, und die Firewall prüft, ob es in irgendeiner Schublade "keep-state" ist -> ist es aber nicht, also wird es abgelehnt. Welche Regel auch immer zuerst zutrifft, wird anscheinend angewendet. Trifft eine spätere auch zu wird diese trotzdem nicht angewendet:

Paket 01-OUT ----- 02100 ----> Schublade A
Schublade B (keep-state)

Paket 01-IN ----- 01-OUT ist in Schublade A ----> kein keep-state -----> 2400 -----> DENY

statt:
Paket 01-OUT ----- 02200 ---> Schublade B (keep-state)

Paket 01-IN ----- 01-OUT ist in Schublade B ----> keep-state -----> 00200 ----> ALLOW

Echt schöne Syntax hat ipfw muss ich sagen.

Geändert von Lateralus (19.10.2012 um 14:27 Uhr). Grund: Ergänzung
Lateralus ist offline   Mit Zitat antworten
Alt 19.10.2012, 15:04   #5
KobRheTilla
used register
 
Registrierungsdatum: Jan 2011
Beiträge: 261
Vielleicht hilft das weiter:

http://lists.freebsd.org/pipermail/f...ne/049286.html

ich weiß nicht, ob es da mittlerweile Updates gab, aber kurz zusammengefasst: keep-state geht bei ICMP nicht.

Rob
KobRheTilla ist offline   Mit Zitat antworten
Alt 19.10.2012, 15:51   #6
xcvb
BSD Frischfleisch
 
Registrierungsdatum: Feb 2007
Ort: Uelsen
Beiträge: 212
Das erklärt natürlich einiges. Danke Jungs!
xcvb ist offline   Mit Zitat antworten
Alt 19.10.2012, 16:20   #7
Lateralus
Registered User
 
Registrierungsdatum: Aug 2004
Beiträge: 31
Aber müsste das "icmp is stateless" nicht genauso für udp gelten? Ich hatte es mir eher so gedacht, dass ipfw intern eine Liste verwaltet, indem es sich irgendwelche Zahlen aus dem ip/icmp-Header merkt.

Wäre das zitierte das Problem, so sollte eine Beseitigung der Regel 02100 eigentlich nichts ändern, weil die Regel 02200 so oder so nicht funktionierte.
Lateralus ist offline   Mit Zitat antworten
Antwort


Dieses Thema betrachten zurzeit 1 Personen. (0 registrierte Benutzer und 1 Gäste)
 
Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus
Gehe zu

Ähnliche Themen
Thema Erstellt von Forum Antworten Letzter Beitrag
IPFW und NATD asg Howtos 38 21.03.2006 21:00
Frage ipfw2 + Konfig DMZ onegroup FreeBSD - Netzwerk 0 26.10.2004 08:51
natd routing nichtskoenner FreeBSD - Netzwerk 20 25.02.2004 15:50
ipfw probleme (permission denied) AndreasG FreeBSD - Netzwerk 3 17.03.2003 14:08
Router -Firewall Problem Andreas-iz FreeBSD - Netzwerk 30 01.03.2003 18:58


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:05 Uhr.


Powered by vBulletin (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.