- Port Forwarding
-
Eine Portweiterleitung (engl. port forwarding) beschreibt die Möglichkeit, eine über Netzwerk eingehende Verbindung auf einen bestimmten Port zu einem anderen Computer innerhalb eines Netzes weiterzuleiten. Da die entsprechenden Dienste von einem anderen Server bedient werden, benutzt man hier auch den Begriff Virtual Server.
Die eingehenden Datenpakete werden hierbei per Destination NAT und die ausgehenden Pakete per Source NAT maskiert, um sie an den anderen Rechner weiterzuleiten bzw. den Anschein zu erwecken, die ausgehenden Pakete kämen von dem Computer, der die Portweiterleitung betreibt.
Inhaltsverzeichnis
Portweiterleitung durch Router
Ein Router, der beispielsweise mit einem privaten lokalen Netz und dem Internet verbunden ist, wartet dabei an einem bestimmten Port auf Datenpakete. Wenn Pakete an diesem Port eintreffen, werden sie an einen bestimmten Computer und gegebenenfalls einen anderen Port im internen Netzwerk weitergeleitet. Alle Datenpakete von diesem Computer und Port werden, wenn sie zu einer eingehenden Verbindung gehören, per NAT so verändert, dass es im externen Netz den Anschein hat, der Router würde die Pakete versenden.
Durch Portweiterleitung wird es Rechnern innerhalb eines LAN – welche von einem externen Netz nicht direkt erreichbar sind – somit möglich, auch außerhalb dieses Netzes, insbesondere auch im Internet als Server zu fungieren, da diese somit über einen festgelegten Port (und mittels NAT) eindeutig ansprechbar gemacht werden.
Für alle Rechner im externen Netz sieht es so aus, als ob der Router den Serverdienst anbietet. Dass dem nicht so ist, lässt sich anhand von Header-Zeilen oder Paketlaufzeitanalysen erkennen.
Beispiel: Eine größere Firma besitzt ein lokales Netzwerk, wobei mehrere Server nach Außen (Internet) per ADSL-Router unter einer IP-Adresse (z. B. 205.0.0.1)auftreten. Jetzt möchte ein Client aus dem externen Netz (Internet) einen Dienst (z. B. HTTP/TCP Port 80) auf einem Server der Firma nutzen. Er kann jedoch nur den ADSL-Router der Firma für den Dienst (HTTP/TCP Port 80) unter der ihm bekannten IP-Adresse (205.0.0.1) ansprechen. Der ADSL-Router der Firma leitet die Anfrage für den Dienst (HTTP/TCP Port 80) an den entsprechenden Server im lokalen Netzwerk weiter.
Eine Portweiterleitung wird also benötigt, wenn kein PAT möglich ist, da die erste Anfrage von Außen (z. B. Internet) kommt und mehrere Server nur unter einer IP-Adresse von außen ansprechbar sind.
Portweiterleitung zur Verbesserung der Sicherheit
Ein anderes Anwendungsbeispiel für eine Portweiterleitung ist die Sicherung eines Kanals für die Übertragung vertraulicher Daten. Dabei wird Port A auf Rechner 1 mit Port B auf Rechner 2 verknüpft durch eine im Hintergrund aufrechterhaltene Verbindung zwischen zwei anderen Ports der beiden Rechner. Dies bezeichnet man auch als Tunneling.
So kann z. B. unsicheres POP3 (Login/Passwort im Klartext) durch das „Einpacken“ in einen SSH-Kanal abgesichert werden: Port 113 auf dem POP-Server wird per SSH an Port 113 des lokalen Rechners des Anwenders weitergeleitet, das lokale E-Mail-Programm kommuniziert mit localhost:113 statt pop.example.org:113, der SSH-Kanal „schaufelt“ die Daten verschlüsselt zwischen den zwei Adressen hin und her über die parallel bestehende SSH-Verbindung, damit wird das Abgreifen des Passworts durch einen mithörenden Dritten nahezu unmöglich. Dazu muss allerdings ein zumindest eingeschränkter SSH-Zugang auf pop.example.org möglich sein, was Privatanwendern im Allgemeinen nicht gestattet wird.
Siehe auch
Weblinks
- animiertes Beispiel (Flashplayer 8 benötigt!)
- yougetsignal.com
Wikimedia Foundation.