Kryptografie (15) : VPN - Tunneling

in #de-stem5 years ago

In diesem Beitrag möchte ich zunächst die Motivation eines VPN (Virtual Private Network) erläutern und auf die Grundlegende Funktionsweise des sogenannten Tunneling eingehen.

Motivation

Grob gesagt besteht das Internet aus einer Menge von Knotenpunkten. Die meisten von diesen Knotenpunkten sind öffentlich zugänglich. Jetzt gibt es aber Bereiche die nicht öffentlich zugänglich sein sollen, z.B. Firmennetze oder Private Netze. Diese Kapseln sich von dem Internet ab und werden auch Intranet genannt. Also quasi ein "Internet im Firmennetzwerk" was nicht von außen erreichbar sein soll.
Hat eine Firma eine Hauptzentrale und mehrere Außenstellen, so wäre es wünschenswert, wenn nur diese zwei Netzwerke miteinander kommunizieren könnten. Doch es führt kein Weg drumherum. Man muss eine Verbindung von der Außenstelle über das Internet zu der Hauptzentrale aufbauen (dazu später mehr). Hier kommt das VPN ins Spiel. Ein VPN verbindet alle Firmenentralen miteinander, als würde es nur eine großes Firmennetzwerk geben. Dabei sollen folgende Punkte erfüllt werden:

  • Die Daten, die über ein VPN ausgetauscht werden, sollen nicht abgehört werden können.
  • In das VPN gelangen nur autorisierte Benutzer (Mitarbeiter, Lieferanten, ...).
  • Die Daten können auf dem Übertragungsweg nicht unbemerkt manipuliert werden.
  • Einfache Bedienbarkeit und Administration.

Das Prinzip des Tunneling

Bei der Kommunikation zwischen Sender und Empfänger werden IP-Pakete versendet. Vereinfacht besteht ein IP-Paket aus einem IP-Header, TCP-Header und den Nutzungsdaten (payload).
Im IP-Header steht u.a. wohin das IP-Paket geroutet werden soll (destination address). Der TCP-Header enthält Angaben zum Port des Empfängers und die Nutzlast beinhaltet die Daten.
Beim Tunneling wird das vollständige IP-Paket als Nutzlast in einem weiteren IP-Paket untergebracht. Das "verpacken" passiert vor dem Sendevorgang und der Empfänger entpackt das IP-Paket. Während des Transports hat das ursprüngliche Paket keinerlei Einfluss mehr auf das Routing. Man kann auch für mehr Sicherheit die Nutzlast des ursprünglichen Paketes verschlüsseln.

verschlüsselte Nutzlast

tunnel.png

Ein kleines Beispiel

Wenn Rechner A ein Paket an Rechner B senden möchte, so enthält das Paket in den Header-Daten die Absender- und Zieladressen sowie die eigentlichen Daten als Nutzlast. Das Paket muss über den Gatewayrechner X transportiert werden. Dieser kann das komplette Paket nun in ein neues Paket packen. Das neue Paket hat als Absender die Adresse von Gateway X und als Ziel die Adresse von Gateway Y. Das Paket wird nun an das Gateway Y übertragen und dort ausgepackt. Dadurch kommt die ursprüngliche Zieladresse (Rechner B) wieder zum Vorschein und das Gateway Y kann das Paket an sein Ziel leiten.

tunnel2.png

Im nächsten Beitrag wird näher auf die Verschlüsselung des IP-Paketes eingegangen.

*Quelle(n)
[1] https://pdfs.semanticscholar.org/c565/b5c0d84dc882bc8154739461e6c9b011d911.pdf, pp 1 and 3 [letzter Zugriff: 03.09.2019, 12:44]

Sort:  

👍
~Smartsteem Curation Team

Congratulations @ozelot47! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You distributed more than 600 upvotes. Your next target is to reach 700 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

To support your work, I also upvoted your post!

You can upvote this notification to help all Steem users. Learn how here!

Alles richtig gemacht, weiter viel Erfolg...

Du hast ein kleines Upvote vom German-Steem-Bootcamp erhalten.

Du findest uns im Discord unter https://discord.gg/HVh2X9B

Aktueller Kurator ist @don-thomas

Du möchtest keine Upvotes (mehr) von uns erhalten? Eine kurze Mittelung unter diesen Kommentar reicht.
Dem Upvote von uns folgt ein Trail der weitere Upvotes von unseren Unterstützern beinhaltet. Hier kannst du sehen wer diese sind und auch erfahren wie auch du uns und somit die deutschsprachige Community unterstützen kannst.

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.033
BTC 64420.25
ETH 3150.23
USDT 1.00
SBD 3.99