Zum Inhalt springen

OpenVPN/Authentifizierung: Unterschied zwischen den Versionen

Aus Foxwiki
Die Seite wurde neu angelegt: „== Authentifizierung == Zur Authentifizierung stellt OpenVPN zwei wesentliche Methoden zur Verfügung === Pre-shared Key === ; Bei Austausch eines pre-shared key} * ein statischer Schlüssel/Passwort * werden die Daten mit diesem ver- und entschlüsselt * Dieses Verfahren ist einfach anzuwenden * Es wird beispielsweise bei kommerziellen Proxy-Anbietern, welche auch Anonymisierungsdienste auf Basis von OpenVPN anbieten, verwendet ; D…“
 
K Textersetzung - „z. B. “ durch „beispielsweise “
 
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 3: Zeile 3:


=== Pre-shared Key ===
=== Pre-shared Key ===
; Bei Austausch eines pre-shared key}
; Bei Austausch eines [[pre-shared key]]
* ein statischer Schlüssel/Passwort
* ein statischer Schlüssel/Passwort
* werden die Daten mit diesem ver- und entschlüsselt
* werden die Daten mit diesem ver- und entschlüsselt
Zeile 10: Zeile 10:


; Diese Methode hat zwei Nachteile
; Diese Methode hat zwei Nachteile
* Der Schlüssel kann durch unsachgemäßen Umgang [[Kompromittierung (Kryptologie)|kompromittiert]] werden (z. B. Aufschreiben, bei dem nach Gebrauch die Vernichtung vergessen wird)
* Der Schlüssel kann durch unsachgemäßen Umgang [[Kompromittierung (Kryptologie)|kompromittiert]] werden (beispielsweise Aufschreiben, bei dem nach Gebrauch die Vernichtung vergessen wird)
* Brutforce-Attacken auf den Schlüssel ähnlich wie bei einem Passwort
* Brutforce-Attacken auf den Schlüssel ähnlich wie bei einem Passwort


Zeile 17: Zeile 17:
* Eine Speicherung des Schlüssels sollte auf ein Notwendigstes reduziert werden, indem der Schlüssel nur auf den Endpunkten der VPN-Verbindung liegt
* Eine Speicherung des Schlüssels sollte auf ein Notwendigstes reduziert werden, indem der Schlüssel nur auf den Endpunkten der VPN-Verbindung liegt
* Das Notieren oder Eintragen des Schlüssels in einer Passwortverwaltung stellt ein zusätzliches Sicherheitsrisiko dar
* Das Notieren oder Eintragen des Schlüssels in einer Passwortverwaltung stellt ein zusätzliches Sicherheitsrisiko dar
* Auf dem Endgerät sollte der pre-shared-key durch ein Passwort verschlüsselt werden, um das Netzwerk bei Abhandenkommen des Gerätes nicht zu gefährden.<ref>{{Internetquelle |url=https://www.bsi.bund.de/SharedDocs/Downloads/DE/BSI/Internetsicherheit/isi_vpn_leitlinie_pdf.pdf?__blob=publicationFile&v=1#page=14 |titel=Virtuelles Privates Netz – BSI-Leitlinie zur Internet-Sicherheit |hrsg=[[Bundesamt für Sicherheit in der Informationstechnik]] |datum=2009 |zugriff=2018-09-18 }}</ref>
* Auf dem Endgerät sollte der pre-shared-key durch ein Passwort verschlüsselt werden, um das Netzwerk bei Abhandenkommen des Gerätes nicht zu gefährden


=== Zertifikate ===
=== Zertifikate ===
Zeile 31: Zeile 31:
* Der Client autorisiert das Zertifikat
* Der Client autorisiert das Zertifikat
* Bei beidseitiger Authentifizierung schickt der Client auch sein Zertifikat an den Server
* Bei beidseitiger Authentifizierung schickt der Client auch sein Zertifikat an den Server
* Hat die Überprüfung geklappt, erstellt der Client das {{lang|en|pre-master secret}}und verschlüsselt dies mit dem öffentlichen Schlüssel des Servers
* Hat die Überprüfung geklappt, erstellt der Client das "{{lang|en|pre-master secret}}" und verschlüsselt dies mit dem öffentlichen Schlüssel des Servers
* Der Server entschlüsselt die Daten mit seinem privaten Schlüssel und erstellt das {{lang|en|master-secret}}
* Der Server entschlüsselt die Daten mit seinem privaten Schlüssel und erstellt das "{{lang|en|master-secret}}"
* Mit diesem werden Sitzungsschlüssel erstellt
* Mit diesem werden Sitzungsschlüssel erstellt
* Das sind einmalige Schlüssel, mit denen die Daten ver- und entschlüsselt werden
* Das sind einmalige Schlüssel, mit denen die Daten ver- und entschlüsselt werden
Zeile 42: Zeile 42:
* Um die Sicherheit zu erhöhen, empfiehlt es sich, die Zertifikate auf einer [[Smartcard]] auszulagern
* Um die Sicherheit zu erhöhen, empfiehlt es sich, die Zertifikate auf einer [[Smartcard]] auszulagern
* OpenVPN unterstützt alle Karten, auf die mittels Windows-Crypto-API oder [[PKCS]] #11 zugegriffen werden kann
* OpenVPN unterstützt alle Karten, auf die mittels Windows-Crypto-API oder [[PKCS]] #11 zugegriffen werden kann
[[Kategorie:OpenVPN]]

Aktuelle Version vom 28. April 2025, 10:21 Uhr

Authentifizierung

Zur Authentifizierung stellt OpenVPN zwei wesentliche Methoden zur Verfügung

Pre-shared Key

Bei Austausch eines pre-shared key
  • ein statischer Schlüssel/Passwort
  • werden die Daten mit diesem ver- und entschlüsselt
  • Dieses Verfahren ist einfach anzuwenden
  • Es wird beispielsweise bei kommerziellen Proxy-Anbietern, welche auch Anonymisierungsdienste auf Basis von OpenVPN anbieten, verwendet
Diese Methode hat zwei Nachteile
  • Der Schlüssel kann durch unsachgemäßen Umgang kompromittiert werden (beispielsweise Aufschreiben, bei dem nach Gebrauch die Vernichtung vergessen wird)
  • Brutforce-Attacken auf den Schlüssel ähnlich wie bei einem Passwort
Daher sollte der gewählte Schlüssel in hinreichender Länge generiert werden und aus einem möglichst großen Zeichensatz bestehen
  • Der Schlüssel sollte nicht selbst wie ein Passwort gewählt werden
  • Eine Speicherung des Schlüssels sollte auf ein Notwendigstes reduziert werden, indem der Schlüssel nur auf den Endpunkten der VPN-Verbindung liegt
  • Das Notieren oder Eintragen des Schlüssels in einer Passwortverwaltung stellt ein zusätzliches Sicherheitsrisiko dar
  • Auf dem Endgerät sollte der pre-shared-key durch ein Passwort verschlüsselt werden, um das Netzwerk bei Abhandenkommen des Gerätes nicht zu gefährden

Zertifikate

Bei der Anwendung einer zertifikatbasierten Authentifizierung über das TLS-Protokoll werden private und öffentliche Schlüsselpaare beziehungsweise X.509-Zertifikate verwendet
Der Server und die jeweiligen Nutzer besitzen je ein eigenes Zertifikat (öffentlich/privat)
  • Der OpenVPN-Server lässt nur Verbindungen zu, die von einer ihm bekannten Zertifizierungsstelle signiert wurden
  • OpenVPN enthält Skripte, die die einfache Zertifikatserstellung ohne weitere Vorkenntnisse basierend auf OpenSSL ermöglichen (easy-rsa)
Um eine Verbindung aufzubauen, schickt der Client Daten an den Server (SSL-Version und zufällige Daten)
  • Der Server schickt die gleichen Daten und sein Zertifikat zurück
  • Der Client autorisiert das Zertifikat
  • Bei beidseitiger Authentifizierung schickt der Client auch sein Zertifikat an den Server
  • Hat die Überprüfung geklappt, erstellt der Client das "Vorlage:Lang" und verschlüsselt dies mit dem öffentlichen Schlüssel des Servers
  • Der Server entschlüsselt die Daten mit seinem privaten Schlüssel und erstellt das "Vorlage:Lang"
  • Mit diesem werden Sitzungsschlüssel erstellt
  • Das sind einmalige Schlüssel, mit denen die Daten ver- und entschlüsselt werden
  • Der Client teilt dem Server mit, dass ab nun alle Daten mit dem Sitzungsschlüssel verschlüsselt werden
  • Der Server bestätigt dies, der Tunnel ist aufgebaut
  • Nach einer gewissen Zeitspanne ersetzt OpenVPN den Sitzungsschlüssel automatisch
Die zertifikatbasierte Authentifizierung gilt als die sicherste Form der Anmeldung
  • Um die Sicherheit zu erhöhen, empfiehlt es sich, die Zertifikate auf einer Smartcard auszulagern
  • OpenVPN unterstützt alle Karten, auf die mittels Windows-Crypto-API oder PKCS #11 zugegriffen werden kann