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.
Zertifikate der DFN-PKI können nur noch bis zum 30.12.2022 beantragt werden. Die Laufzeit der ausgestellten Zertifikate ist nicht beinträchtigt. Für Serverzertifikate beträgt die Laufzeit der DFN-PKI 13 Monate.
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 erstellen
    openSSL 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.conf
    Dateiname und ggf. Pfad der Konfigurationsdatei
    -sha256
    Verschlüsselungsalgorithmus, hier SHA-2 bzw. SHA-256
    -newkey rsa:3072
    Lä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.pem
    Private Key bzw. privater Schlüssel, üblicherweise mit einer Passphrase geschützt
    -out csr.pem
    Certificate Signing Request (CSR), der Zertifikatsantrag, der hochgeladen wird
    Der
    commonName
    des Servers wiederholt sich in der Angabe für
    DNS.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 hochladen
    Die TUHH hat als Mitglied des DFN Zugang zur TCS. Die Anmeldung erfolgt mit dem TUHH Account über den RZ Shibboleth Server:
    1. Wählen Sie die Institution aus. Your Institution
    2. Es öffnet sich ein Suchfenster. Geben Sie dort tuhh ein.
    3. Sie werden zum TUHH Shibboleth Login weitergeleitet. Melden Sie sich dort mit Ihrem TUHH-Accout an.
    4. 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
    5. 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.
    6. 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

    Zertifikat beantragen Zertifikat beantragen Zertifikat beantragen Zertifikat beantragen Zertifikat beantragen Zertifikat beantragen

    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
    Zertifikat beantragen Zertifikat beantragen
  • Nach Freigabe durch das RZ das Zertifikat abrufen
    Sie bekommen per E-Mail Bescheid. Neben dem Annahme des Antrags durch einen unserer Mitarbeiter erhalten Sie zusätzlich eine weitere E-Mail mit den Links zum Download des Signierten öffentlichen Schlüssels in verschiedenen Formaten.
    Zertifikat beantragen Zertifikat beantragen
  • Zertifikat und Private Key im Server konfigurieren
    Je 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.