Lsof Netzwerk

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

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 /

Muss noch gefüllt werden

  • lsof -a -c nc -Pi

Eingrenzen der Ergebisse

  • lsof -n -i :imaps

Imap Verbindung des Nutzers jcb

  • 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

Negation des Users

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

Applikation als Filter

  • lsof -a -n -c firefox -i :https
  • lsof -a -n -U -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    1u  unix 0xffff917f8b5eea40      0t0 27804 type=STREAM (CONNECTED)
sshd    1232 root    2u  unix 0xffff917f8b5eea40      0t0 27804 type=STREAM (CONNECTED)

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: