Ss
Version vom 15. Juni 2026, 15:42 Uhr von Thomas.will (Diskussion | Beiträge)
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.
- 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
# 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