Ss: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=Anzeigen der aktiven TCP Verbindungen=
+
= ss =
*ss -t
+
 
=Anzeigen der aktiven TCP Verbindungen(numerisch)=
+
'''ss''' (''socket statistics'') aus ''iproute2'' zeigt Sockets an und ist der Nachfolger von ''netstat''. Das Prinzip: ein '''Socket-Typ''' kombiniert mit ein paar '''Modifikatoren''' – damit deckt man alle Fälle ab, ohne sich Dutzende Aufrufe zu merken.
*ss -tn
+
 
=Anzeigen der aktiven TCP Verbindungen(numerisch) und des dazugehörenden Prozesses=
+
== Bausteine ==
*ss -tnp
+
 
=Anzeigen der TCP Sockets im Listenmodus=
+
Socket-Typ:
*ss -tl
+
 
=Anzeigen der TCP Sockets im Listenmodus(numerisch)=
+
; -t
*ss -tln
+
: TCP
=Anzeigen der TCP Sockets im Listenmodus(numerisch) und des dazugehörenden Prozesses=
+
; -u
*ss -tnlp
+
: UDP
=Anzeigen aller TCP Sockets=
+
; -x
*ss -at
+
: UNIX-Domain-Sockets
=Anzeigen aller TCP Sockets (numerisch)=
+
 
*ss -atn
+
Modifikatoren:
=Anzeigen aller TCP Sockets (numerisch) und des dazugehörenden Prozesses=
+
 
*ss -atnp
+
; -l
=Anzeigen der aktiven UDP Verbindungen=
+
: nur ''listening'' (lauschende Sockets)
*ss -u
+
; -a
=Anzeigen der aktiven UDP Verbindungen(numerisch)=
+
: alle (listening + nicht-listening)
*ss -un
+
; -n
=Anzeigen der aktiven UDP Verbindungen(numerisch) und des dazugehörenden Prozesses=
+
: numerisch (keine Namensauflösung von Host/Port, schneller)
*ss -unp
+
; -p
=Anzeigen der UDP Sockets im Listenmodus=
+
: zugehörigen Prozess (PID/Programm) anzeigen – meist als root nötig
*ss -lu
+
 
=Anzeigen der UDP Sockets im Listenmodus(numerisch)=
+
Ohne <code>-l</code> und ohne <code>-a</code> zeigt ss nur die '''aktiven''' (established) Verbindungen.
*ss -unl
+
 
=Anzeigen der UDP Sockets im Listenmodus(numerisch) und des dazugehörenden Prozesses=
+
== Muster ==
*ss -unpl
+
 
=Anzeigen aller UDP Sockets=
+
<pre>
*ss -au
+
ss -[t|u|x] [a] [l] [n] [p]
=Anzeigen aller UDP Sockets (numerisch)=
+
</pre>
*ss -aun
+
 
=Anzeigen aller UDP Sockets (numerisch) und des dazugehörenden Prozesses=
+
Die Reihenfolge der Buchstaben ist egal, <code>ss -tlnp</code> = <code>ss -tnpl</code>.
*ss -aunp
+
 
=Anzeigen der aktiven UNIX Verbindungen=
+
== TCP ==
*ss -x
+
 
=Anzeigen der aktiven UNIX Verbindungen(numerisch)=
+
<pre>
*ss -xn
+
ss -t          # aktive TCP-Verbindungen
=Anzeigen der aktiven UNIX Verbindungen(numerisch) und des dazugehörenden Prozesses=
+
ss -tn          # dito, numerisch
*ss -xnp
+
ss -tnp        # dito, mit Prozess
=Anzeigen der UNIX Sockets im Listenmodus=
+
ss -tl          # TCP im Listen-Modus
*ss -lx
+
ss -tln        # Listen, numerisch
=Anzeigen der UNIX Sockets im Listenmodus(numerisch)=
+
ss -tlnp        # Listen, numerisch, mit Prozess
*ss -xnl
+
ss -atnp        # ALLE TCP-Sockets, numerisch, mit Prozess
=Anzeigen der UNIX Sockets im Listenmodus(numerisch) und des dazugehörenden Prozesses=
+
</pre>
*ss -xnpl
+
 
=Anzeigen aller UNIX Sockets=
+
== UDP ==
*ss -ax
+
 
=Anzeigen aller UNIX Sockets (numerisch)=
+
<pre>
*ss -axn
+
ss -u           # aktive UDP-Sockets
=Anzeigen aller UNIX Sockets (numerisch) und des dazugehörenden Prozesses=
+
ss -un         # numerisch
*ss -axnp
+
ss -unp         # mit Prozess
 +
ss -ul          # UDP im Listen-Modus (wartende Ports)
 +
ss -uln        # Listen, numerisch
 +
ss -ulnp        # Listen, numerisch, mit Prozess
 +
ss -aunp        # ALLE UDP-Sockets, numerisch, mit Prozess
 +
</pre>
 +
 
 +
== UNIX ==
 +
 
 +
<pre>
 +
ss -x          # aktive UNIX-Sockets
 +
ss -xp          # mit Prozess
 +
ss -xl          # UNIX im Listen-Modus
 +
ss -xlp        # Listen, mit Prozess
 +
ss -axp        # ALLE UNIX-Sockets, mit Prozess
 +
</pre>
 +
 
 +
== Filtern ==
 +
 
 +
<pre>
 +
ss -tlnp sport = :443        # nur Quellport 443
 +
ss -tn dst 10.0.2XX.0/24    # nur Ziel in diesem Netz
 +
ss -tlnp | grep ssh          # schnell und schmutzig
 +
</pre>
 +
 
 +
== Übung ==
 +
 
 +
; Info
 +
: Aufgaben können auch über ''ss'' gelöst werden.
 +
 
 +
# Gibt es aktive TCP-Verbindungen?
 +
# Gibt es aktive UDP-„Verbindungen"?
 +
# Welche TCP-Ports sind im Listen-Modus?
 +
# Welche UDP-Ports warten auf Dateneingang?
 +
# Auf welchen Ports läuft ein Webserver?
 +
# Auf welchen Ports läuft der SSH-Server?
 +
# Über welchen UNIX-Socket kommuniziert der MySQL-Server?
 +
 
 +
<!---
 +
== Lösungen ==
 +
 
 +
<pre>
 +
# 1) aktive TCP-Verbindungen
 +
ss -tn
 +
 
 +
# 2) aktive UDP-Sockets (UDP ist verbindungslos -> "Verbindungen" in Anführungszeichen)
 +
ss -un
 +
 
 +
# 3) lauschende TCP-Ports
 +
ss -tln
 +
 
 +
# 4) lauschende UDP-Ports
 +
ss -uln
 +
 
 +
# 5) Webserver -> Listen-Ports + Prozess, auf 80/443 bzw. nginx/apache achten
 +
ss -tlnp
 +
ss -tlnp | grep -E ':80 |:443 '
 +
 
 +
# 6) SSH-Server -> Port 22 / Prozess sshd
 +
ss -tlnp | grep ssh
 +
 
 +
# 7) UNIX-Socket des MySQL/MariaDB-Servers (z.B. /run/mysqld/mysqld.sock)
 +
ss -xlp | grep -i mysql
 +
</pre>
 +
--->
 +
 
 +
== Siehe auch ==
 +
 
 +
* [[Ip addr]]

Aktuelle Version vom 15. Juni 2026, 15:43 Uhr

ss

ss (socket statistics) aus iproute2 zeigt Sockets an und ist der Nachfolger von netstat. Das Prinzip: ein Socket-Typ kombiniert mit ein paar Modifikatoren – damit deckt man alle Fälle ab, ohne sich Dutzende Aufrufe zu merken.

Bausteine

Socket-Typ:

-t
TCP
-u
UDP
-x
UNIX-Domain-Sockets

Modifikatoren:

-l
nur listening (lauschende Sockets)
-a
alle (listening + nicht-listening)
-n
numerisch (keine Namensauflösung von Host/Port, schneller)
-p
zugehörigen Prozess (PID/Programm) anzeigen – meist als root nötig

Ohne -l und ohne -a zeigt ss nur die aktiven (established) Verbindungen.

Muster

ss -[t|u|x] [a] [l] [n] [p]

Die Reihenfolge der Buchstaben ist egal, ss -tlnp = ss -tnpl.

TCP

ss -t           # aktive TCP-Verbindungen
ss -tn          # dito, numerisch
ss -tnp         # dito, mit Prozess
ss -tl          # TCP im Listen-Modus
ss -tln         # Listen, numerisch
ss -tlnp        # Listen, numerisch, mit Prozess
ss -atnp        # ALLE TCP-Sockets, numerisch, mit Prozess

UDP

ss -u           # aktive UDP-Sockets
ss -un          # numerisch
ss -unp         # mit Prozess
ss -ul          # UDP im Listen-Modus (wartende Ports)
ss -uln         # Listen, numerisch
ss -ulnp        # Listen, numerisch, mit Prozess
ss -aunp        # ALLE UDP-Sockets, numerisch, mit Prozess

UNIX

ss -x           # aktive UNIX-Sockets
ss -xp          # mit Prozess
ss -xl          # UNIX im Listen-Modus
ss -xlp         # Listen, mit Prozess
ss -axp         # ALLE UNIX-Sockets, mit Prozess

Filtern

ss -tlnp sport = :443        # nur Quellport 443
ss -tn dst 10.0.2XX.0/24     # nur Ziel in diesem Netz
ss -tlnp | grep ssh          # schnell und schmutzig

Übung

Info
Aufgaben können auch über ss gelöst werden.
  1. Gibt es aktive TCP-Verbindungen?
  2. Gibt es aktive UDP-„Verbindungen"?
  3. Welche TCP-Ports sind im Listen-Modus?
  4. Welche UDP-Ports warten auf Dateneingang?
  5. Auf welchen Ports läuft ein Webserver?
  6. Auf welchen Ports läuft der SSH-Server?
  7. Über welchen UNIX-Socket kommuniziert der MySQL-Server?


Siehe auch