Explain why EasyRSAv3 was chosen
This commit is contained in:
parent
d38c937b26
commit
0f2045824c
|
@ -329,25 +329,25 @@ Unter Abwägung dieser Vor- und Nachteile werden im Rahmen dieser Arbeit Zertifi
|
|||
|
||||
\section{Konzeption der Zertifizierungsstelle} \label{sct:ca_concept}
|
||||
Die VPN-Software OpenVPN bringt OpenSSL als Abhängigkeit mit.
|
||||
OpenSSL stellt eine Menge von Funktionen als Kommandozeilenwerkzeug zur Verfügung, mit denen alle Basisfunktionen einer Zertifizierungsstelle wie zum Beipiel die Erzeugung von Schlüsselpaaren und Zertifikatsanträgen, sowie das Ausstellen von Zertifikaten auf Basis von Zertifikatsanträgen möglich ist.
|
||||
OpenSSL stellt eine Menge von Funktionen als Kommandozeilenwerkzeug zur Verfügung, mit denen alle Basisfunktionen einer Zertifizierungsstelle wie zum Beipiel die Erzeugung von Schlüssel\-paaren und Zertifikatsanträgen, sowie das Ausstellen von Zertifikaten auf Basis von Zertifikatsanträgen möglich ist.
|
||||
Im Prinzip ist es möglich, durch manuelle Bedienung von OpenSSL eine \textit{Zertifizierungsstelle} (CA) zu betreiben.
|
||||
Diese Vorgehensweise verlangt jedoch Fachwissen und Sorgfalt von den Betreibern der CA und eignet sich aufgrund des hohen Aufwands nur für die Verwaltung weniger Benutzer oder zu Zwecken der Lehre.
|
||||
|
||||
Mit der Installation von OpenVPN wird die Installation der Software \enquote{EasyRSA} durch den Debian-Paketmanager empfohlen, welches ebenfalls von den OpenVPN-Entwicklern geschrieben wurde.
|
||||
Dieses Paket enthält eine Sammlung von Shellskripten, welche die Funktionalität von OpenSSL kapseln um damit einen erleichterten Betrieb einer CA zu ermöglichen.
|
||||
Die enthaltenen Skripte abstrahieren allgemeine Aufgaben für den Betrieb einer CA.
|
||||
Das enthält die Erzeugung eines Wurzelzertifikats, das Erzeugen von Zertifikatsanträgen, das Ausstellen von Client- oder Serverzertifikaten auf Basis von Zertifikatsanträgen und das Erzeugen einer \textit{Certificate Revocation List}(CRL).
|
||||
Dabei ist es durch Anpassen von Konfigurationsdateien möglich, eine CA ganz nach den eigenen Bedürfnissen zu betreiben und Einfluss auf Parameter wie zum Beispiel Schlüssellängen, Laufzeiten von Zertifikaten oder verwendete kryptografische Algorithmen zu nehmen.
|
||||
|
||||
Da wir Zertifikate auch unbrauchbar machen wollen, muss es möglich sein Zertifikate zu widerrufen.
|
||||
Eine CRL muss erzeugt werden können, damit diese im OpenVPN-Dienst für die Prüfung der Gültigkeit der Zertifikate verwendet werden kann.
|
||||
Aufgrund der Vorteile von EasyRSA in Bezug auf vereinfachter Konfiguration und erleichterter Bedienung für CA-Betreiber und Benutzer im Vergleich zur manuellen Umsetzung einer CA wird entschieden, EasyRSA für den Aufbau der Zertifizierungsstelle zu verwenden.
|
||||
Diese Entscheidung wird untermauert von der Tatsache, dass sowohl EasyRSA als auch OpenVPN von den selben Entwicklern weiterentwickelt wird, sodass Kompatibilität zwischen den beiden Softwareprojekten zu erwarten ist.
|
||||
Die Notwendigkeit zum selbstständigen Entwickeln von Skripten zum Erreichen eines ähnlichen Funktionsumfangs ergibt sich somit nicht.
|
||||
|
||||
Jetzt kann man viel Zeit investieren, die notwendigen Skripte selbst zu schreiben.
|
||||
Allerdings hat OpenVPN bereits eine Abhängigkeit auf die Skriptesammlung EasyRSA, welche exakt für diesen Zweck gebaut wurde.
|
||||
Die von Debian 9 mitgelieferte Version 2.3.x ist schon etwas älter, könnte aber verwendet werden.
|
||||
Allerdings gibt es auch eine modernere Neuentwicklung in Version 3.0.5(Stand 17.09.2018, siehe github.com/openvpn/easyrsa), die langfristig vom OpenVPN-Team weiterentwickelt wird und einige Verbesserungen im Vergleich zur alten v2 mitbringt.
|
||||
Das über Debian 9 beziehbare Paket enthält EasyRSA in Version 2.3.x.
|
||||
Die zum aktuellen Zeitpunkt (01.10.2018) über GitHub\footnote{\url{https://github.com/OpenVPN/easy-rsa/releases/tag/v3.0.5}} beziehbare Version von EasyRSA trägt die Nummer 3.0.5.
|
||||
EasyRSA wurde in Version 3 von Grund auf neu geschrieben und verfügt über ein im Vergleich zu EasyRSA Version 2 vereinfachtem Benutzerinterface, welches nun von einem einzigen Kommandozeilenbefehl zur Verfügung gestellt wird.
|
||||
Zusätzlich hinzugekommen sind neue Features wie etwa die Unterstützung des Elliptic-Curve-Kryptosystems, Unterstützung von UTF-8 oder die Verwendung von AES256 zum Verschlüsseln von privaten Schlüsseln\footnote{Vergleich Changelog: \url{https://github.com/OpenVPN/easy-rsa/blob/v3.0.5/ChangeLog}}.
|
||||
|
||||
Kurz: EasyRSA2.2.3 aus Debian vs EasyRSA3.x direkt von Github vs irgendwie selbst Skripte schreiben (Wieso das Rad neu erfinden?) - Vorteile/Nachteile
|
||||
Gegebenenfalls. kurz ein Blick darauf, was alles für Features benötigt werden.
|
||||
EasyRSAv3 ist eine Neuentwicklung von EasyRSA2.
|
||||
Die neue Version wird vom OpenVPN-Team weiter entwickelt werden.
|
||||
Vereinfachte Benutzung der zur Verfügung gestellten Shellskripte
|
||||
Viele Verbesserungen, wie z.B. Unterstützung für ECDSA (Siehe Changelog) oder UTF-8 ist jetzt standard, AES256 wird für die Verschlüsselung des CA-Keys verwendet, \dots
|
||||
|
||||
Da für die Anfertigung von Zertifikatsanträgen einige Details beachtet werden sollen und diverse Einstellungen durch die Zertifizierungsstelle vorgegeben bzw. vorausgesetzt werden, ist es sinnvoll, dass die CA durch das IT-Team auf Basis von EasyRSA3 kurz vorbereitet wird und dann als Paket für Benutzer bereitgestellt wird.
|
||||
|
||||
|
|
Loading…
Reference in New Issue