iptables - spezielle Regeln
iptables - spezielle Regeln
Hallo,
wie kann ich bei iptables eine Regel hinzufügen, die nur ping-anfragen von ip's aus deutschland zulässt?
wie kann ich eine regel hinzufügen, die für einen bestimmten port, den traffic auf 100kiloBYTE pro sekunde limitiert?
wie kann ich bei iptables eine Regel hinzufügen, die nur ping-anfragen von ip's aus deutschland zulässt?
wie kann ich eine regel hinzufügen, die für einen bestimmten port, den traffic auf 100kiloBYTE pro sekunde limitiert?
-
lord_pinhead
- Posts: 774
- Joined: 2004-04-26 15:57
Re: iptables - spezielle Regeln
Für Deutschland bräuchtest du die IP Ranges die die Provider und Hoster bekommen, und das sind dann verdammt viele Regeln.
Traffic Shaping ist das zauberwort das du suchst, allerdings würde ich das nicht direkt mit den Tables machen, sondern mit tc. Ein kurzeinstieg wäre der Wondershaper von lartc.org, allerdings erhöhen sich damit deine Reaktionszeiten um ein paar ms, für Game und Voip Server recht ungeeignet.
Traffic Shaping ist das zauberwort das du suchst, allerdings würde ich das nicht direkt mit den Tables machen, sondern mit tc. Ein kurzeinstieg wäre der Wondershaper von lartc.org, allerdings erhöhen sich damit deine Reaktionszeiten um ein paar ms, für Game und Voip Server recht ungeeignet.
Re: iptables - spezielle Regeln
Und gibts ein Programm, dass den Trafficverbrauch mitloggt und bei Ã?berschreitung eines Grenzwertes den Server ausschaltet oder ne E-Mail versendet?
Re: iptables - spezielle Regeln
Das mit der Email läßt sich z.B. mit IAM realisieren. Daz gibt es hier im Forum ein Script.
Gruß Christian
BofH excuses: YOU HAVE AN I/O ERROR -> Incompetent Operator error
BofH excuses: YOU HAVE AN I/O ERROR -> Incompetent Operator error
Re: iptables - spezielle Regeln
kann Dir europa fuer iptables anbieten, ich erlaube z.b. auch nur von da FTP & POP3:cRoC wrote:Hallo,
wie kann ich bei iptables eine Regel hinzufügen, die nur ping-anfragen von ip's aus deutschland zulässt?
-s 145.0.0.0/8
-s 62.0.0.0/8
-s 80.0.0.0/5
-s 88.0.0.0/5
-s 193.0.0.0/7
-s 195.0.0.0/8
-s 212.0.0.0/7
-s 217.0.0.0/8
wenn man so paranoid ist muss man aber auch ab und zu nachschauen, ob neue netze fuer europa vergeben werden (RIPE NCC):
http://www.iana.org/assignments/ipv4-address-space
-
lord_pinhead
- Posts: 774
- Joined: 2004-04-26 15:57
Re: iptables - spezielle Regeln
Was ja auch nur über den Daumen gepeilt 134 Millionen IP´s ergibt und damit mögliche Angreifer :roll:buddaaa wrote: kann Dir europa fuer iptables anbieten, ich erlaube z.b. auch nur von da FTP & POP3:
-s 145.0.0.0/8
-s 62.0.0.0/8
-s 80.0.0.0/5
-s 88.0.0.0/5
-s 193.0.0.0/7
-s 195.0.0.0/8
-s 212.0.0.0/7
-s 217.0.0.0/8
wenn man so paranoid ist muss man aber auch ab und zu nachschauen, ob neue netze fuer europa vergeben werden (RIPE NCC):
http://www.iana.org/assignments/ipv4-address-space
Re: iptables - spezielle Regeln
ja, aber es sperrt 324 millionen moegliche angreifer aus.Lord_Pinhead wrote:Was ja auch nur über den Daumen gepeilt 134 Millionen IP´s ergibt und damit mögliche Angreifer :roll:buddaaa wrote: kann Dir europa fuer iptables anbieten, ich erlaube z.b. auch nur von da FTP & POP3:
-s 145.0.0.0/8
-s 62.0.0.0/8
-s 80.0.0.0/5
-s 88.0.0.0/5
-s 193.0.0.0/7
-s 195.0.0.0/8
-s 212.0.0.0/7
-s 217.0.0.0/8
wenn man so paranoid ist muss man aber auch ab und zu nachschauen, ob neue netze fuer europa vergeben werden (RIPE NCC):
http://www.iana.org/assignments/ipv4-address-space
-
lord_pinhead
- Posts: 774
- Joined: 2004-04-26 15:57
Re: iptables - spezielle Regeln
Weißt du was einfacher ist? Portknocking nutzen und Dienste anständig Konfigurieren, dann sind die mir Chinesen wirklich egal ;) Und ein primitiver Ping kann nichts ausrichten, den wenn ein DDoS kommt ist eh der Router weg. Wer sich jetzt vor ICMP Tunneln fürchtet, der soll einfach mal die Kerneldoku ansehen oder kurz in /proc/sys/net/ipv4/ nachsehen, dort gibt es ein paar einfache einstellungen.
Btw.: Clients nutzen ICMP Echo um die Packetgröße festzulegen (durch das Echo Reply das dann die Packetgröße hat) und damit auch die Fragmentierung, nicht gerade intelligent das zu deaktivieren finde ich.
Btw.: Clients nutzen ICMP Echo um die Packetgröße festzulegen (durch das Echo Reply das dann die Packetgröße hat) und damit auch die Fragmentierung, nicht gerade intelligent das zu deaktivieren finde ich.
Re: iptables - spezielle Regeln
nope, icmp-echo ist unabhaengig davon. die verbindung beginnt ganz normal mit TCP oder UDP und wenn dann eine station auf dem weg (oder der server) ein paket als zu gross empfindet schickt er ein ICMP-destination-unreachable mit "fragmentation needed" zurueck, und das sollte nicht geblockt werden. also ausgehend icmp type 3 erlauben, type 0 und 8 (echo request, echo reply) koennen ruhig verboten werden.Btw.: Clients nutzen ICMP Echo um die Packetgröße festzulegen (durch das Echo Reply das dann die Packetgröße hat)
-
lord_pinhead
- Posts: 774
- Joined: 2004-04-26 15:57
Re: iptables - spezielle Regeln
Bist du dir so sicher ;) Clients schickt oft kurzes icmp echo und bekommt antwort, der Ping hat dann auch gleich die Packetgröße inbegriffen.
Meistens fängt das sowisso mit der Standardgröße 1492 an, wo jeder in seinen DSL einstellungen hat. Server hat allerdings eine MTU von 1500, weswegen ich sie auf 1472 runtergestellt habe um Packetfragmentierung zu verhindern.
Ausserdem, andere Frage: Was bringt dir bitte schön ein Sperren des Pings? Bots suchen sowisso über TCP Scanner und pingen dich gar nicht an ;) Sperren von request und reply ist an sich totaler schwachsinn, sobald du das machst weiß der Angreifer das eine Firewall läuft und das er andere Methoden wählen muss. Bist du auch der Meinung das man in den tables lieber -j DROP verwendet ;)
Meistens fängt das sowisso mit der Standardgröße 1492 an, wo jeder in seinen DSL einstellungen hat. Server hat allerdings eine MTU von 1500, weswegen ich sie auf 1472 runtergestellt habe um Packetfragmentierung zu verhindern.
Ausserdem, andere Frage: Was bringt dir bitte schön ein Sperren des Pings? Bots suchen sowisso über TCP Scanner und pingen dich gar nicht an ;) Sperren von request und reply ist an sich totaler schwachsinn, sobald du das machst weiß der Angreifer das eine Firewall läuft und das er andere Methoden wählen muss. Bist du auch der Meinung das man in den tables lieber -j DROP verwendet ;)
Re: iptables - spezielle Regeln
jap, da bin ich mir sicher weil ich schon oft genug verbindungen mit tcpdump angeschaut hab und irgendwelche ICMP-geschichten kommen hoechstens im fehlerfall. kannst ja mal selber auf Deinem rootserver gucken:Lord_Pinhead wrote:Bist du dir so sicher ;) Clients schickt oft kurzes icmp echo und bekommt antwort, der Ping hat dann auch gleich die Packetgröße inbegriffen.
Code: Select all
tcpdump -i eth0 icmp -n -pschon klar, hat aber nix mit icmp-echo zu tun.Meistens fängt das sowisso mit der Standardgröße 1492 an, wo jeder in seinen DSL einstellungen hat. Server hat allerdings eine MTU von 1500, weswegen ich sie auf 1472 runtergestellt habe um Packetfragmentierung zu verhindern.
oh gott, Du hast auch den deutschen security by obscurity artikel in wkipedia gelesen und geglaubt.Ausserdem, andere Frage: Was bringt dir bitte schön ein Sperren des Pings? Bots suchen sowisso über TCP Scanner und pingen dich gar nicht an ;) Sperren von request und reply ist an sich totaler schwachsinn, sobald du das machst weiß der Angreifer das eine Firewall läuft und das er andere Methoden wählen muss. Bist du auch der Meinung das man in den tables lieber -j DROP verwendet ;)
also:
- es gibt mehr als eine moeglichkeit was es sein kann, wenn eine IP nicht auf einen ping antwortet, die schlussfolgerung "host firewall" stimmt nicht immer. es kann auch eine firewall fuer das ganze netz, blackhole routing, routing fehler, packet loss, einseitiges NAT oder sonstwas sein.
- ausserdem schicken nicht alle router ein "destination unreachable"
- daher kann das skript-kind nicht davon ausgehen, des "keine antwort von IP a.b.c.d" bedeutet, das diese IP benutzt wird wie es in dem lustigen wikipedia-artikel steht.
- also muss er alle ports abscannen, das ist fuer ihn langsamer ohne TCP-RST weil er mit einem timeout arbeiten muss und fehleranfaelliger weil "packet loss" gleich "geschlossener port".
- ausserdem hinterlaesst er eine riesige spur in den logfiles, jedes IDS/IPS springt an und manche leute benutzen ja nette tools die portscanner blocken (wuerde ich nicht tun, aber es gibt so leute).
so, und jetzt nenn mir einen sinnvollen grund auf einen ping zu antworten ? selbst http://www.ebay.com machts nicht, aber die ham ja keine ahnung vom internet und so sachen ;)
-
lord_pinhead
- Posts: 774
- Joined: 2004-04-26 15:57
Re: iptables - spezielle Regeln
Ich erinnere mich irgendwie dran das bestimmte Clients den Server wegen der Fragmentierung kurz anpingen, wie z.b. mein News Clientbuddaaa wrote: jap, da bin ich mir sicher weil ich schon oft genug verbindungen mit tcpdump angeschaut hab und irgendwelche ICMP-geschichten kommen hoechstens im fehlerfall. kannst ja mal selber auf Deinem rootserver gucken:
... muesste ja sonst alle nase lang wenn jemand ne webseite anschaut oder spam abliefert was kommen.Code: Select all
tcpdump -i eth0 icmp -n -p
Code: Select all
13:07:34.403300 IP 84.181.247.x > 213.x.x.x: icmp
13:07:34.403368 IP 213.x.x.x > 84.181.247.x: ICMP echo reply, id 768, seq 1536, length 1448
Weil, wie du siehst, im echo reply die MTU steht, welche die Gegenseite nutzen soll, und damit braucht der Client nicht anfangen rumzutesten.schon klar, hat aber nix mit icmp-echo zu tun.
Ein IDS/IPS bringt ungefähr soviel wie gar nix hoch drei wenn jemand es richtig macht, es ist einfach nur eine Spielerei für den Honeypod, mehr nicht. Jedes IDS/IPS kann man durch ein einfachen Trick überlisten, und zwar das codieren von Shellcode, in einer Phrack war das mal geschrieben wenn ich mich recht erinnere. Ich hab auf keinen meiner Produktiv Systeme ein IDS laufen und weiß trotzdem was vorgeht.oh gott, Du hast auch den deutschen security by obscurity artikel in wkipedia gelesen und geglaubt.
also:
- es gibt mehr als eine moeglichkeit was es sein kann, wenn eine IP nicht auf einen ping antwortet, die schlussfolgerung "host firewall" stimmt nicht immer. es kann auch eine firewall fuer das ganze netz, blackhole routing, routing fehler, packet loss, einseitiges NAT oder sonstwas sein.
- ausserdem schicken nicht alle router ein "destination unreachable"
- daher kann das skript-kind nicht davon ausgehen, des "keine antwort von IP a.b.c.d" bedeutet, das diese IP benutzt wird wie es in dem lustigen wikipedia-artikel steht.
- also muss er alle ports abscannen, das ist fuer ihn langsamer ohne TCP-RST weil er mit einem timeout arbeiten muss und fehleranfaelliger weil "packet loss" gleich "geschlossener port".
- ausserdem hinterlaesst er eine riesige spur in den logfiles, jedes IDS/IPS springt an und manche leute benutzen ja nette tools die portscanner blocken (wuerde ich nicht tun, aber es gibt so leute).
Mich interessieren keine Portscanns von Kindern, mir ist es auch wurst ob mich einer anpingt. Ob ein Scriptkiddie jetzt "nmap -sSUV -p 1-65525 HOST" oder "nmap -sSUV -p 1-65525 -P0 HOST" eintippt ist egal, wer es schneller haben will der nimmt scanrand. Das ich ein Ping blocke bringt in beiden Fällen überhaupt nichts, ausser das ich bei ein Fehler, nicht feststellen kann ob der komplette Server abgestürtzt ist oder nicht, ergo muss ich mich irgendwo einloggen und nachsehen. Und bevor du jetzt sagst das ich durch ein Pingsweep ein ganzen Netzbereich abscannen kann, das kann ich mit ein Scan auf 3 verschiedene Ports fast genauso schnell. Was bringt es mir, ausser das ich jetzt nicht mehr einfach feststellen kann ob die Kiste vom Netz ist, icmp echo zu blockieren?
Die bringen es nichtmal fertig Ihre Datenbank richtig abzugleichen, des öfteren findet man Auktionen ganz plötzlich weil die mal wieder nicht abgeglichen haben. Sag jetzt nicht die wissen genau was sie da machen ;) Große Seiten lassen Ping zu, ich frag mich mal warum :). Und bei Ebay tippe ich sowisso auf einen Loadbalancer bzw. Proxy der ausser Port 80 und 443 nichts zulässt, vielleicht ein einstellungsfehler ;) Oder seh ich das im Traceroute jetzt richtig das Ebay da gar kein Einluss drauf hat :)so, und jetzt nenn mir einen sinnvollen grund auf einen ping zu antworten ? selbst http://www.ebay.com machts nicht, aber die ham ja keine ahnung vom internet und so sachen ;)
Re: iptables - spezielle Regeln
was ist denn Dein newsclient ? feststellen der max MTU halte ich fuer eine betriebssystem-aufgabe, wenn das stimmt ist das eh ein komisches stueck software.Lord_Pinhead wrote: Ich erinnere mich irgendwie dran das bestimmte Clients den Server wegen der Fragmentierung kurz anpingen, wie z.b. mein News Client
ja und, nur weil man eine sorte angriff mit etwas codierung schwieriger zu erkennen macht sind doch IDSe nicht per se nutzlos. ISS verkauft seine buechsen immer noch, trotz dieses artikels.Ein IDS/IPS bringt ungefähr soviel wie gar nix hoch drei wenn jemand es richtig macht, es ist einfach nur eine Spielerei für den Honeypod, mehr nicht. Jedes IDS/IPS kann man durch ein einfachen Trick überlisten, und zwar das codieren von Shellcode, in einer Phrack war das mal geschrieben wenn ich mich recht erinnere.
ich hab auch keins laufen weil ich mehr angst vor einem buffer overflow in snort habe als das ich glaube, das es mir was bringt mit meinem ueberschaubaren setup. aber ich geb mich nicht der illusion hin, das ich einen guten angriff auf meine kiste mitkriegen wuerde.Ich hab auf keinen meiner Produktiv Systeme ein IDS laufen und weiß trotzdem was vorgeht.
Du kannst es ja genauso schlau machen wie die boesen und "nmap -p 21,25,80" benutzen.Das ich ein Ping blocke bringt in beiden Fällen überhaupt nichts, ausser das ich bei ein Fehler, nicht feststellen kann ob der komplette Server abgestürtzt ist oder nicht, ergo muss ich mich irgendwo einloggen und nachsehen.
ich hab z.b. ne extra-IP mit nur 2 nicht-standard-high-ports offen. die findet niemand solange er nicht alle ports abscannt obwohl er keine antwort auf irgendwas kriegt und die muehe machen sich nur die wenigsten.Und bevor du jetzt sagst das ich durch ein Pingsweep ein ganzen Netzbereich abscannen kann, das kann ich mit ein Scan auf 3 verschiedene Ports fast genauso schnell. Was bringt es mir, ausser das ich jetzt nicht mehr einfach feststellen kann ob die Kiste vom Netz ist, icmp echo zu blockieren?
jedes halbwegs schlau skript-kind scannt ja wohl das ganze jahr in der gegend rum und sammelt sich eine datenbank mit IPs, OS, offenen ports, dienst und version. wenn es dann den 0-day-exploit kriegt kann es sofort Deine kiste hacken bevor der patch draussen ist, weil Du mit allen daten in der datenbank stehst, ich nicht.
guck mal, es gibt noch mehr die ohne ping leben koennen:Die bringen es nichtmal fertig Ihre Datenbank richtig abzugleichen, des öfteren findet man Auktionen ganz plötzlich weil die mal wieder nicht abgeglichen haben. Sag jetzt nicht die wissen genau was sie da machen ;) Große Seiten lassen Ping zu, ich frag mich mal warum :). Und bei Ebay tippe ich sowisso auf einen Loadbalancer bzw. Proxy der ausser Port 80 und 443 nichts zulässt, vielleicht ein einstellungsfehler ;) Oder seh ich das im Traceroute jetzt richtig das Ebay da gar kein Einluss drauf hat :)
http://www.cnn.com
http://www.linux.com
http://www.microsoft.com
http://www.hp.com
http://www.sun.com
sag ihnen bitte bescheid das sie da einen echt grossen fehler machen ;)