Ports als (virtuelle) Schnittstellen zur Außenwelt des Rechners, bestehend aus 16-bit Zahlen, sind auf den OSI-Schichten 5 bis 7 zu finden.
Die Gruppeneinteilung der IANA (Internet Assigned Numbers Authority):
- 0 bis 1.023: Well Known Services (durch ICANN, Internet Corporation for Assigned Names and Numbers, ein Unternehmen mit ca. 300 Mitgliedern, definiert)
- 1.024 bis 49.151: registrierte Ports
- 49.152 bis 65.535: dynamische/private Ports
Die Adressvergabe für öffentliche IP-Adressen hat die IANA an die ARIN (American Registry for Internet Numbers) übertragen, die diese Aufgabe wiederum an weitere NICs (Network Information Center) bzw. Domain Name Registries delegiert, die Domains über Registrare zuteilen. So wird dem Endkunden (Domain-Registrant) ein Markt mit konkurrierenden Registraren eröffnet.
Serverdienste
NTP (Network Time Protocol): Zeitsynchronisation im Netzwerk, definiert in RFC 5905, nutzt Port 123 mit UDP („stateless„, verbindungslos), der Stratum-Wert zeigt Distanz zur Zeitquelle an; durch komplexe Algorithmen kann die Zeit im Netzwerk auf 10 Millisekunden (im Internet) oder 200 Mikrosekunden (im LAN) genau synchronisiert werden:
SNTP (Simple Network Time Protocol): Vereinfachte Form des NTP
Wichtig: Kick-out „time.windows.com„!
Überprüfung:
$ ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== [...] #178.162.199.162 131.188.3.223 2 u 67 64 377 93.430 22.671 68.723 +2a01:238:42e4:8 129.143.2.33 2 u 62 64 377 40.661 -0.928 187.936 +epsilon.h6g-ser 124.216.164.14 2 u 64 64 375 33.789 4.084 63.523 +fry.celeborn.de 205.46.178.169 2 u 60 64 363 35.069 2.984 91.534 +2a01:4f8:221:19 158.167.74.53 3 u 58 64 373 35.107 1.779 101.261 +ntp1.m-online.n 212.18.1.106 2 u 63 64 327 37.788 0.927 76.578 +2001:67c:1560:8 193.79.237.14 2 u 16 64 377 47.636 -3.109 0.394 *ernie.gerger-ne 213.172.96.14 2 u 57 64 377 30.149 0.669 0.996 +2a01:4f9:c010:1 95.216.218.15 3 u - 64 377 52.933 2.154 47.024 #electrode.felix 89.231.96.83 2 u 65 64 327 34.091 17.087 104.511 +lotor.mcl.gg 131.188.3.222 2 u 59 64 377 33.048 0.449 83.247 +static.131.40.9 122.227.206.195 3 u 61 64 267 34.289 3.469 77.147 +pugot.canonical 193.79.237.14 2 u 8 64 377 38.374 0.867 47.023 +gromit.nocabal. 131.188.3.222 2 u 58 64 377 34.287 0.222 64.662 +golem.canonical 193.79.237.14 2 u 81 64 376 43.050 -1.357 18.227
HTTP (Hypertext Transfer Protocol):
- überträgt HTML-Seiten (Hypertext Markup Language) und dient zum Download und Upload von Dateien
- HTTP (OSI-Schicht 7) verwendet TCP (OSI-Schicht 4) als Transportprotokoll, da es selbst verbindungslos (stateless) ist, und nutzt im Standard Port 80
- HTML wurde ab 1989 im CERN entwickelt
- HTML wird durch einen Webserver bereitgestellt und durch eine Clientkomponente („Browser„) interpretiert
- das „System“ Webserver, HTML & Clientkomponente wird als WWW (World Wide Web) bezeichnet
- HTML ist der „Webtraffic“ im aktuellen Standard HTTP/1.1 (RFC 2616)
- ab 2003: „Web 2.0“, Ursprung der „sozialen Medien“
HTTPS (in den meisten Fällen HTTP secure):
- zur verschlüsselten Kommunikation mit Webservern, nutzt im Standard Port 443
- Verwendung einer Variante von SSL (Secure Socket Layer-Protokoll, entwickelt von Netscape), welches verschiedene Sicherheitsfunktionen (Verschlüsselung, Authentizität und Integrität) für andere Protokolle bereit stellt
- SSLv3: als TLS, Transport Layer Security, in RFC 2246 (TLS 1.0) erstmals standardisiert
FTP (File Transfer Protocol):
- vor dem RFC für IP im Jahre 1980 in RFC 765 definiert und 1985 mit RFC 959 aktualisiert
- eine der ältesten Internet-Anwendungen für Upload und Download von Dateien, mit ftp-Server und ftp-Client
- verfügt über Authentifizierung, diese findet im Klartext statt
- nutzt neben Port 20 (active ftp) und 21 (control-session: Verwaltungssitzung) auch dynamische Ports (ausgehende Ports, „Highports“ für den Client-Passivmodus)
- nur suboptimale Performance
- immer noch das Standard-Protokoll für die Datei-Übertragung
- Analyse einer ftp data session (z.B. Abarbeitung eines ftp-Befehls) – Active FTP:
Request: PORT 192,168,1,1,194,21 (Aufschlüsselung: 194 HEX: C2, 21 HEX: 15, C215 DEC: 49.685) 20=>49685 [SYN] 49685=>20 [SYN, ACK] [...] 49685=>20 [FIN, ACK] 20=>49685 [ACK] Response: 226 Transfer complete
- der Verwaltungskanal wird von einem Highport des Clients (> 1023) auf den Port 21/tcp des ftp-Servers aufgebaut. Diese Verbindung wird zum Austausch von Verwaltungsinformationen, Fehlermeldungen, Befehlen und Bestätigungen genutzt
- der Datenkanal wird zum Übermitteln der eigentlichen Nutzdaten über separate Ports verwendet. Für jede ftp-Aktion („jeden ftp-Befehl“) wird ein eigener Datenkanal aufgebaut, während der Verwaltungskanal permanent über die gesamte Sitzungsdauer bestehen bleibt
– bei Active FTP baut der Client eine Verbindung von einem High-Port auf den Port 21/tcp des FTP-Servers auf. Anschließend baut der FTP-Server von seinem Port 20/tcp eine Verbindung auf einen High-Port des Clients auf. Dieser Port wird ihm über den PORT-Befehl auf dem Verwaltungskanal vom Client genannt. Das ist problematisch für die Firewall: aus dem Internet wird eine Verbindung zum Clientsystem im sicheren Netzwerk aufgebaut.
– bei Passive FTP sendet der Client dem Server das PASV-Kommando. Der Server reagiert mit einer Bestätigung und nennt den serverseitigen High-Port, auf den der Client die Data-Session aufbauen soll. Beide Kanäle werden vom Client zum Server aufgebaut. - Anonymous FTP: Benutzername anonymous, Passwort oft beliebig, muss aber oft in Form einer eMail-Adresse angegeben werden, unsicher – deswegen oft nur lesender Zugriff gestattet
SMTP (Simple Mail Transfer Protocol):
- zum Transport von eMails über Port 25/tcp von MUA (Mail User Agent, „eMail-Client“, z.B.: Thunderbird, IncrediMail, em Client, Opera Mail uva.) zum MTA (Mail Transfer Agent, „eMail-Server“, z.B. Sendmail, Postfix, Exim uva.)
- zum Abrufen von Postfächern auf Mailservern werden andere Protokolle benutzt, z.B.:
– POP3 (Post Office Protocol Version 3, Port 110/tcp)
– IMAP (Internet Message Application Protocol Version 4, Port 143/tcp)
– MS-Extrawurst („proprietär“) MAPI (für Outlook zum Abruf von Mails aus Exchange) - SMTP wurde in RFC 821 im Jahr 1982 erstmals beschrieben und 2001 durch RFC 2821 ersetzt (erweitert u.a. zu ESTMP mit erweiterten Authentifzierungsmöglichkeiten)
- der für den MUA zuständige Sender-MTA erfordert eine DNS-Abfrage von MX-Einträgen bei DNS-Servern zum Weitersenden an den Empfänger-MTA
- der empfangende MTA überprüft, ob er für das entsprechende Empfänger-Postfach zuständig ist und nimmt die Nachricht dementsprechend an oder lehnt sie ab
- SMTP kommuniziert sowohl die Verwaltungsinformationen als auch den Nachrichten-Inhalt im Klartext
- deswegen:
– Verschlüsselung des Inhalts der Nachricht (PGP – Ende-zu-Ende)
– Übertragung über TLS zwischen MUAs und MTAs und MTAs untereinander
Telnet (Teletype Network):
- 1969 entwickelt, 1974 eingesetzt
- per Default nutzt telnet Port 23/tcp
- dient der Fernsteuerung von Computersystemen via Textkonsole
- standardisiert in RFC 854 und RFC 855 (1983), allerdings oft erweitert
- heutzutage oft nur noch zu Diagnose-Zwecken für TCP-basierte Dienste eingesetzt, da zwar Authentifizierung aber Klartext-Übertragung
SSH (Secure Shell):
- sichere Variante der Terminal-Session, ebenso standardmäßig auf Port 23/tcp
- mit Authentizität, Integrität und Verschlüsselung
- SSH ist eine Protokoll-Suite zuzüglich:
– SFTP und SCP (sichere Dateiübertragung)
– X11-Tunnelung (sicheres X11)
– SSHFS (Remote Dateisystem) - SSHv1 enthält Sicherheitslücken, es sollte nur noch SSHv2 verwendet werden
VoIP (Voice over IP):
- schafft ein konvergentes Netzwerk: Zusammenführung von Sprach- und Datenübertragung
- VoIP überträgt Telefonverbindungen über Datennetze
- benötigt ausreichend Bandbreite bzw. QoS (Quality of Service), „Pflicht“ im lokalen Netzwerk
- IP-Telefonie bezeichnet die Ende-zu-Ende-Kommunikation per VoIP
- wichtige Protokolle für VoIP:
– H.323: ITU-Standard, ausgereift, aber komplex
– SIP (Session Initialisation Protocol): einfacher und flexibler Standard
– bei SIP: Daten werden via RTP (Real Time Protocol) übertragen
– Skinny: proprietäres Protokoll von Cisco
- die Sprache wird digitalisiert und mittels Codec kodiert, z.B. (Kbit-Angaben zzgl. IP-Overhead):
– G.711 – ISDN-Codec (64 Kbit/s)
– G.722 – verbesserter Codec, bessere Sprachqualität (64 Kbit/s)
– G.726 – insbesondere bei DECT-Telefonen mit ca. 32 Kbit/s , schlechtere Sprachqualität
– die Qualität der Kodierung kann mittels MOS (Mean Opinion Score) gemessen werden:
- Probleme mit VoIP treten auf durch:
– Paketverluste (Packetloss) mangels Durchsatz zwischen 1% bis 5%
– Laufzeit (Latenz, Delay), darf max. 150 ms betragen, oft länger
– zeitliche Schwankung (Jitter), Varianz der Übertragung darf max. 30 ms betragen
– im Internet existiert über mehrere Provider hinweg keine garantierte Übertragung