Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

it:tcpdump [2010/10/20 23:31]
127.0.0.1 Externe Bearbeitung
it:tcpdump [2013/07/26 12:05] (aktuell)
wikisysop
Zeile 4: Zeile 4:
 Für Netzwerkadministratoren sind <fc #​008000>​TCPDump</​fc>​ ((http://​en.wikipedia.org/​wiki/​Tcpdump)) und <fc #​008000>​Wireshark</​fc>​ ((http://​de.wikipedia.org/​wiki/​Wireshark)) unverzichtbare Analysetools. Wireshark mit grafisches Frontend nutzt unter Unixsystemen die selben Bibliotheken (zB libpcap ((http://​en.wikipedia.org/​wiki/​Libpcap))) wie das Kommandozeilen basierte Unix Tool tcpdump und versteht daher die in der Manpage von tcpdump sehr ausführlich dokumentierten Filtermöglichkeiten. Da Paketsniffer gerade bei reger Netzwerklast so einiges an Daten anschaufeln,​ ist zur gezielten Fehlersuche der Einsatz von Filtern unerlässlich. Die folgende Liste stellt nur eine kleine Auswahl dar, werden aber sehr häufig verwendet: Für Netzwerkadministratoren sind <fc #​008000>​TCPDump</​fc>​ ((http://​en.wikipedia.org/​wiki/​Tcpdump)) und <fc #​008000>​Wireshark</​fc>​ ((http://​de.wikipedia.org/​wiki/​Wireshark)) unverzichtbare Analysetools. Wireshark mit grafisches Frontend nutzt unter Unixsystemen die selben Bibliotheken (zB libpcap ((http://​en.wikipedia.org/​wiki/​Libpcap))) wie das Kommandozeilen basierte Unix Tool tcpdump und versteht daher die in der Manpage von tcpdump sehr ausführlich dokumentierten Filtermöglichkeiten. Da Paketsniffer gerade bei reger Netzwerklast so einiges an Daten anschaufeln,​ ist zur gezielten Fehlersuche der Einsatz von Filtern unerlässlich. Die folgende Liste stellt nur eine kleine Auswahl dar, werden aber sehr häufig verwendet:
  
-  * **Filter SSH / Telnet Traffic aus**: Wenn man mit einem Server via SSH oder Telnet verbunden ist und dort einen filterlosen tcpdump ​anstösst, wird der eigene SSH- bzw. Telnet-Verkehr mitgeschnitten. Der folgende Filter verhindert ein Mitschneiden von SSH (Port 22) und Telnet (Port 23):\\ \\ <fc #​008000>#​ tcpdump not port 22</​fc>​ (SSH)\\ <fc #​008000>#​ tcpdump not port 23</​fc>​ (Telnet)\\ ​+  * **Filter SSH / Telnet Traffic aus**: Wenn man mit einem Server via SSH oder Telnet verbunden ist und dort einen filterlosen tcpdump ​anstößt, wird der eigene SSH- bzw. Telnet-Verkehr mitgeschnitten. Der folgende Filter verhindert ein Mitschneiden von SSH (Port 22) und Telnet (Port 23):\\ \\ <fc #​008000>#​ tcpdump not port 22</​fc>​ (SSH)\\ <fc #​008000>#​ tcpdump not port 23</​fc>​ (Telnet)\\ ​
  
   * **Zu filterndes Protokoll festlegen**:​ Oft kommt es vor, dass man sich bei der Analyse auf ein bestimmtes Protokoll (zB http, smtp) konzentrieren möchte.\\ \\ <fc #​008000>#​ tcpdump port 80</​fc>​ -> Zeigt nur Pakete an, die HTTP betreffen\\ <fc #​008000>#​ tcpdump port 25</​fc>​ -> Zeigt nur Pakete an, die SMTP betreffen   * **Zu filterndes Protokoll festlegen**:​ Oft kommt es vor, dass man sich bei der Analyse auf ein bestimmtes Protokoll (zB http, smtp) konzentrieren möchte.\\ \\ <fc #​008000>#​ tcpdump port 80</​fc>​ -> Zeigt nur Pakete an, die HTTP betreffen\\ <fc #​008000>#​ tcpdump port 25</​fc>​ -> Zeigt nur Pakete an, die SMTP betreffen
Zeile 16: Zeile 16:
   * **Operatoren:​ AND / OR**: Mit den Operatoren <fc #​008000>​and</​fc>​ und <fc #​008000>​or</​fc>​ lassen sich mehrere Ausdrücke kombinieren:​\\ \\ <fc #​008000>#​ tcpdump src host 192.168.1.1 and src port 80</​fc>​ -> Filtert alles was vom angegeben Rechner (host) von Port 80 gesendet wird.    * **Operatoren:​ AND / OR**: Mit den Operatoren <fc #​008000>​and</​fc>​ und <fc #​008000>​or</​fc>​ lassen sich mehrere Ausdrücke kombinieren:​\\ \\ <fc #​008000>#​ tcpdump src host 192.168.1.1 and src port 80</​fc>​ -> Filtert alles was vom angegeben Rechner (host) von Port 80 gesendet wird. 
  
-  * **Operatoren oder Ausdrücke gruppieren**:​ Da die Syntax von links nach rechts ​ausgwertet ​wird, kann es bei der Kombination mehrerer Operatoren notwendig sein, diese zu gruppieren. Die Operatoren <fc #​008000>​and</​fc>​ und <fc #​008000>​or</​fc>​ sind in ihrer Gewichtung gleichwertig. Das folgende Beispiel filtert alle Pakete, welche von Port 80 der Server >><​nowiki>​www.apple.com</​nowiki><<​ oder >><​nowiki>​www.microsoft.com</​nowiki><<​ gesendet werden. Ohne den Klammern zur Gruppierung (welche mit einem Backslash maskiert werden müssen) würden alle Pakete von Port 80 von >><​nowiki>​www.apple.com</​nowiki><<​ und **alle** Pakete von >><​nowiki>​www.microsoft.com</​nowiki><<​ gefiltert werden:\\ \\ <fc #​008000>​tcpdump src port 80 and \(src host <​nowiki>​www.apple.com</​nowiki>​ or src host <​nowiki>​www.microsoft.com\</​nowiki>​)</​fc>​+  * **Operatoren oder Ausdrücke gruppieren**:​ Da die Syntax von links nach rechts ​auswertet ​wird, kann es bei der Kombination mehrerer Operatoren notwendig sein, diese zu gruppieren. Die Operatoren <fc #​008000>​and</​fc>​ und <fc #​008000>​or</​fc>​ sind in ihrer Gewichtung gleichwertig. Das folgende Beispiel filtert alle Pakete, welche von Port 80 der Server >><​nowiki>​www.apple.com</​nowiki><<​ oder >><​nowiki>​www.microsoft.com</​nowiki><<​ gesendet werden. Ohne den Klammern zur Gruppierung (welche mit einem Backslash maskiert werden müssen) würden alle Pakete von Port 80 von >><​nowiki>​www.apple.com</​nowiki><<​ und **alle** Pakete von >><​nowiki>​www.microsoft.com</​nowiki><<​ gefiltert werden:\\ \\ <fc #​008000>​tcpdump src port 80 and \(src host <​nowiki>​www.apple.com</​nowiki>​ or src host <​nowiki>​www.microsoft.com\</​nowiki>​)</​fc>​
  
-  * **Dump in Datei umleiten**: Mit tcpdump erstellte Dumps können zur späteren Analyse in Wireshark geladen werden. Die Option <fc #​008000>​-w [Pfad zur Datei]</​fc>​ leitet die Ausgabe in eine .cap Datei um:\\ \\ <fc #​008000>#​ tcpdump -w ~/​Desktop/​tdump.cap</​fc>​ -> Speichert den Dump tdump.cap auf dem Desktop des angelmeldeten ​Benutzers+  * **Dump in Datei umleiten**: Mit tcpdump erstellte Dumps können zur späteren Analyse in Wireshark geladen werden. Die Option <fc #​008000>​-w [Pfad zur Datei]</​fc>​ leitet die Ausgabe in eine .cap Datei um:\\ \\ <fc #​008000>#​ tcpdump -w ~/​Desktop/​tdump.cap</​fc>​ -> Speichert den Dump tdump.cap auf dem Desktop des angemeldeten ​Benutzers
  
-  * **Paketgrösse ​definieren**:​ Standardmäßig zeichnet tcpdump nur die ersten 68 Bytes jedes Pakets auf. Das representiert ​die Header der involvierten Protokolle. Mit dem Schalter <fc #​008000>​-s [Paketgrösse ​in Byte]</​fc>​ können Sie diesen Wert einstellen:​\\ \\ <fc #​008000>#​ tcpdump -s 0</​fc>​ -> Stellt die maximale ​Paketgrösse ​auf unbegrenzt\\ <fc #​008000>#​ tcpdump -s 1000</​fc>​ -> Zeichnet die ersten 1000 Byte eines Pakets auf+  * **Paketgröße ​definieren**:​ Standardmäßig zeichnet tcpdump nur die ersten 68 Bytes jedes Pakets auf. Das repräsentiert ​die Header der involvierten Protokolle. Mit dem Schalter <fc #​008000>​-s [Paketgröße ​in Byte]</​fc>​ können Sie diesen Wert einstellen:​\\ \\ <fc #​008000>#​ tcpdump -s 0</​fc>​ -> Stellt die maximale ​Paketgröße ​auf unbegrenzt\\ <fc #​008000>#​ tcpdump -s 1000</​fc>​ -> Zeichnet die ersten 1000 Byte eines Pakets auf
  
-  * **Promiscuous Mode ((http://​de.wikipedia.org/​wiki/​Promiscuous_Mode)) abstellen**:​ tcpdump versetzt beim Start das Interface standardmäßig in den Promiscuous Mode. Dadurch werden von der Netzwerkkarte empfangene Pakete, welche **nicht** für den Host bestimmt sind trotzdem angenommen. Das ist sinnvoll, wenn man Störungen im Netzwerk generell analysieren möchte und einen dedizierten Sniffer Host an einem Monitor Switch Port angeschlossen hat. Analysiert man die Maschine an der man sitzt oder mit der man sich verbinden möchte, ist dies unnötig bzw. sogar kontraproduktiv. Der Schalter <fc #​008000>​-p</​fc>​ deaktiviert den Promiscuous Mode:\\ \\ <fc #​008000>#​ tcpdump -p</​fc>​+  * **Promiscuous Mode ((http://​de.wikipedia.org/​wiki/​Promiscuous_Mode)) abstellen**:​ tcpdump versetzt beim Start das Interface standardmäßig in den Promiscuous Mode. Dadurch werden von der Netzwerkkarte empfangene Pakete, welche **nicht** für den Host bestimmt sindtrotzdem angenommen. Das ist sinnvoll, wenn man Störungen im Netzwerk generell analysieren möchte und einen dedizierten Sniffer Host an einem Monitor Switch Port angeschlossen hat. Analysiert man die Maschine an der man sitzt oder mit der man sich verbinden möchte, ist dies unnötig bzw. sogar kontraproduktiv. Der Schalter <fc #​008000>​-p</​fc>​ deaktiviert den Promiscuous Mode:\\ \\ <fc #​008000>#​ tcpdump -p</​fc>​
  
   * **Die Anzahl der Pakete festlegen**:​ Es kann uU nur notwendig sein, ein paar Pakete mitzuschneiden,​ zB um evtl. festzustellen woher eine bestimmte Verbindung kommt, wer von den Verbindungspartnern die Verbindung initiiert hat usw. Dafür reichen idR 5 - 10 Pakete schon aus. Die Option <fc #​008000>​-c</​fc>​ legt die Anzahl der Pakete fest:\\ \\ <fc #​008000>#​ tcpdump -c 10</​fc>​ -> Zeichnet nur die ersten 10 Pakete jeder Verbindung auf.   * **Die Anzahl der Pakete festlegen**:​ Es kann uU nur notwendig sein, ein paar Pakete mitzuschneiden,​ zB um evtl. festzustellen woher eine bestimmte Verbindung kommt, wer von den Verbindungspartnern die Verbindung initiiert hat usw. Dafür reichen idR 5 - 10 Pakete schon aus. Die Option <fc #​008000>​-c</​fc>​ legt die Anzahl der Pakete fest:\\ \\ <fc #​008000>#​ tcpdump -c 10</​fc>​ -> Zeichnet nur die ersten 10 Pakete jeder Verbindung auf.
it/tcpdump.txt (11129 views) · Zuletzt geändert: 2013/07/26 12:05 von wikisysop
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0