Autosave
This commit is contained in:
parent
25dc9152c3
commit
8c701ac549
|
@ -585,18 +585,19 @@ push "route-ipv6 2001:638:614:1744::/64 2001:638:614:1750::1" # experimental ipv
|
||||||
Da der Platzhalter \texttt{vpn\_gateway} für IPv6-Routen leider nicht funktioniert, muss hier die IPv6-Adresse des VPN-Servers im VPN direkt als Ziel der Route angegeben werden.
|
Da der Platzhalter \texttt{vpn\_gateway} für IPv6-Routen leider nicht funktioniert, muss hier die IPv6-Adresse des VPN-Servers im VPN direkt als Ziel der Route angegeben werden.
|
||||||
|
|
||||||
\paragraph{Kompression}
|
\paragraph{Kompression}
|
||||||
Auf die Kompression des VPN-Datenverkehrs wird aus Sicherheits\-grün\-den verzichtet.
|
Auf die Kompression des VPN-Datenverkehrs wird aufgrund der in diesem Absatz aufgeführten Punkte verzichtet.
|
||||||
Am 03.06.2018 wurden Hinweise in der Manpage von OpenVPN eingefügt\footnote{\url{https://github.com/OpenVPN/openvpn/commit/6795a5f3d55f658fc1a28eb9f3b11d1217e3329c}}, in denen vor der Verwendung von Kompression gewarnt wird.
|
Am 03.06.2018 wurden Hinweise in der Manpage von OpenVPN eingefügt\footnote{\url{https://github.com/OpenVPN/openvpn/commit/6795a5f3d55f658fc1a28eb9f3b11d1217e3329c}}, in denen vor der Verwendung von Kompression gewarnt wird.
|
||||||
Diese Hinweise sind in der Manpage von OpenVPN in Version~2.4.6 noch nicht enthalten, da diese Version von den Entwicklern bereits am 19.04.2018\footnote{\url{https://github.com/OpenVPN/openvpn/releases/tag/v2.4.6}} freigegeben wurde.
|
Diese Hinweise sind in der Manpage von OpenVPN in Version~2.4.6 noch nicht enthalten, da diese Version von den Entwicklern bereits am 19.04.2018\footnote{\url{https://github.com/OpenVPN/openvpn/releases/tag/v2.4.6}} freigegeben wurde.
|
||||||
Zusätzlich wird in der \enquote{Best Current Practice} RFC~7525 zur Deaktivierung der Kompression von TLS geraten\cite[Vergleich][Kapitel 3.3]{RFC7525}.
|
Zusätzlich wird in der \enquote{Best Current Practice} RFC~7525 zur Deaktivierung der Kompression von TLS geraten\cite[Vergleich][Kapitel 3.3]{RFC7525}.
|
||||||
|
|
||||||
Auf der DEFCON~26 wurde mit \enquote{VORACLE} ein in diesem Kontext relevanter Angriff auf OpenVPN vorgestellt\footnote{\url{https://media.defcon.org/DEF\%20CON\%2026/DEF\%20CON\%2026\%20presentations/Nafeez/DEFCON-26-Nafeez-Compression-Oracle-attacks-on-VPN-Networks.pdf}}, der die Verwendung von Kompression ausnutzt.
|
Auf der DEFCON~26 wurde mit \enquote{VORACLE} ein in diesem Kontext relevanter Angriff auf OpenVPN vorgestellt\footnote{\url{https://media.defcon.org/DEF\%20CON\%2026/DEF\%20CON\%2026\%20presentations/Nafeez/DEFCON-26-Nafeez-Compression-Oracle-attacks-on-VPN-Networks.pdf}}, der die Verwendung von Kompression ausnutzt.
|
||||||
|
|
||||||
\paragraph{Absicherung der Kommunikation}
|
\paragraph{Zertifikatgestützte Authentisierung}
|
||||||
Wie in Abschnitt~\ref{ssct:openvpn} bereits erläutert wurde, unterscheidet OpenVPN bei der Kommunikation zwischen zwei OpenVPN-Prozessen zwischen Datenkanal für Nutzdaten und Kontrollkanal für Steuernachrichten.
|
Um die in Kapitel~\ref{cpt:user_concept} konzipierte Zertifizierungsstelle zur Benutzerauthentisierung zu verwenden und die VPN-Kommunikation nach Anforderung~\ref{req:traffic} aus Abschnitt~\ref{sct:requirements} abzusichern, wird OpenVPN im TLS-Modus betrieben.
|
||||||
Um die VPN-Kommunikation nach Anforderung~\ref{req:traffic} aus Abschnitt~\ref{sct:requirements} abzusichern und die in Kapitel~\ref{cpt:user_concept} konzipierte Zertifizierungsstelle zur Benutzerauthentisierung zu verwenden, wird OpenVPN im TLS-Modus betrieben.
|
|
||||||
|
|
||||||
Dadurch werden in der Client- und Serverkonfiguration über die Parameter \texttt{ca}, \texttt{cert} und \texttt{key} Dateipfade konfiguriert, unter denen das Wurzelzertifikat, das Client- beziehungsweise Serverzertifikat und der dazugehörige private Schlüssel abgelegt sind.
|
In der \textbf{Clientkonfiguration} wird dafür der Parameter \texttt{tls-client} gesetzt, in der \textbf{Serverkonfiguration} wird analog dazu der Parameter \texttt{tls-server} verwendet.
|
||||||
|
|
||||||
|
Anschließend werden in der \textbf{Client- und Serverkonfiguration} über die Parameter \texttt{ca}, \texttt{cert} und \texttt{key} Dateipfade konfiguriert, unter denen das Wurzelzertifikat, das Client- beziehungsweise Serverzertifikat und der dazugehörige private Schlüssel abgelegt sind.
|
||||||
In der \textbf{Serverkonfiguration} werden zusätzlich über die Parameter \texttt{dh} und \texttt{crl-verify} Dateipfade angegeben, unter dene die im Voraus berechneten Parameter für den Diffie-Hellman-Schlüsselaustausch und die aktuelle Kopie der von der CA herausgegebenen CRL abgespeichert sind.
|
In der \textbf{Serverkonfiguration} werden zusätzlich über die Parameter \texttt{dh} und \texttt{crl-verify} Dateipfade angegeben, unter dene die im Voraus berechneten Parameter für den Diffie-Hellman-Schlüsselaustausch und die aktuelle Kopie der von der CA herausgegebenen CRL abgespeichert sind.
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
ca inform/ca.crt
|
ca inform/ca.crt
|
||||||
|
@ -606,7 +607,18 @@ dh inform/dh.pem
|
||||||
crl-verify inform/crl.pem
|
crl-verify inform/crl.pem
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
|
|
||||||
|
Um zu unterbinden, dass Clientzertifikate zum Betrieb eines OpenVPN-Servers verwendet werden, wird mit dem Parameter \texttt{remote-cert-tls} in der \textbf{Clientkonfiguration} angegeben, dass von der Gegenseite ein Zertifikat mit \enquote{Serverrolle} präsentiert wird:
|
||||||
|
\begin{lstlisting}
|
||||||
|
remote-cert-tls server
|
||||||
|
\end{lstlisting}
|
||||||
|
Analog dazu wird in der \textbf{Serverkonfiguration} mit dem selben Parameter verlangt, dass VPN-Clients immer ein Zertifikat mit \enquote{Clientrolle} besitzen.
|
||||||
|
\begin{lstlisting}
|
||||||
|
remote-cert-tls client
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\paragraph{Kryptografische Parameter}
|
||||||
|
Wie in Abschnitt~\ref{ssct:openvpn} bereits erläutert wurde, unterscheidet OpenVPN bei der Kommunikation zwischen zwei OpenVPN-Prozessen zwischen Datenkanal für Nutzdaten und Kontrollkanal für Steuernachrichten.
|
||||||
|
In diesem Absatz werden die Parameter definiert, die
|
||||||
|
|
||||||
Wir sprechen nur TLS~1.2 oder höher.
|
Wir sprechen nur TLS~1.2 oder höher.
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
|
@ -624,7 +636,7 @@ Verschlüsselung der Daten im Datenkanal mit AES-256-GCM.
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
cipher AES-256-GCM
|
cipher AES-256-GCM
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
Die Aushandlung dieses Ciphers ist auf der Serverseite deaktiviert mit ncp-disable
|
Die Aushandlung dieses Ciphers ist auf der Serverseite deaktiviert mit \texttt{ncp-disable}
|
||||||
|
|
||||||
|
|
||||||
Die Hashfunktion SHA-256 wird als message digest algorithm in HMAC verwendet, um die Pakete in Daten- und Kontrollkanal zu authentisieren.
|
Die Hashfunktion SHA-256 wird als message digest algorithm in HMAC verwendet, um die Pakete in Daten- und Kontrollkanal zu authentisieren.
|
||||||
|
|
Loading…
Reference in New Issue