Trusted Certificate Services (TCS)
Mittels der Trusted Certificate Services (TCS) werden X.509-Zertifikate erstellt, um z.B. einen Webserver zu identifizieren und eine Transportverschlüsselung via SSL bzw. HTTPS herzustellen. TCS löst das Angebot der Private-Key-Infrastruktur (PKI) des Deutschen Forschungsnetzwerkes (DFN e.V.) ab.
Es sind vier Schritte erforderlich. Einzelne Schritte könne für mehr Details über die grünen Dreiecke aufgeklappt werden.
Checkliste
-
PKCS10 Datei mittels openSSL lokal erstellenopenSSL ist ein Bordmittel vieler Linux-Systeme, das aber auch für Windows installiert werden kann. Das System, auf dem kryptografische Schlüssel erzeugt werden, muss vertrauenswürdig sein. Insbesondere der private Schlüssel / Private Key ist schützenswert, weil hierüber der rechtmäßige Inhaber des Zertifikates nachgewiesen wird und es bei einer Kompromittierung zu einem Identitätsdiebstahl kommen kann.
Um die Kommandozeile nicht zu überladen, werden mehrere Angaben in einer Konfigurationsdatei 'cert.conf' ausgelagert, die im gleichen Ordner liegen muss. Inhalt von 'cert.conf' steht zwischen den Gleichzeichen. Die Platzhalter HOSTNAME und SUBDOMAIN müssen ersetzt werden, beispielsweise zu wiki.rz.tuhh.de
==================================================[ req ] prompt = no distinguished_name = req_distinguished_name req_extensions = req_exts [ req_distinguished_name ] countryName = DE stateOrProvinceName = Hamburg localityName = Hamburg organizationName = Technische Universitaet Hamburg commonName = HOSTNAME.SUBDOMAIN.tuhh.de [ req_exts ] subjectAltName = @alt_names [ alt_names ] DNS.0=HOSTNAME.SUBDOMAIN.tuhh.de DNS.1=HOSTNAME.SUBDOMAIN.tu-harburg.de DNS.2=HOSTNAME.SUBDOMAIN.tu-hamburg.de DNS.3=HOSTNAME2.SUBDOMAIN.tuhh.de DNS.4=HOSTNAME2.SUBDOMAIN.tu-harburg.de DNS.5=HOSTNAME2.SUBDOMAIN.tu-hamburg.de
==================================================
Der Aufruf ist dann:
openssl req -config cert.conf -sha256 -newkey rsa:3072 -keyout pkey.pem -out csr.pem
Der openSSL Aufruf enthält folgende Parameter
-config cert.confDateiname und ggf. Pfad der Konfigurationsdatei
-sha256Verschlüsselungsalgorithmus, hier SHA-2 bzw. SHA-256
-newkey rsa:3072Länge und Art der erzeugten Schlüssel, hier RSA mit 3072 Bit (kürzer 2048, länger 4096 Bit)
-passout pass:Setzt ein Passwort für den privaten Schlüssel. In diesem Beispiel ist das Passwort leer für einen Serverbetrieb. Achten Sie darauf, dass nur Sie oder root den privaten Schlüssel lesen können und der Schlüssel Ihren Rechner oder den Zielserver nicht verlässt!
-keyout pkey.pemPrivate Key bzw. privater Schlüssel, üblicherweise mit einer Passphrase geschützt
-out csr.pemCertificate Signing Request (CSR), der Zertifikatsantrag, der hochgeladen wird
DercommonNamedes Servers wiederholt sich in der Angabe fürDNS.0. Weitere Aliase können fortlaufend durchnummeriert ergänzt werden. Im obigen Beispiel gibt es einen zweiten Hostnamen. Beide sind für die Domains der TUHH (tuhh.de, tu.harburg.de, tu-hamburg.de) eingetragen.
Das gleiche geht auch als einzeiliger Kommandobefehl:
openssl req -sha256 -newkey rsa:3072 -passout pass: -keyout pkey.pem -out csr.pem -subj "/C=DE/ST=Hamburg/L=Hamburg/O=Technische Universitaet Hamburg/CN=HOSTNAME.SUBDOMAIN.tuhh.de" -addext "subjectAltName = DNS:HOSTNAME.SUBDOMAIN.tuhh.de, DNS:HOSTNAME.SUBDOMAIN.tu-harburg.de, DNS:HOSTNAME.SUBDOMAIN.tu-hamburg.de, DNS:HOSTNAME2.SUBDOMAIN.tuhh.de, DNS:HOSTNAME2.SUBDOMAIN.tu-harburg.de, DNS:HOSTNAME2.SUBDOMAIN.tu-hamburg.de"
-
Im TCS Portal einloggen und PKCS10 Datei hochladenDie TUHH hat als Mitglied des DFN Zugang zur TCS. Die Anmeldung erfolgt mit dem TUHH Account über den RZ Shibboleth Server:Zur TCS Einstiegsseite:
https://cert-manager.com/customer/DFN/ssl/sslsaml
- Wählen Sie die Institution aus. Your Institution
- Es öffnet sich ein Suchfenster. Geben Sie dort tuhh ein.
- Sie werden zum TUHH Shibboleth Login weitergeleitet. Melden Sie sich dort mit Ihrem TUHH-Accout an.
- Sollten Sie nach der Weiterleitung zurück nur eine weiße Seite sehen, dann warten Sie oder rufen die Seite noch einmal auf: https://cert-manager.com/customer/DFN/ssl/sslsaml
- Zum stellen eines neuen Zertifikatsantrags, wählen Sie auf der Seite SSL Certificate Enrollment im zweiten Abschnitt unter Select Enrollment Account als Account den Eintrag Technische Universität Hamburg (TUHH) und fahren Sie mit Next fort.
- Nehmen Sie folgende Angaben vor:
- Certificate-Profile *: OV Multi-Domain
- Certificate Term *: 1 Year
- Upload CSR oder CSR *: csr.pem (nicht den privaten Schlüssel!) hochladen bzw. dessen Inhalt in das Textfeld einfügen
- Submit
Nach dem Abschicken bekommen Sie eine E-Mail und sehen den Antrag in der Liste auf folgender Unterseite: https://cert-manager.com/customer/DFN/ssl/sslsaml/list
-
Nach Freigabe durch das RZ das Zertifikat abrufen
-
Zertifikat und Private Key im Server konfigurierenJe nach Anwendungsfall müssen der private Schlüssel, das signierte Zertifikat sowie die Chain-of-Trust eingebunden werden. Einige Systeme behandeln diese einzeln, andere nehmen die Chain-of-Trust mit in das signierte Zertifikat, wiederum andere fassen alles drei in einer Datei (PKCS12) zusammen.
Einzelne Konfigurationsbeispiele befinden sich unter SSL-Server konfigurieren.