Lsof Netzwerk: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 21: Zeile 21:
 
sshd    1232 root  rtd    DIR              253,0    4096      128 /
 
sshd    1232 root  rtd    DIR              253,0    4096      128 /
 
</pre>
 
</pre>
 +
==Muss noch gefüllt werden==
 +
*lsof -a -c nc  -Pi
  
 
==Eingrenzen der Ergebisse==
 
==Eingrenzen der Ergebisse==
 
*lsof -n -i :imaps
 
*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:
+
==Imap Verbindung des Nutzers jcb==
 
*lsof -a -n -u jcb -i :imaps
 
*lsof -a -n -u jcb -i :imaps
 +
 
=Was macht der User »jcb« in Verbindung mit einer bestimmten IP-Adresse?=
 
=Was macht der User »jcb« in Verbindung mit einer bestimmten IP-Adresse?=
 
*lsof -a -u jcb -i @IP-Adresse
 
*lsof -a -u jcb -i @IP-Adresse
Die Suchparameter lassen sich auch negieren, dazu dient das Caret-Zeichen. So liefert
+
==Negation des Users==
 
*lsof -a -n -i TCP -u ^jcb
 
*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:
+
==Applikation als Filter==
 
*lsof -a -n -c firefox -i :https
 
*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 sshd
*lsof -a -n -U -c nautilus
+
<pre>
 +
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)
 +
</pre>
 +
 
 
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
 
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
 
*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:
 
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:

Aktuelle Version vom 22. Februar 2024, 10:32 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 /

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: