Ss: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(7 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
=Anzeigen=
+
= ss =
==Anzeigen der aktiven TCP Verbindungen==
+
 
*ss -t
+
'''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.
==Anzeigen der aktiven TCP Verbindungen(numerisch)==
+
 
*ss -tn
+
== Bausteine ==
==Anzeigen der aktiven TCP Verbindungen(numerisch) und des dazugehörenden Prozesses==
+
 
*ss -tnp
+
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 <code>-l</code> und ohne <code>-a</code> zeigt ss nur die '''aktiven''' (established) Verbindungen.
 +
 
 +
== Muster ==
 +
 
 +
<pre>
 +
ss -[t|u|x] [a] [l] [n] [p]
 +
</pre>
 +
 
 +
Die Reihenfolge der Buchstaben ist egal, <code>ss -tlnp</code> = <code>ss -tnpl</code>.
 +
 
 +
== TCP ==
 +
 
 +
<pre>
 +
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
 +
</pre>
 +
 
 +
== UDP ==
 +
 
 +
<pre>
 +
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
 +
</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