26.02.2014 Aufrufe

ADMIN Magazin Gestapelt - Schneller und sicherer mit RAID (Vorschau)

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Login<br />

Admin-Story<br />

© schiffner, Photocase<br />

Wegweiser duch Crypto-Bibliotheken <strong>und</strong> ‐Services<br />

Im Dickicht<br />

Der Einsatz von Crypto-Bibliotheken kann manchmal etwas umständlich<br />

sein. Dass hiervon gleich eine ganze Handvoll existieren, erleichert die<br />

Sache nicht unbedingt. Der folgende Artikel versucht, ein wenig Licht ins<br />

Dunkel zu bringen <strong>und</strong> erklärt den Einsatz der Network Security Services<br />

(NSS) <strong>und</strong> OpenSSL im Zusammenhang <strong>mit</strong> X.509-Zertifikaten. Thorsten Scherf<br />

Linux lässt einem bei nahezu allem die<br />

Wahl zwischen einer Vielzahl von Alternativen,<br />

warum sollte dies also bei<br />

Crypto-Frameworks anders sein? Auf<br />

proprietären Systemen hat man sich<br />

meistens auf ein bestimmtes Framework<br />

festgelegt (beispielsweise die CryptoAPI<br />

bei Microsoft Windows) <strong>und</strong> passt die<br />

Standard-Applikationen daraufhin an, bei<br />

Linux existieren neben den bekannten<br />

OpenSSL <strong>und</strong> den Network Security Services<br />

auch noch BeeCrypt, Cyrus SASL,<br />

libgcrypt, GnuTLS <strong>und</strong> diverse andere<br />

Implementierungen.<br />

Große Auswahl<br />

Dabei versuchen nahezu alle Frameworks<br />

das gleiche Problem zu lösen oder<br />

ähnliche Lösungen für bestimmte Anwendungsfälle<br />

anzubieten, also beispielsweise<br />

eine Implementierung für das TLS/​<br />

SSL-Protokoll, für S/​MIME, für Crypto-<br />

Algorithmen <strong>und</strong> Hash-Funktionen, Zufallszahlen-Generatoren<br />

<strong>und</strong> Ähnliches.<br />

Hier den Überblick zu behalten, ist nicht<br />

wirklich einfach. Zumal es dem Entwickler<br />

einer Anwendung natürlich freigestellt<br />

ist, welches Crypto-Framework<br />

er für seine Applikation verwendet. Ob<br />

die Auswahl des Frameworks auf dem<br />

System, auf dem die Anwendung einmal<br />

laufen wird, zu Problemen führt, ist nicht<br />

wirklich sichergestellt.<br />

Ein kleines Beispiel: Die Anwendung<br />

nutzt die Network Security Services <strong>und</strong><br />

erwartet Benutzerzertifikate in einem<br />

Berkley-DB basierten Zertifikatsspeicher.<br />

Der Benutzer hat sein X.509-Zertifikat<br />

aber als PEM-codierte Datei auf dem<br />

Dateisystem liegen <strong>und</strong> weiß nichts von<br />

einer Berkley-DB. Hier ist erst einmal etwas<br />

Handarbeit gefragt, bevor schließlich<br />

das Benutzerzertifikat als PKCS#12<br />

Datei in die Berkely-DB geschoben werden<br />

kann. Das Fedora-Projekt hat sich<br />

vor einiger Zeit zum Ziel gesetzt, diesen<br />

Wildwuchs etwas einzudämmen <strong>und</strong> ein<br />

Crypto-Framework gesucht, das einen<br />

breiten Funktionsumfang, hohe Portabilität<br />

<strong>und</strong> ein flexibles Lizenzierungsmodell<br />

bietet. Betrachtet man die Anforderungen,<br />

so kommen hierfür eigentlich<br />

nur OpenSSL <strong>und</strong> die Network Security<br />

Services (NSS) infrage.<br />

OpenSSL ist in der OpenSource-Community<br />

sehr gut bekannt <strong>und</strong> hat die erste<br />

OpenSource-Implementierung für SSL zur<br />

Verfügung gestellt, hat einen hohen Verbreitungsgrad<br />

auf Unix-artigen Systemen<br />

<strong>und</strong> verwendet ein duales Lizenzierungsmodell<br />

– es kommen die BSD-artigen Lizenzen<br />

SSLeay <strong>und</strong> OpenSSL zum Einsatz.<br />

NSS ist das ältere Framework <strong>und</strong> hat von<br />

Haus aus einen höheren Funktionsumfang<br />

als OpenSSL. Der Zertifikatsspeicher<br />

besteht aus einer Berkeley-Datenbank,<br />

anders als bei OpenSSL, wo Zertifikate<br />

in regulären Dateien abgelegt sind. NSS<br />

verwendet ein dreistufiges Lizenzierungsmodell,<br />

bestehend aus der Mozilla, der<br />

GNU General <strong>und</strong> der GNU Lesser General<br />

Public License.<br />

OpenSSL oder NSS<br />

Heute setzt der Großteil der Fedora-Applikationen<br />

NSS als Crypto-Framework<br />

ein, andere Anwendungen benutzen<br />

OpenSSL oder lassen dem Benutzer die<br />

Wahl zwischen dem einen oder dem<br />

anderen Framework. Ein gutes Beispiel<br />

hierfür ist der bekannte Webserver<br />

Apache. TLS/​SSL-Support stellt dieser<br />

seit jeher über das Modul »mod_ssl« zur<br />

Verfügung. Vor einiger Zeit bereits wurde<br />

daneben das Modul »mod_nss« für den<br />

Einsatz der Network Security Services<br />

entwickelt. Dem Admin steht es frei, das<br />

eine oder das andere Modul einzusetzen.<br />

Ähnlich ist es auch auf der Client-<br />

Seite. OpenLDAP kann beispielsweise <strong>mit</strong><br />

18 Ausgabe 06-2012 Admin www.admin-magazin.de

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!