Portnummern liegen im Bereich 0–65535. Die Nummern 1–1023 werden Diensten zugewiesen, 1024–65535 sind Ephemeral- oder kurzlebige Ports, die zur Identifizierung einer Quelle verwendet werden. Port 0 ist von der Internet Assigned Numbers Authority (IANA) als „reserviert“ definiert.
Was sind Ports und wie funktionieren sie?
In der vorherigen Präsentation haben wir uns IP-Adressen angesehen und gezeigt, wie Router Entscheidungen auf der Grundlage des Präfix-Teils der Adresse treffen, um Pakete von Quellhosts zu Zielhosts zu leiten. Wir haben eine Analogie zu Postdiensten verwendet, um zu zeigen, dass das Präfix wie eine Postleitzahl und der Rest der IP-Adresse wie eine Straße betrachtet werden kann.
Wie sieht es nun mit dem Namen des Empfängers aus, um beim Beispiel der Post zu bleiben? Wenn wir einen Brief adressieren, geben wir den Namen des Empfängers an, z. B. Lucille Ball. Natürlich muss der Postdienst nicht auf den Namen des Empfängers achten. Sobald der Brief aber an der Zieladresse ankommt, muss jemand den Namen des Empfängers lesen und den Brief an diese Person übergeben. Schließlich können an einer Adresse mehrere Personen wohnen.
Das Gleiche gilt für Internet-Hosts. Hosts führen mehrere Prozesse oder Anwendungen aus. Beispiel: Ein Server kann mehrere Dienste wie Web und E-Mail ausführen. Und auf Nutzergeräten wie Laptops können mehrere Clients wie Webbrowser und E-Mail-Programme ausgeführt werden. Wie können wir also bestimmen, an welchen Prozess ein Paket weitergeleitet werden soll, wenn es bei einem Host ankommt? Das ist die Aufgabe von TCP und UDP.
Transmission Control Protocol (TCP) und User Datagram Protocol (UDP):
- Teil der IP-Suite (Internet Protocol), die manchmal auch TCP/IP genannt wird.
- Sie bilden die sogenannte Transportebene und definieren die Prozess-zu-Prozess-Kommunikation.
- TCP und UDP identifizieren Kommunikationsendpunkte mit Portnummern. Eine Portnummer entspricht dem Empfängernamen auf einem Brief.
Sehen wir uns TCP ein wenig genauer an. TCP wird verwendet, um einen Datenstrom von Bytes vom Sender an den Empfänger zu senden. Es gewährleistet eine zuverlässige und geordnete Übertragung des Bytestroms. Beachten Sie, dass IP allein keine Garantie für die Ordnung oder Übertragung bietet. IP-Pakete können gelöscht werden und werden auch gelöscht. TCP bietet eine garantierte Übertragung in der richtigen Reihenfolge, indem es den Datenstrom in Segmente unterteilt und jedes Segment in einem IP-Paket mit einer Sequenznummer überträgt. Der Empfänger sendet eine Bestätigung der empfangenen Segmente zurück an den Absender, der dann die Segmente, die nach einem Timeout nicht bestätigt wurden, erneut überträgt.
Kommen wir nun zu UDP. UDP wird verwendet, um ein Datagramm vom Absender an den Empfänger zu senden. Ein Datagramm wird in einem IP-Paket zugestellt. UDP-Datagramme bieten keine Übertragungsgarantie. Der einzige große Unterschied zwischen einem UDP-Datagramm und einem IP-Paket sind die Portnummern.
Prozesse kommunizieren über Ports, die durch (16-Bit-)Zahlen gekennzeichnet sind. Dabei werden jedem IP-Paket Quell- und Zielportnummern hinzugefügt. Portnummern werden oft durch Anhängen von :<Portnummer> an die IP-Adresse festgelegt.
Jeder Host verfügt über eine Tabelle, in der die Portnummern den Prozessen zugeordnet werden. Wenn ein Paket an einem Host ankommt, kann der Host das Paket mithilfe dieser Tabelle an den richtigen Prozess weiterleiten. In diesem Beispiel stimmt der Zielport 443 mit der zweiten Zeile überein, sodass das Paket an den Webserver übertragen wird.
Wie bestimmen wir die Portnummern? Bei Servern geschieht dies so, dass Dienste auf bekannte Portnummern (im Bereich 1–1023) hören. Zum Beispiel:
- Web (HTTP) verwendet Port 80,
- Secure Web (HTTPS) verwendet Port 443, und
- DNS verwendet Port 43.
Der Client wählt die Zielportnummer, die dem angefragten Dienst entspricht. In diesem Beispiel kommunizieren wir mit einem HTTPS-Dienst. Die Zielportnummer lautet also 443.
Was die Quellportnummer betrifft, so initiiert der Client die Kommunikation über einen sogenannten Ephemeral- oder kurzlebigen Port (im Bereich 1024–65535). Er wählt eine beliebige Portnummer in diesem Bereich aus, die derzeit nicht verwendet wird. In diesem Beispiel hat der Client die Portnummer 12627 als Quellportnummer gewählt.
Wenn der Server antwortet, werden Quelle und Ziel einfach vertauscht.
Aber wie ermitteln wir diese IP-Adressen? Die Antwort ist ein Nameservice, und das ist das Thema der nächsten Präsentation.
Doch bevor wir das Thema Adressierung abschließen, lassen Sie uns zusammenfassend die Analogie zum Postdienst wieder aufgreifen. Die Portnummer entspricht dem Empfängernamen. So wie nur Bewohner den Empfängernamen sehen müssen, muss nur der Host selbst die Portnummer sehen. Bei der Betrachtung der IP-Adresse unterteilen wir sie in ein Präfix, das wie die Postleitzahl ist, und den Rest der IP-Adresse, der einer Postadresse entspricht. So wie in unserem Beispiel nur das Postamt 90210 auf die Postadresse achten muss, müssen auch nur die Router im MIT-Netzwerk auf die gesamte IP-Adresse achten. Und so wie außerhalb von 90210 nur die Postleitzahl benötigt wird, um den Brief weiterzuleiten, so wird auch außerhalb des MIT nur das Präfix benötigt, um das Paket weiterzuleiten.
Zusammenfassung: Anwendungsnachrichten, z. B. Web-Anfragen und -Antworten, werden in IP-Paketen gespeichert. Sie sind oft verschlüsselt. IP-Pakete werden mit Quell- und Ziel-IP-Adressen und Portnummern adressiert.
Eine Internet-Protocol-Adresse oder IP-Adresse wird verwendet, um Daten über Netzwerkverbindungen zu übertragen. Diese Adresse besteht aus einer Zahlenfolge, die als eindeutige ID fungiert. Portnummern sind eine 16-Bit-Ganzzahl ohne Vorzeichen, die an diese Zeichenfolge angehängt wird, getrennt durch einen Doppelpunkt, z. B. 17.253.207.54: 443. Diese angehängte Nummer wird als „Portnummer“ bezeichnet und dient zur Weiterleitung des Internettraffics, wenn er an einem Server ankommt. TCP (Transmission Control Protocol) und UDP (User Datagram Protocol) werden verwendet, um ein Datenpaket an den richtigen Prozess zu leiten. Es gibt zahlreiche Portnummern; diese sind ein wesentlicher Bestandteil der Funktionsweise des Internets.
Wie funktionieren Ports?
Ports gibt es seit Anbeginn der Computertechnik. Das Advanced Research Projects Agency Netzwerk (ARPANET) war der Ursprung des Konzepts der Portnummern.
Ports werden verwendet, um einen Verbindungs-Endpunkt zu identifizieren und Daten an einen Dienst weiterzuleiten. Es gibt virtuelle und physische Ports: Ein USB-Anschluss ist ein Beispiel für einen physischen Port und oft derjenige, der Ihnen beim Gedanken an Ports als Erstes in den Sinn kommt. Virtuelle Ports sind jedoch weitaus verbreiteter, und hier kommen die Ports in unserer Geschichte über die Funktionsweise des Internets ins Spiel. Ports sind Teil von Ebene 4, der Transportebene des OSI-Modells des Internets.
Um zu erklären, wie Ports funktionieren, müssen wir auf die Analogie eines Briefes zurückgreifen, der an „Lucille Ball, 1000 Roxbury Drive, Beverly Hills, CA 90210“ adressiert ist. In unserem Beitrag über IP-Adressen beschreibt diese Analogie, wie eine IP-Adresse den Brief an seinen virtuellen Bestimmungsort weiterleitet. In der postalischen Analogie gibt der Name auf dem Brief an, für wen der Brief bestimmt ist; in dieser Hinsicht entspricht ein Port dem Namen „Lucille Ball“.
Es gibt viele virtuelle Ports, und Portnummern reichen von 0 bis 65535. Die Internetprotokolle TCP und UDP entscheiden, an welchen Prozess das Datenpaket gesendet wird. Dies basiert auf einem Server-Client-Schema, wie auf unseren Seiten zu HTTP (Hypertext Transfer Protocol) und HTTPSerklärt wird.
Was ist ein Host?
Ein Host, wie z. B. ein Server, führt häufig mehrere Prozesse oder Anwendungen wie Web und E-Mail aus. Jeder Host verfügt über eine Tabelle, in der die Portnummern den Prozessen zugeordnet werden. Wenn ein Paket an einem Host ankommt, leitet der Host das Paket mithilfe dieser Tabelle an den richtigen Prozess weiter. Auf Endgeräten wie Laptops werden in der Regel mehrere Clients ausgeführt, z. B. Webbrowser und E-Mail-Programm. TCP und UDP sind die Protokolle, die entscheiden, wohin ein Datenpaket gesendet werden soll, sobald es an seiner Zieladresse ankommt. Doch obwohl beide Datentraffic weiterleiten, haben sie unterschiedliche Merkmale.
Was ist TCP?
TCP oder Transmission Control Protocol verwendet einen Datenstrom von Bytes, um Daten vom Absender an den Empfänger zu senden. Das Hauptmerkmal von TCP ist seine Fähigkeit, eine zuverlässige, geordnete Übertragung des Bytestroms zu gewährleisten. Dies ist notwendig, da IP-Pakete bei der Übertragung verworfen werden können. TCP bietet eine garantierte Übertragung in der richtigen Reihenfolge, indem es den Datenstrom in Segmente unterteilt und jedes Segment in einem IP-Paket mit einer Sequenznummer überträgt. Der Empfänger bestätigt anschließend den Empfang einer IP-Paket-Sequenz. Wenn eine IP-Paket-Sequenz nicht als empfangen bestätigt wird, überträgt der Absender die nicht empfangenen Segmente nach einem Timeout erneut.
Was ist UDP?
Der Hauptunterschied zwischen UDP und TCP besteht darin, dass die Übertragung nicht garantiert ist. UDP wird verwendet, um ein Datagramm vom Absender an den Empfänger zu senden. Ein Datagramm wird in einem IP-Paket zugestellt. Die Portnummern sind der einzige signifikante Unterschied zwischen einem UDP-Datagramm und einem IP-Paket. Aufgrund dieser fehlenden Übertragungsgarantie sind TCP-Ports jedoch die erste Wahl für Dienste, die eine sichere und zuverlässige Datenübertragung erfordern, wie z. B. E-Mails und Websites.
Beispiele für Portnummern von Diensten
Es gibt 65.535 mögliche Portnummern. Dienste hören bekannte Portnummern im Bereich 1–1023 ab. Einige der am häufigsten von Diensten verwendeten Portnummern sind:
- Port 80: Web (HTTP)
- Port 443: Secure Web (HTTPS)
- Port 43: DNS (Domain Name System)
- Port 3389: Remote Desktop Protocol (RDP)
- Port 21: File Transfer Protocol (FTP)
- Port 22: Secure Shell (SSH), ein Tunneling-Protokoll, das zum Erstellen sicherer Netzwerkverbindungen verwendet wird
In unserem IP-Adress-Beispiel 17.253.207.54: 443 erfolgt die Kommunikation über HTTPS, d. h. Port 443.
Quellportnummern
Quellportnummern verwenden einen „Ephemeral-Port“ oder kurzlebigen Port im Bereich 1024–65535. Jede Portnummer in diesem Bereich, die gerade nicht verwendet wird, kann ausgewählt werden.
Die Internet Assigned Numbers Authority (IANA) führt eine Liste der Portnummern. Port 0 ist von der IANA reserviert und nicht zur Verwendung verfügbar.
Akamai, Ports und Online-Angriffsschutz
Cloudbasierte Cyberangriffe sind allgegenwärtig. Akamai hat es sich zur Aufgabe gemacht, die von Hackern und Cyberkriminellen genutzten internetbasierten Webangriffe zu eliminieren. IP-Paketverluste können durch verteilte Denial-of-Service-Angriffe (DDoS) auf Webserver verursacht werden. Ungeschützte Ports oder Ports, die das Ausnutzen von Schwachstellen ermöglichen, sind bekannte Angriffsmethoden. Unsere dedizierte Infrastruktur bietet DDoS-Prävention, um DDoS-Angriffe in der Cloud zu stoppen, bevor sie Anwendungen, Rechenzentren und die Internetinfrastruktur – öffentlich oder privat – erreichen. Die einzigartige Architektur von Akamai segmentiert DNS-Ressourcen über dedizierte, nicht überlappende Clouds. Mehr als 225 SOCC-Responder unterstützen Akamai. Unsere vollständig verwaltete Lösung filtert den Angriffstraffic heraus und stoppt selbst die schwerwiegendsten Angriffe, sodass sich Ihre Verteidiger auf Sicherheitsprogramme mit hoher Priorität konzentrieren können. Akamai schützt das moderne Unternehmen vor Schwachstellen, die durch die Cloud und Mitarbeiter, die an verschiedenen Standorten arbeiten, entstehen können.
Akamai und Cybersicherheit
Die Akamai-Kompetenz im Bereich Cybersicherheit basiert auf einem umfassenden Verständnis der Funktionsweise von Protokollen wie IP, HTTP und HTTPS sowie von Ports. Neben der Sicherheit optimiert Akamai Cloud Computing mit unserer Reihe von Cloud-Computing-Lösungen; bietet Sicherheit, Skalierbarkeit und Transparenz und ist unabhängig von Cloudservice-Anbietern. Unsere Cloud-Computing-Produktpalette umfasst die Produktlinie „Download Delivery“, die große HTTP-Dateidownloads zuverlässig optimiert – jederzeit und weltweit.
Häufig gestellte Fragen (FAQ)
Ports sind entweder virtuell oder physisch und werden verwendet, um zu bestimmen, wo ein Netzwerk beginnt und endet. Einem virtuellen Port wird eine eindeutige 16-Bit-Nummer zugewiesen, mit der ein Verbindungs-Endpunkt identifiziert wird und Daten an einen bestimmten Dienst oder Prozess weitergeleitet werden. Ein Port wird verwendet, um verschiedene Arten von Datentraffic weiterzuleiten, wenn sie in ein Gerät gelangen, z. B. E-Mails und Webseiten.
Ports verwenden zwei Arten von Protokollen, TCP (Transmission Control Protocol) und UDP (User Datagram Protocol). TCP ermöglicht einen zuverlässigeren Dienst, da es den Bytestrom in der richtigen Reihenfolge überträgt und die Pakete in Ströme aufteilt. Unbestätigte Ströme werden erneut gesendet.
Angreifer können Ports scannen und nach offenen Ports suchen, die ausgenutzt werden können. Firewalls blockieren oder erlauben Datentraffic anhand von Sicherheitsregeln. Hacker versuchen, offene Ports auszunutzen, um schädlichen Datentraffic zu übertragen. Firewalls blockieren den Datentraffic zu allen Ports mit Ausnahme einiger wichtiger Dienste, wie Port 25 für E-Mail, 80 für HTTP-Webtraffic und 443 für sicheren HTTPS-Webtraffic. Port 3389 für RDP-Datentraffic ist ein bekannter Angriffsvektor, bei dem Hacker nach Schwachstellen im RDP suchen und diese für Ransomware-Angriffe und andere Exploits nutzen.
Ein Host, wie z. B. ein Server, führt häufig mehrere Prozesse oder Anwendungen wie Web und E-Mail aus. Jeder Host verfügt über eine Tabelle, in der die Portnummern den Prozessen zugeordnet werden. Wenn ein Paket an einem Host ankommt, leitet der Host das Paket mithilfe dieser Tabelle an den richtigen Prozess weiter. Auf Endgeräten wie Laptops werden in der Regel mehrere Clients ausgeführt, z. B. Webbrowser und E-Mail-Programm. TCP und UDP sind die Protokolle, die entscheiden, wohin ein Datenpaket gesendet werden soll, sobald es an seiner Zieladresse ankommt. Doch obwohl beide Datentraffic weiterleiten, haben sie unterschiedliche Merkmale.
TCP oder Transmission Control Protocol verwendet einen Datenstrom von Bytes, um Daten vom Absender an den Empfänger zu senden. Das Hauptmerkmal von TCP ist seine Fähigkeit, eine zuverlässige, geordnete Übertragung des Bytestroms zu gewährleisten. Dies ist notwendig, da IP-Pakete bei der Übertragung verworfen werden können. TCP bietet eine garantierte Übertragung in der richtigen Reihenfolge, indem es den Datenstrom in Segmente unterteilt und jedes Segment in einem IP-Paket mit einer Sequenznummer überträgt. Der Empfänger bestätigt anschließend den Empfang einer IP-Paket-Sequenz. Wenn eine IP-Paket-Sequenz nicht als empfangen bestätigt wird, überträgt der Absender die nicht empfangenen Segmente nach einem Timeout erneut.
Der Hauptunterschied zwischen UDP und TCP besteht darin, dass die Übertragung nicht garantiert ist. UDP wird verwendet, um ein Datagramm vom Absender an den Empfänger zu senden. Ein Datagramm wird in einem IP-Paket zugestellt. Die Portnummern sind der einzige signifikante Unterschied zwischen einem UDP-Datagramm und einem IP-Paket. Aufgrund dieser fehlenden Übertragungsgarantie sind TCP-Ports jedoch die erste Wahl für Dienste, die eine sichere und zuverlässige Datenübertragung erfordern, wie z. B. E-Mails und Websites.
Warum entscheiden sich Kunden für Akamai?
Akamai ist das Unternehmen für Cybersicherheit und Cloud Computing, das das digitale Leben unterstützt und schützt. Unsere marktführenden Sicherheitslösungen, überlegene Threat Intelligence und unser globales Betriebsteam bieten umfassende Abwehrmaßnahmen, um die Daten und Anwendungen von Unternehmen überall zu schützen. Die Cloud-Computing-Lösungen von Akamai bieten als Full-Stack-Gesamtpaket Performance und erschwingliche Preise auf der weltweit am stärksten verteilten Plattform. Globale Unternehmen vertrauen auf Akamai für die branchenführende Zuverlässigkeit, Skalierbarkeit und Expertise, die sie benötigen, um ihr Geschäft selbstbewusst auszubauen.