ADMIN-Tipp: Unsichtbar für Ping

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

In manchen Fällen ist es sinnvoll, die Ping-Antworten eines Rechners im Internet einzuschränken. Dieser ADMIN-Tipp verrät warum und wie.

Ping ist nützlich, manchmal allerdings für die Falschen: Auch Hacker können davon profitieren, auf so einfache Weise zu ermitteln, hinter welcher IP-Adresse sich aktive Systeme verbergen. Außerdem erlaubt die ICMP-Antwort auf einen Ping-Request Rückschlüsse auf das antwortende Betriebssystem, das manche Felder wie TTL oder Window Size auf charakteristische Weise füllt. Und schließlich kann man durch eine Überflutung mit ICMP-Requests auch zumindest das Netzwerkinterface lahmlegen. Daher mag es in manchen Fällen angezeigt sein, auf Ping-Anfragen gar nicht zu reagieren. Unter Linux bekommt man das am einfachsten als Root-User mit dem Befehl "sysctl" hin, mit dem man Kernel-Parameter zur Laufzeit ändern kann:

sysctl -w net.ipv4.icmp_echo_ignore_all=1

Danach ignoriert der Linux-Rechner, auf dem dieses Kommando lief, alle Ping-Anfragen. Überlegt man es sich später anders oder möchte Ping auch nur temporär wieder einschalten, hilft:

sysctl -w net.ipv4.icmp_echo_ignore_all=0

Wer Ping-Antworten prinzipiell erlauben möchte, sich aber trotzdem gegen das Ping-Flooding schützen will, der kann die Antwortrate begrenzen:

sysctl -w net.ipv4.icmp_echoreply_rate=10

Auf diese Weise wird eine Überlastung des Servers vermieden, ohne dass man sich ganz und gar von Ping verabschieden muss.

13.08.2012
IP , Linux

Ähnliche Artikel

Comments

Keine Antwort ist auch eine Antwort

 > Auch Hacker können davon profitieren, auf so einfache Weise zu
ermitteln, hinter welcher IP-Adresse sich aktive Systeme verbergen.
Den ping schaltet auch diverses Schlangenöl (Personal Firewalls) ab und
nenne das dann stealth modus. In der Falschen Annahme: Wenn ich auf
einen ping keine Antwort bekomme, dann ist da auch nichts.
Falsch:
Bei eingeschaltetem ping sieht die Antwort ganz normal aus: Ich bekomme
eine Reply.
Wenn das Ziel aus ist, dann bekomme ich vom letzten Router vor dem Ziel
ein "Destination Host Unreachable".
Ist ICMP einfach abgeschaltet, dann bekomme ich nichts zurück. Der
letzte Router weiß ja, das das Ziel ansprechbar ist und stellt die
Pakete zu. Ich bekomme lediglich keine Antwort zurück.
ICMP abzuschalten schützt mich also weder vor Endeckung: Keine Antwort
ist auch eine Antwort, noch vor einem ICMP flood, da der Router die
Pakte zustellt.

Geht doch

Einfach mal im entsprechenden Verzeichnis nachsehen:

# ls /proc/sys/net/ipv4

Dort sollte dann eine Datei sein wie z.B. unter Ubuntu 12.04:

icmp_ratelimit

Versionsabhängig

Das net.ipv4.icmp_echoreply_rate in Abhhängigkeit von der Kernelversion nicht immer funktioniert, tut uns leid, ist aber nicht weiter tragisch: Den Parameter gibt es auch in jüngeren Kerneln, nur der Name hat sich geändert. Jetzt heißt er icmp_ratelimit. Setzen lässt er sich auch durch beschreiben des /proc-Filesystems. Etwa:

echo "100" > /proc/sys/net/ipv4/icmp_ratelimit

Ausführlich meint die Doku dazu:

" icmp_ratelimit is the maximum rate at which the kernel generates icmp messages of the types specified by icmp_ratemask. The value is the number of jiffies the kernel has to wait between sending two such messages. Therefore zero means no limit. Typically 1 jiffy = 1/100 sec, so a value of 1 means no more than 100/sec, a value of 100 means no more than 1/sec.

Per default, this variable is set to 100, which means 1 ICMP packet may be sent in 100 jiffies. If we set it to 1, we allow 100 ICMP packets per second, and 0 means unlimited ICMP sendings."

nicht ganz aktuell ...

man icmp:

"icmp_echoreply_rate (Linux 2.2 to 2.4.9)"

 

dieser Parameter ist also eher für ältere Kernel ;-)

Hier gehts auch nicht, aber mit anderer Fehlermeldung

Bei mir sieht das so aus:

# sysctl -w net.ipv4.icmp_echoreply_rate=10
sysctl: cannot stat /proc/sys/net/ipv4/icmp_echoreply_rate: Datei oder Verzeichnis nicht gefunden

debian wheezy mit allen Updates

;-(

Gibt's nicht

geht net. Gibt keinen solchen Eintrag.

Und wenn, dann sollte man das auch für IPv6 machen.

Scheint wohl ein recht alter Artikel zu sein.

Fehlt da nicht ein Unterstrich?

Heißt es nicht "...echo_reply..."?

Error

funktioniert leider nicht auf dem aktuellsten debian:

 

root@local: sysctl -w net.ipv4.icmp_echoreply_rate=10
error: "net.ipv4.icmp_echoreply_rate" is an unknown key

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023