Ports
Version vom 29. März 2026, 11:08 Uhr von Thomas.will (Diskussion | Beiträge)
Funktionsweise der Ports
- Anwendungsserver fordern bei ihrem Start beim Betriebssystem einen Port an, auf dem sie Verbindungen entgegennehmen können.
- Für Standard-Anwendungen handelt es sich in der Regel immer um die gleichen festen Portnummern.
- Anschließend ist der Netzwerk-Port fest mit der Anwendung verknüpft.
- Clients erhalten vom Betriebssystem in der Regel einen zufälligen Port dynamisch zugewiesen.
- Diese sind dann mit der Client-Anwendung verknüpft und stellen den „Rückweg“ zu dieser dar.
- Der Client muss die Ziel-IP-Adresse und den Ziel-Port des Servers kennen.
- Beim Verbindungsaufbau lernt der Server den Port des Clients kennen und adressiert Antwortpakete an diesen.
- Ports sind 16-Bit-Werte (0–65535) und werden in drei Bereiche unterteilt:
- Well-Known Ports (0–1023)
- Registered Ports (1024–49151)
- Dynamic/Private Ports (49152–65535)
Standard Ports
| Port | Service | Port | Service |
|---|---|---|---|
| 20 | ftp-data | 21 | ftp |
| 22 | ssh | 23 | telnet |
| 25 | smtp | 465 | smtps |
| 53 | domain | 67 | bootps |
| 68 | bootpc | 80 | http |
| 110 | pop3 | 143 | imap |
| 161 | snmp | 389 | ldap |
| 443 | https | 445 | microsoft-ds |
| 636 | ldaps | 993 | imaps |
| 3128 | squid | 3306 | mysql |
| 3389 | rdp | 5432 | postgresql |
| 5900 | vnc | 8080 | webcache |
Weitere Aspekte der Port-Kommunikation
Multiplexing und das 5-Tupel
- Ein einzelner Server-Port (z. B. Port 80) kann tausende Verbindungen gleichzeitig bedienen, ohne "belegt" zu sein.
- Das Betriebssystem unterscheidet die eingehenden Datenpakete anhand des sogenannten 5-Tupels: {Quell-IP, Quell-Port, Ziel-IP, Ziel-Port, Protokoll}.
- Solange sich mindestens einer dieser fünf Werte unterscheidet, wird das Paket einer separaten, eindeutigen Verbindung zugeordnet.
Privilegierte Ports unter Unix/Linux
- Ports im Bereich von 0 bis 1023 gelten als privilegierte Ports.
- Nur Prozesse mit Root-Rechten (Administrator) dürfen diese Ports binden und darauf auf Verbindungen warten (Listen).
- Dies verhindert, dass normale Benutzer ohne Berechtigung einen gefälschten Dienst (z. B. einen manipulierten SSH-Server) auf einem Standard-Port starten.
Ephemeral Ports und TIME_WAIT
- Die dynamischen Ports (Ephemeral Ports), die Clients für ausgehende Verbindungen nutzen, sind kurzlebig.
- Nach dem Schließen einer TCP-Verbindung verbleibt der Port für eine kurze Zeit (meist 60–120 Sekunden) im Zustand TIME_WAIT.
- Diese Sperre stellt sicher, dass verspätete Pakete der alten Verbindung nicht fälschlicherweise einer neuen Verbindung auf demselben Port zugeordnet werden.