Suche
Der Antrag zur Zertifizierung sollte in Absprache mit dem Rechenzentrum erfolgen.
In Anlehnung an den Leitfaden unseres Providers DFN wurden für die Fachhochschule Brandenburg folgende Festlegungen getroffen:
C = DE
ST = Brandenburg
L = Brandenburg
O = Fachhochschule Brandenburg
OU = ( in Absprache mit Rechenzentrum )
CN = ( Name des Servers Bsp. www.fh-brandenburg.de )
E = ( Emailadresse des Admin )
Übersicht bereits ausgestellter Server-Zertifikate.
Erstellen eines Schlüsselpaares mit Hilfe von "openssl"
Die folgende Anleitung zeigt die wesentlichen Schritte für die Erstellung eines Schlüssels. Eine ausführliche Dokumentation im Umgang mit openssl ist den Manuals zu entnehmen. Es werden keine Parameter im einzelnen erklärt. Hier auch der Verweis auf die man-pages.
Erzeugen eines "private key"
Hierbei handelt es sich um die Generierung des geheimen, nicht öffentlichen Schlüssels. Dieser darf niemals veröffentlicht werden und muss vor dem Zugriff durch Dritte geschützt werden.
Schlüsselgenerierung mit PEM pass phrase ( Achtung: Start des Webservers erfordert Eingabe der "PEM pass phrase" )
#>openssl genrsa -des3 -out server.key 1024
ODER Schlüsselgenerierung mit PEM pass phrase und einer zusätzlichen Zufallsdatei ( Achtung: Start des Webservers erfordert Eingabe der "PEM pass phrase" )
#>openssl genrsa -des3 -rand /var/adm/messages -out server.key 1024
Schlüsselgenerierung ohne PEM pass phrase ( automatischer Start des Webserver möglich )
#>openssl genrsa -out server_np.key 1024
Entfernen der PEM pass phrase eines zuvor mit PEM pass phrase generierten Schlüssels
#>openssl rsa -in server.key -out server_np.key
Erzeugen eines "public key"
Der öffentliche Schlüssel wird aus dem "private key" generiert. Mit diesem Schlüsselpaar erfolgt dann bei einem Verbindungsaufbau zwischen Server und Client die Verschlüsselung der Daten. Für die Zertifizierung durch eine CA muss ein sogenannter Request erzeugt werden.
Generierung des Request für das Zertifikat
#>openssl req -new -key server_np.key -out server.csr
Fingerprint des Modulus erzeugen - wird von der CA gefordert zur Überprüfung des Requests.
#>openssl req -noout -modulus -in server.csr | openssl sha1 -c
Request als Text ausgeben zur Ansicht
#>openssl req -noout -text -in server.csr
Nach Vollendung aller Formalitäten bekommt man von der CA seinen signierten Schlüssel. Die Schlüssel sind dann in den Webserver einzubinden. Im folgenden kurz erläutert für den Apache - Webserver.
Implementierung der Schlüssel in Apache + mod_ssl
Vorausgesetzt die Schlüssel sind auf dem Webserver gespeichert, beschränkt sich die Arbeit auf die Anpassung einiger Anweisungen in der Konfigurationsdatei httpd.conf.
# Server Certificate:
# öffentlicher key von der CA signiert
SSLCertificateFile <path>/<filename>
# Server Private Key:
# geheimer key
SSLCertificateKeyFile <path>/<filename>
# Server Certificate Chain:
# Zertifizierungskette, im Fall der FHB-CA, werden in dieser Datei die Keys der CA hinterlegt, die notwendig sind um die Kette bis zur Wurzel zu verfolgen
# Bsp.: das Server Zertifikat wurde mit dem FHB CA Server Key signiert, dieser vom FHB Top Level CA.
# mit Hilfe folgender Anweisung: "cat <filename FHB CA Server Key> <filename FHB Top Level CA Key> > <filename>"
# wird eine Zertifizierungskette erstellt. Hat der Benutzer zuvor einmalig das Wurzelzertifikat der CA geladen, übermittelt der Server die restlichen Schlüssel.
# Damit kann der Client/Browser/Benutzer die Kette bis zur Wurzel verfolgen und vertraut damit der Verbindung.
SSLCertificateChainFile <path>/<filename>
© 2011 FHB Rechenzentrum letzte Aktualisierung: 06.05.2011 Autor: [Thomas Bluhm]


