Autosave
This commit is contained in:
parent
db6cea9028
commit
5fa44397f9
|
@ -515,12 +515,12 @@ Jeglicher weiterer Datenverkehr aus dem VPN-Netz heraus ist gestattet.
|
||||||
|
|
||||||
|
|
||||||
\section{Konfiguration von OpenVPN}
|
\section{Konfiguration von OpenVPN}
|
||||||
Nach der Einrichtung des Servers wird in diesem Schritt die Konfiguration des OpenVPN-Servers im Detail erläutert.
|
Nach Einrichtung des Servers wird in diesem Schritt die Konfiguration des OpenVPN-Servers im Detail erläutert.
|
||||||
Nähere Informationen zu den verwendeten Optionen können in \cite[][]{man:openvpn} nachgeschlagen werden.
|
Nähere Informationen zu den verwendeten Optionen können in \cite[][]{man:openvpn} nachgeschlagen werden.
|
||||||
|
|
||||||
\paragraph{Erreichbarkeit des Dienstes}
|
\paragraph{Erreichbarkeit des Dienstes}
|
||||||
Laut Anforderung~\ref{req:dualstack} aus Abschnitt~\ref{sct:requirements} soll der VPN-Dienst über IPv4 und IPv6 aus dem Internet erreichbar sein.
|
Laut Anforderung~\ref{req:dualstack} aus Abschnitt~\ref{sct:requirements} soll der VPN-Dienst über IPv4 und IPv6 aus dem Internet erreichbar sein.
|
||||||
Als Ausgangspunkt dafür wird der DNS-Name des VPN-Dienst verwendet, der auf die IPv4- und IPv6-Dienstadresse zeigt.
|
Als Ausgangspunkt dafür wird der DNS-Name des VPN-Dienst verwendet, der auf die IPv4- und IPv6-Dienst\-adresse zeigt.
|
||||||
|
|
||||||
In der \textbf{Serverkonfiguration} reichen die ersten drei Zeilen aus, um über IPv4 und IPv6 auf UDP-Port~1194 den VPN-Dienst anzubieten:
|
In der \textbf{Serverkonfiguration} reichen die ersten drei Zeilen aus, um über IPv4 und IPv6 auf UDP-Port~1194 den VPN-Dienst anzubieten:
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
|
@ -529,7 +529,7 @@ proto udp
|
||||||
proto udp6
|
proto udp6
|
||||||
multihome
|
multihome
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
OpenVPN beantwortet damit Anfragen für alle auf dem Server konfigurierten IP-Adressen.
|
OpenVPN beantwortet damit Anfragen für alle auf dem Server konfigurierten IP-Adres\-sen.
|
||||||
Da auf dem Server neben den Dienstadressen auch die Maschinenadressen existieren, wird OpenVPN mit \texttt{multihome} angewiesen, eingehende Pakete mit der IP-Adresse zu beantworten, an die diese Pakete gerichtet waren.
|
Da auf dem Server neben den Dienstadressen auch die Maschinenadressen existieren, wird OpenVPN mit \texttt{multihome} angewiesen, eingehende Pakete mit der IP-Adresse zu beantworten, an die diese Pakete gerichtet waren.
|
||||||
|
|
||||||
In der \textbf{Clientkonfiguration} wird OpenVPN mit \texttt{nobind} angewiesen, den Clientsocket nicht an eine lokale Adresse zu binden. Die Angaben \texttt{port} und \texttt{proto} legen fest, wie der VPN-Server zu erreichen ist.
|
In der \textbf{Clientkonfiguration} wird OpenVPN mit \texttt{nobind} angewiesen, den Clientsocket nicht an eine lokale Adresse zu binden. Die Angaben \texttt{port} und \texttt{proto} legen fest, wie der VPN-Server zu erreichen ist.
|
||||||
|
@ -547,7 +547,7 @@ Bei Interesse kann eine detaillierte Analyse der Probleme der TCP-in-TCP-Situati
|
||||||
|
|
||||||
\paragraph{IP-Adressen im VPN-Tunnel}
|
\paragraph{IP-Adressen im VPN-Tunnel}
|
||||||
Die vom IT-Team vergebenen IP-Adressbereiche für VPN-Clients werden durch den OpenVPN-Server an die Clients vergeben.
|
Die vom IT-Team vergebenen IP-Adressbereiche für VPN-Clients werden durch den OpenVPN-Server an die Clients vergeben.
|
||||||
In der Clientkonfiguration sind keine Anweisungen notwendig.
|
In der Konfiguration des Clients sind keine Anweisungen notwendig.
|
||||||
Die \textbf{Serverkonfiguration} enthält diese Anweisungen:
|
Die \textbf{Serverkonfiguration} enthält diese Anweisungen:
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
topology subnet
|
topology subnet
|
||||||
|
@ -590,7 +590,7 @@ Am 03.06.2018 wurden Hinweise in der Manpage von OpenVPN eingefügt\footnote{\ur
|
||||||
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 auf aktivierter Kompression aufbaut.
|
||||||
|
|
||||||
\paragraph{Zertifikatgestützte Authentisierung}
|
\paragraph{Zertifikatgestützte Authentisierung}
|
||||||
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 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.
|
||||||
|
@ -634,7 +634,8 @@ Diese Chiffre wird für die Absicherung des Kontrollkanals verwendet.
|
||||||
\begin{lstlisting}
|
\begin{lstlisting}
|
||||||
tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
|
tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
|
||||||
\end{lstlisting}
|
\end{lstlisting}
|
||||||
Die Verwendung einer verwandten Chiffre, die anstelle des Diffie-Hellman-Schlüssel\-aus\-tausch ein Diffie-Hellman-Verfahren auf Basis von elliptischen Kurven verwendet, kann aufgrund von bestehenden Kompatibilitätsproblemen zwischen OpenVPN-Clients und OpenSSL~1.1.x nicht eingesetzt werden\footnote{Es existiert ein Problem in Kombination mit OpenSSL~1.1.x. Siehe \url{https://community.openvpn.net/openvpn/ticket/963}}.
|
\textbf{Anmerkung}: TLS-Chiffren mit Diffie-Hellman-Verfahren auf Basis von elliptischen Kurven können nicht verwendet werden.
|
||||||
|
Grund dafür sind Kompatibilitätsproblemen zwischen OpenVPN und OpenSSL~1.1.x auf der Clientseite\footnote{Siehe \url{https://community.openvpn.net/openvpn/ticket/963}}.
|
||||||
|
|
||||||
OpenVPN verwendet eine HMAC-Funktion mit einem zuvor ausgetauschen, gemeinsamen Geheimnis um für Daten- und Kontrollkanal eingehende Datenpakete vor ihrer Verarbeitung zu authentisieren.
|
OpenVPN verwendet eine HMAC-Funktion mit einem zuvor ausgetauschen, gemeinsamen Geheimnis um für Daten- und Kontrollkanal eingehende Datenpakete vor ihrer Verarbeitung zu authentisieren.
|
||||||
Die in der HMAC-Funktion verwendete Hashfunktion wird auf SHA-256 festgelegt.
|
Die in der HMAC-Funktion verwendete Hashfunktion wird auf SHA-256 festgelegt.
|
||||||
|
|
Loading…
Reference in New Issue