Benutzerspezifische Werkzeuge

Information zum Seitenaufbau und Sprungmarken fuer Screenreader-Benutzer: Ganz oben links auf jeder Seite befindet sich das Logo der JLU, verlinkt mit der Startseite. Neben dem Logo kann sich rechts daneben das Bannerbild anschließen. Rechts daneben kann sich ein weiteres Bild/Schriftzug befinden. Es folgt die Suche. Unterhalb dieser oberen Leiste schliesst sich die Hauptnavigation an. Unterhalb der Hauptnavigation befindet sich der Inhaltsbereich. Die Feinnavigation findet sich - sofern vorhanden - in der linken Spalte. In der rechten Spalte finden Sie ueblicherweise Kontaktdaten. Als Abschluss der Seite findet sich die Brotkrumennavigation und im Fussbereich Links zu Barrierefreiheit, Impressum, Hilfe und das Login fuer Redakteure. Barrierefreiheit JLU - Logo, Link zur Startseite der JLU-Gießen Direkt zur Navigation vertikale linke Navigationsleiste vor Sie sind hier Direkt zum Inhalt vor rechter Kolumne mit zusaetzlichen Informationen vor Suche vor Fußbereich mit Impressum


Artikelaktionen

Zertifikats-Ausstellung

Sofern Sie als Mitarbeiter der JLU ein SSL-Zertifikat beim HRZ beantragen wollen, finden Sie hier die geltenden Regeln (Policies) und Hinweise, wie privater und öffentlicher Schlüssel sowie Zertifikatsantrag zu erstellen sind und der Antrag einzureichen ist.

Einleitung

Das Hochschulrechenzentrum der Universität Gießen betreibt die SSL-Server-Zertifizierungsinstanz der Universität Gießen (Universitaet Giessen S CA [kurz UNI-GI S CA], SSL-Server Certification Authority der Universität Gießen). Die UNI-GI S CA ist von der Policy Certification Authority (PCA) des Vereins zur Förderung eines Deutschen Forschungsnetzes e. V. (DFN) zertifiziert und signiert derzeit nur Zertifikate nach X.509v3 für SSL-Server im Bereich der Universität Gießen (Domain *.uni-giessen.de).

Policy für die UNI-GI S CA

Die UNI-GI S CA ist in die Zertifizierungshierarchie der DFN-PCA eingebunden. Daher gelten für sie

Diese Policies enthalten auch Regelungen, die sich an Personen richten, die Zertifikate beantragen:

Vorgaben zur korrekten Verwendung von Zertifikaten aus der DFN-PKI durch die Zertifikatinhaber sind im Dokument "Information für Zertifikatinhaber": https://info.pca.dfn.de/doc/Info_Zertifikatinhaber.pdf beschrieben.

Diese dort beschriebenen Regelungen sind bindend und werden mit Beantragung des Zertifikats anerkannt.

Wegen der Einbindung in das Sicherheitsniveau Global der DFN-PKI erfolgt die eigentliche Zertifizierung auf einem vom DFN betriebenen, mit einem Hardware Security Module ausgestatten sicheren Rechner.

Beantragung von SSL-Server-Zertifikaten

Rezertifizierung

Das im folgenden genannte Verfahren gilt für die Beantragung eines unveränderten Nachfolge-Zertifikats.

Beachten Sie jedoch, dass seit ca. 9. Mai 2017 die Organization-Komponente des DN nunmehr ausschließlich "O=Justus-Liebig-Universitaet Giessen" lauten darf; der vorherige Wert "O=Universitaet Giessen" ist nicht seitdem mehr erlaubt; bitte verfahren Sie daher ggf. wie im Abschnitt "Erst-/Neuantrag" beschrieben; einen früher erzeugten privaten Schlüssel können Sie jedoch weiter verwenden.

Sofern eine Rezertifizierung mit gleichen Zertifikats-Attributen erfolgen soll, können Sie den von der erstmaligen Beantragung bei noch vorliegenden Certificate Signing Request (CSR) nochmal hochladen (siehe Punkt 9 unten) und das dabei erzeugte Antragsformular benutzen. Alternativ ist auch möglich, dass Sie keinen Request hochladen, sondern dass beim persönlichen Termin (siehe Punkt 10 unten) durch das Mitarbeiter der UNI-GI S CA Ihr alter Request erneuert wird (in diesem Fall wird das Antragsformular direkt bei der Erneuerung erzeugt).

Erst-/Neuantrag

Das hier genannte Verfahren gilt für die erstmalige Beantragung eines SSL-Server-Zertifikats, oder wenn sich bei Verlängerung (Re-Zertifizierung) Daten geändert haben.

Verbindliche Gundlage der Antragstellung sind die in der Erklärung zum Zertifizierungsbetrieb der UNI-GI S CA in der DFN-PKI festgelegten Richtlinien.

  1. Grundsätzlich können nur Zertifikate für Server mit Hostnamen ausgestellt werden, deren Domain auf die Universität Gießen registriert ist, also insbes. die Domain uni-giessen.de.
    Sollen Hostnamen anderer Domains zertifiziert werden (z.B. für Projekt-Homepages), kontaktieren Sie bitte rechtzeitig vor Antragstellung die Mitarbeiter der UNI-GI S CA; eine Ausstellung für andere Domains ist ggf. möglich, sofern lt. Whois die Domain von der Universität Gießen administriert wird oder der Admin lt. Whois seine Zustimmung gegeben hat. Das Verfahren zur erstmaligen Freischaltung solcher externer Domain kann jedoch einige Arbeitstage in Anspruch nehmen.
  2. Die Auswahl eines korrekten Server-Namens (Distinguished Name, DN) soll in Absprache mit der UNI-GI S CA (und nicht mit der DFN-PCA) erfolgen. Bei der Erstellung des Zertifikat-Requests verwenden Sie bitte folgende Angaben (das Attribut Email kann auch als MailAddressangezeigt werden):
    • CN=Name Ihres SSL-Servers
    • OU=OU Ihrer Einrichtung (ggf. mehrfach)
    • O=Justus-Liebig-Universitaet Giessen
    • L=Giessen
    • ST=Hessen
    • C=DE
    Wenn Ihr Server unter mehreren Namen erreichbar sein soll, weil z.B. Alias-Einträge (CNAME) im DNS gesetzt sind, müssen diese alle im Zertifikat vermerkt sein. Im CN-Teil des DN ist dann der Hauptname des Servers aufzuführen. Dieser Hauptname und die weiteren Namen sind dann in der Erweiterung SubjectAlternativeName aufzuführen. Eine Anleitung dazu finden Sie bspw. unter http://wiki.cacert.org/VhostTaskForce.
    Damit ist z.B.
    CN=server1.uni-giessen.de, OU=Verwaltung, O=Justus-Liebig-Universitaet Giessen, L=Giessen, ST=Hessen, C=DE
    ein gültiger DN, während die (früher noch erlaubten) DN-Formen
    CN=server1.uni-giessen.de, OU=Verwaltung, O=Justus-Liebig-Universitaet Giessen, C=DE

    (Attribute ST und L leer) und

    CN=server1.uni-giessen.de, OU=Verwaltung, O=Universitaet Giessen, L=Giessen, ST=Hessen, C=DE

    (in "O=Universitaet Giessen" fehlt der Zusatz "Justus-Liebig-") nicht gültig sind.

    Je nach Software, die Sie zur Erstellung Ihres Zertifikat-Requests benutzen, können Sie für das Attribut Email evtl. keinen Wert angeben. Sofern ein Wert angegeben wurde, wird diese Mail-Adresse vom HRZ zum Versand von Benachrichtigungen benutzt, die den Server-Admin an die Erneuerung des Zertifikats erinnern.

    Bitte beachten Sie, dass im CN (oder SubjectAlternativeName) des Zertifikats derjenige Name (oder all diejenigen Namen) des Servers angegeben wird, unter dem der zu verschlüsselnde Dienst von den Nutzern angesprochen werden soll. Dies sollte i.allg. ein kurzer, den Dienst/Sinn des Servers erschließenden Name sein; ggf. können Sie einen Alias (CNAME) im DNS eintragen lassen.

  3. Erzeugen Sie auf Ihrem SSL-Server einen privaten Schlüssel (RSA mit mindestens 2048 Bit, besser mehr), unter Linux/UNIX bspw. mit
    openssl genrsa -out priv.pem 4096
    Die Datei priv.pem enthält den privaten Schlüssel und sollte entsprechend sicher abgelegt sein, also insbes. durch andere auf dem Rechner eingeloggte User nicht lesbar sein.
    Wenn Sie priv.pem erneut erzeugen und dabei eine alte Version überschreiben, passen auch eventuell vorher erzeugte Requests und Zertifikate nicht mehr und müssen ggf. ebenfalls neu erstellt werden.
  4. Erzeugen Sie für den Diffie-Hellman-Schlüsselaustausch eine eigene Parameterdatei mit passender Bit-Anzahl wie für den privaten Schlüssel:
    openssl dhparam -outform pem -out dhparam.pem 4096
    (dies kann etliche Minuten dauern).
  5. Speichern Sie den folgenden Text als Datei  my_openssl.cnf ab und führen Sie in den gekennzeichneten Bereichen die Anpassungen für Ihren Request durch:
    ##################################################
    ## Bitte tragen Sie in den mit "###" gekennzeichneten
    ## Bereichen die für Ihren Request spezifischen Werte ein.
    ##################################################

    [ req ]
    distinguished_name = req_distinguished_name
    attributes = req_attributes
    req_extensions = v3_req

    [ req_distinguished_name ]
    countryName = Country Name (2 letter code)
    countryName_default = DE
    countryName_min = 2
    countryName_max = 2

    stateOrProvinceName = State or Province Name (full name)
    stateOrProvinceName_default = Hessen

    localityName = Locality Name (eg, city)
    localityName_default = Giessen

    0.organizationName = Organization Name (eg, company)
    0.organizationName_default = Justus-Liebig-Universitaet Giessen

    organizationalUnitName = Organizational Unit Name (eg. FB08, Physik)
    ############################### # ################
    organizationalUnitName_default = FB123
    ############################### # ################

    commonName = Common Name (e.g. server FQDN or YOUR name)
    commonName_max = 64
    ############################### # ################
    commonName_default = srv.ggl.uni-giessen.de
    ############################### # ################

    emailAddress = Email Address (contact of server admin )
    emailAddress_max = 64
    ############################### # ################
    emailAddress_default = srv-admin@ggl.uni-giessen.de
    ############################### # ################

    [ req_attributes ]
    challengePassword = A challenge password
    challengePassword_min = 4
    challengePassword_max = 20

    unstructuredName = An optional company name

    [ v3_req ]
    basicConstraints = CA:FALSE
    ##################################################
    ## Wenn Ihr Server unter mehreren Hostnamen (Aliase; diese müssen natürlich
    ## im DNS eingetragen sein) erreichbar sein soll, dann
    ## 1. entfernen Sie in der Zeile "subjectAltName" unten des führende "#",
    ## 2. tragen Ihren oben bei commonName_default vermerkten Hostnamen
    ## als ersten DNS-Wert ein,
    ## 3. führen Ihre weiteren Aliase als weitere DNS-Werte auf,
    ## im Beispiel hier also 1 Hostname (srv.ggl.uni-giessen.de)
    ## mit 2 Aliasen.
    ################ # ################
    # subjectAltName = DNS:srv.ggl.uni-giessen.de, DNS:srv-alias1.ggl.uni-giessen.de, DNS:srv-alias2.ggl.uni-giessen.de
    ################ # ################

  6. Geben Sie als Mail-Adresse statt Ihrer eigenen persönlichen besser eine unpersönliche (z.B. einen Verteiler an die Administratoren Ihrer Server) an, da an diese Mail-Adresse rechtzeitig von Ablauf des Zertifikats eine Information über die ggf. notwendige Verlängerung versandt wird.
  7. Erzeugen Sie zu Ihrem privaten Schlüssel eine CSR-Datei (PKCS#10 im PEM-Format), unter Linux/UNIX bspw. mit
    openssl req -config my_openssl.cnf -key priv.pem -new -out req.pem
    Die in der obigen Config-Datei eingetragenen Werte für Land (C), Org-Einheit (OU), Server-Name (CN) etc. werden dann als Vorgabe-Werte angezeigt und durch "Enter" übernommen.
  8. Sie können die erzeugte CSR-Datei req.pem nun mit
    openssl req -in req.pem -text -noout
    prüfen. Wenn Sie Fehler feststellen, korrigieren Sie die Config-Datei entsprechend und führen das Kommando aus Punkt 7 erneut aus.
  9. Zur Beantragung des Zertifikats stehen Ihnen aktuell zwei CA-Hierarchien zur Verfügung; bitte beachten Sie auch die Hinweise zu den CAs für SSL-Server:

    Beachten Sie, dass beide CA-Hierarchien unterschiedliche CA-Zertifikate verwenden; wenn Sie also ein in der alten CA ausgestelltes Zertifikat erneuern und in der neuen CA ausstellen lassen, müssen Sie auch Ihre Zwischen-Zertifikate und die Chain-Datei anpassen.
    Bitte laden Sie auf der oben genannten Online-Antragsseite die erzeugte CSR-Datei req.pem hoch und ergänzen Ihre Kontaktdaten (an die in diesem Formular von Ihnen eingetragene Mail-Adresse wird das erzeugte Zertifikat versandt). Außerdem finden Sie dort die für die Installation in Ihrer Applikation zusätzlich notwendigen Zertifikate aller übergeordneten Zertifizierungsstellen.
    Sollten Sie Zertifikats-Pinning eingestellt haben, kann ein unbedachter Tausch des Server- oder evtl. auch eines CA-Zertifikats dazu führen, dass Ihr Dienst nicht mehr funktioniert.

    Bitte achten Sie darauf,
    • die PIN zu notieren,
    • das nach dem Versand des CSR erzeugte Formular "Zertifikatantrag mit Identifizierung" auszudrucken und
    • dieses Formular zusätzlich mit dem Stempel Ihrer Einrichtung zu versehen.
  10. Vereinbaren Sie mit einem Mitarbeiter der UNI-GI S CA einen Termin für ein persönliches Treffen und bringen dazu
    • das Formular "Zertifikatantrag mit Identifizierung" und
    • Ihren gültigen Personalausweis
    mit. Die Erstellung des Zertifikats ist grundsätzlich erst dann möglich, wenn das Zertifikats-Antragformular abgegeben und der Antragsteller identifiziert wurde.
  11. Nach Abgabe des Zertifikatantrages wird Ihr Zertifikat auf dem vom DFN betriebenen Zertifizierungs-Server erzeugt und i.allg. innerhalb weniger Minuten an die von Ihnen angegebene Mail-Adresse versandt.
  12. Achten Sie bei der Konfiguration auf sichere Einstellungen: Deaktivieren Sie z.B. Verschlüsselungmethoden, die wg. zu geringer Schlüssellängen oder veraltetem -Verfahren als unsicher gelten, die aber aus Kompatibilitätsgründen in der Voreinstellung Ihres Servers noch aktiviert sein mögen (siehe Direktiven in Apache-Konfigurations-Beispiel unten).
  13. Konfigurieren Sie Ihren Dienst möglichst so, dass neben dem Zertifikat Ihres SSL-Servers auch die benötigten Zwischen-Zertifikate ('Universitaet Giessen S CA - G01' und 'DFN-Verein PCA Global - G01') ausgeliefert werden.
    Beim Web-Server Apache installieren Sie dazu ein Chain-File (bitte passend zur oben gewählten CA: Chain-File (CA alt) oder  Chain-File (CA neu)) und geben dieses dem Apache mit der Option SSLCertificateChainFile bekannt, sodass der für SSL zuständige Abschnitt der Datei httpd.conf dann bspw. wie folgt aussieht:
    <VirtualHost *:443>
    ServerAdmin srv-admin@ggl.uni-giessen.de
    DocumentRoot /var/www/docs/
    ServerName srv.ggl.uni-giessen.de
    ErrorLog /var/log/apache/ssl.log
    CustomLog /var/log/apache/ssl-access.log combined
    SSLengine on
    SSLCertificateFile /etc/apache/ssl.crt/server.crt
    SSLCertificateKeyFile /etc/apache/ssl.key/server_priv.pem
    SSLCACertificatePath /etc/apache/ssl.crt/
    SSLCertificateChainFile /etc/apache/ssl.crt/chain.txt
    SSLVerifyDepth 3
    ## sichere Einstellungen vornehmen
    ## das hier mit "-SSLv3" deaktivierte SSLv3 ist unsicher, alte Clients können aber evtl. kein TLS und benötigen SSL
    ## dito für TLSV1 und TLSV1.1
    SSLProtocol TLSV1.2 ALL -SSLv2 -SSLv3 -TLSV1.1 -TLSV1
    SSLHonorCipherOrder On
    SSLCipherSuite HIGH:ALL:!MEDIUM:!LOW:!ADH:!AECDH:!MD5:!SHA1:!DSS:!RC4
    ## zu deaktivieren bei Apache <2.2.23:
    SSLCompression Off
    </VirtualHost>

    Binden Sie möglich die oben erzeugte DH-Parameter-Datei ist; dies erfolgt je nach Dienst unterschiedlich (Apache ab 2.4.7 siehe hier) oder ist derzeit noch nicht möglich.
  14. Testen Sie den SSL-Zugriff auf Ihren Server z.B. unter Linux/Unix:
    openssl s_client -host ihr-server.uni-giessen.de -port 443
  15. Sofern Sie mit dem SSL-Zertifikat einen auch von extern erreichbaren Web-Server betreiben, empfehlen Ihnen, vor Aufnahme des Produktivbetriebs mit https://www.ssllabs.com/ssltest/ zu prüfen, ob Sie sicherer SSL-Einstellungen gewählt haben. Dort finden Sie auch weitere Hinweise zu einer sicheren Konfiguration.

Bei technischen Fragen stehen die Mitarbeiter der UNI-GI S CA gerne beratend zur Seite.