From c590c6d52db1962fa600344637afce7304895d52 Mon Sep 17 00:00:00 2001 From: Jan Philipp Timme Date: Mon, 3 Sep 2018 12:40:56 +0200 Subject: [PATCH] Extend strongswan paragraph a bit --- MA-Inhalt.tex | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/MA-Inhalt.tex b/MA-Inhalt.tex index aded8ee..816bc47 100644 --- a/MA-Inhalt.tex +++ b/MA-Inhalt.tex @@ -112,7 +112,8 @@ Aufgrund des finanziellen Rahmens (\ref{req:finance}) kommt nur kostenfreie Soft Die Clientkomponenten der gesuchten Software müssen unter den aktuellen Betriebsystemen lauffähig sein (\ref{req:clientos}). Die Vorgabe von vertraulicher und authentisierter Kommunikation zwischen VPN-Client und VPN-Server (\ref{req:traffic}) impliziert, dass die gesuchte Software Algorithmen zum Verschlüsseln und Signieren von Daten verwendet. -Deshalb soll Kerckhoffs' Prinzip bei der Wahl der VPN-Software angewendet werden, indem ausschließlich quelloffene Software berücksichtigt wird. +Deshalb soll Kerckhoffs' Prinzip bei der Wahl der VPN-Software angewendet werden, indem ausschließlich +quelloffene Software berücksichtigt wird. Weiterhin soll die gesuchte Software IPv4 und IPv6 unterstützen (\ref{req:dualstack}), die Routingtabellen der VPN-Clients (\ref{req:routing}) anpassen können und in Bezug auf Protokollierung (\ref{req:logging}) konfigurierbar sein. @@ -130,28 +131,31 @@ Im Folgenden werden mögliche Software-Kandidaten aus den Debian-Paketquellen vo \paragraph{Strongswan} Strongswan\footnote{\url{https://wiki.strongswan.org/projects/strongswan/wiki/IntroductionTostrongSwan},\\zuletzt abgerufen am 18.07.2018} ist eine modular aufgebaute Software, die unter den in \ref{req:serveros} und \ref{req:clientos} genannten Betriebsystemen lauffähig ist. -Sie kann verwendet werden, um in Kombination mit IPsec-fähigen Betriebsystem-Kerneln ein VPN zwischen zwei Computern auf Basis von IPsec einzurichten. - -Mit IPsec können Richtlinien definiert werden, die den Datenverkehr von einem Host zu einem anderen Host betreffen\cite{RFC4301}. - - -Sie kann über IKEv2\footnote{Internet Key Exchange Protokoll Version 2, definiert in \cite{RFC7296}} authentisiert und verschlüsselt mit einer Gegenstelle kommunizieren. -Dabei werden mit der Gegenstelle Schlüssel und Konfigurationsparameter ausgehandelt beziehungsweise ausgetauscht, anhand derer im Betriebsystem-Kernel IPsec-Verbindungen konfiguriert werden. -Die Verarbeitung des IPsec-Da\-ten\-ver\-kehrs über die Protokolle AH oder ESP wird über den IPsec-Stack im Kernel abgewickelt. - -Transportmodus vs Tunnelmodus? - -* Vertraulichkeit, Integrität übertragener Daten, Zugriffskontrolle und Authentisierung -* Security Policy Database (stateless) enthält "grundsätzliche" Konfiguration -* Security Association Database (stateful) enthält die einzelnen Security Associations (SA), quasi die einzelnen Verbindungen +Sie kann verwendet werden, um in Kombination mit IPsec-fähigen Betriebsystem-Kerneln geschützte Verbindungen zwischen zwei oder mehr Computern einzurichten. +IPsec ist ein Internetstandard, der kryptografische Sicherheit für IPv4 und IPv6 (sowie darüber übertragenen Daten) anbieten soll. +Dies beinhaltet unter anderem Vertraulichkeit durch den Einsatz von Verschlüsselung, Authentisierung von Paketen durch Prüfung von Signaturen und Schutz vor Replay-Angriffen.\cite{RFC4301}[Vergleich Kapitel 2.1] +Mit IPsec können Richtlinien definiert werden, ob und wie Datenverkehr von einem Host zu einem anderen Host geschützt werden soll\cite{RFC4301}. +Zum Schutz des Datenverkehrs können die Protokolle AH und ESP benutzt werden. Das Protokoll \enquote{IP Authentication Header} (AH) ist in \cite{RFC4302} definiert und ermöglicht den Versand von authentisierbaren Paketen an eine Gegenstelle. -Bestimmte Felder ... werden dabei signiert und können so nach Empfang authentisiert werden. +Bestimmte Felder \todo{TODO} werden dabei signiert und können so nach Empfang authentisiert werden. Das Protokoll \enquote{IP Encapsulating Security Payload} (ESP) ist in \cite{RFC4303} definiert und ermöglicht den Versand von vertraulichen Paketen an eine Gegenstelle. Nach Empfang werden die Pakete entschlüsselt. +Zusätzlich bietet IPsec zwei Betriebsarten an: Transportmodus und Tunnelmodus. +Beim Transportmodus werden die Inhalte von IP-Paketen in AH- bzw. ESP-Pakete gekapselt. +Da die Sender- und Empfängeradressen der IP-Pakete hierbei nicht verändert wird, kann dieser Modus nur für direkte Ende-zu-Ende-Kommunikation verwendet werden. + +Beim Tunnelmodus werden die IP-Paketen selbst in AH- bzw. ESP-Pakete gekapselt. +Im Anschluss werden die AH- bzw. ESP-Pakete dann in neue IP-Pakete gekapselt, deren Sender- und Empfängeradressen sich von denen des inneren IP-Paketes unterscheiden dürfen. +Somit ist der Tunnelmodus im Prinzip für die Umsetzung eines VPN geeignet. + +Strongswan implementiert das Protokoll IKEv2\footnote{Internet Key Exchange Protokoll Version 2, definiert in \cite{RFC7296}} und kann authentisiert und verschlüsselt mit Gegenstellen kommunizieren. +Dabei werden mit der Gegenstelle Schlüssel und Konfigurationsparameter ausgehandelt beziehungsweise ausgetauscht, anhand derer im Betriebsystem-Kernel IPsec-Verbindungen konfiguriert werden. +Die Verarbeitung des IPsec-Da\-ten\-ver\-kehrs über die Protokolle AH oder ESP wird über den IPsec-Stack im Kernel abgewickelt. + \paragraph{OpenVPN} Hier wird OpenVPN beschrieben. @@ -159,7 +163,6 @@ Hier wird OpenVPN beschrieben. \section{Auswahl einer VPN-Software} Vorzüge von OpenVPN und IPsec im Vergleich. - Begründung der Auswahl.