Lsof Netzwerk: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 10: Zeile 10:
 
  sshd    1232 root    3u  IPv4  26405      0t0  TCP *:22 (LISTEN)
 
  sshd    1232 root    3u  IPv4  26405      0t0  TCP *:22 (LISTEN)
 
  sshd    1232 root    4u  IPv6  26407      0t0  TCP *:22 (LISTEN)
 
  sshd    1232 root    4u  IPv6  26407      0t0  TCP *:22 (LISTEN)
 +
==Welche Dateien hat sshd geöffnet==
 +
*lsof -c sshd
 +
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
 +
      Output information may be incomplete.
 +
lsof: WARNING: can't stat() fuse.portal file system /run/user/1000/doc
 +
      Output information may be incomplete.
 +
COMMAND  PID USER  FD  TYPE            DEVICE SIZE/OFF    NODE NAME
 +
sshd    1232 root  cwd    DIR              253,0    4096      128 /
 +
sshd    1232 root  rtd    DIR              253,0    4096      128 /
  
 
==Eingrenzen der Ergebisse==
 
==Eingrenzen der Ergebisse==

Version vom 22. Februar 2024, 10:22 Uhr

Mit Lsof kann man sowohl offene Files finden und es ist zugleich ein Troubleshooting-Tool für den Netzwerker

Welche Ports geöffnet sind

  • lsof -n -i

Welche sind im TCP Ports sind Listen Modus

  • lsof -i -sTCP:LISTEN

Ports anstatt Dienste

  • lsof -Pi :22
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1232 root    3u  IPv4  26405      0t0  TCP *:22 (LISTEN)
sshd    1232 root    4u  IPv6  26407      0t0  TCP *:22 (LISTEN)

Welche Dateien hat sshd geöffnet

  • lsof -c sshd

lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs

     Output information may be incomplete.

lsof: WARNING: can't stat() fuse.portal file system /run/user/1000/doc

     Output information may be incomplete.

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 1232 root cwd DIR 253,0 4096 128 / sshd 1232 root rtd DIR 253,0 4096 128 /

Eingrenzen der Ergebisse

  • lsof -n -i :imaps

Es ist beachten, dass »lsof« per Default alle Optionen mit »OR« verknüpft. Wer sich aber für die IMAP-Verbindungen des Users »jcb« interessiert, braucht stattdessen eine AND-Verknüpfung. Die stellt der Schalter »-a« her:

  • lsof -a -n -u jcb -i :imaps

Was macht der User »jcb« in Verbindung mit einer bestimmten IP-Adresse?

  • lsof -a -u jcb -i @IP-Adresse

Die Suchparameter lassen sich auch negieren, dazu dient das Caret-Zeichen. So liefert

  • lsof -a -n -i TCP -u ^jcb

alle TCP-Verbindungen von allen Usern – außer von »jcb«. Statt des Usernamens wäre auch der Name einer Applikation als Filter verwendbar:

  • lsof -a -n -c firefox -i :https

Ein weiterer nützlicher Anwendungsfall ist die Auflistung aller vorhandenen Sockets mit dem Parameter »-U«. Hier kann der Admin die Ergebnisliste wieder eingrenzen, wie schon gezeigt. Alle Sockets des Dateimanagers Nautilus zeigt etwa:

  • lsof -a -n -U -c nautilus

Anstelle des Namens der Applikation kann er auch die PID eines Prozesses mit dem Parameter »-p« angeben. Und natürlich ist »lsof« auch dann nützlich, wenn die Files gewöhnliche Dateien sind. So listet

  • lsof +D /var/log

alle offenen Dateien unter »/var/log«. Auch lassen sich die Lsof-Ausgaben gewinnbringend durch andere Kommandos oder in Shellskripten weiterverarbeiten. Ein Beispiel ist die Aufgabe, alle Prozesse eines bestimmten Nutzers zu beenden. Das gelingt zum Beispiel so: