PKI

Public Key Infrastructure

Im folgenden finden Sie Anweisungen zum Anfordern von Zertifikaten mit gängigen Web-Browsern sowie Anweisungen für die Verwendung dieser Zertifikate. Die Anweisungen für die Zertifizierung beziehen sich auf e-mail (S / MIME) Zertifikate. Das Erfordernis der anderen Arten von Zertifikaten ist jedoch weitgehend ähnlich konzipiert. Wenn Sie Vorschläge für weitere Anweisungen oder weitere Fragen haben, schicken Sie eine E-mail an support@gwdg.de oder nutzen Sie das Support-Formular der GWDG.

Beantragung persönliches E-Mail-Zertifikat

Beantragen Sie ihr persönliches E-Mail-Zertifikat mit einem Webbrowser.

Bitte nutzen Sie ausschließlich Mozilla Firefox!

Alle anderen Browser unterstützen die Erzeugung privater Schlüssel nicht1)!

Auswahl Registrierungs-Autorität (RA)

Drei Schritte zum Antrag: 1. Schritt: Formular ausfüllen 2. Schritt: Angaben bestätigen 3. Schritt: Antrag im PDF-Format herunterladen

Am Ende der Beantragung laden Sie bitte die erzeugte PDF-Datei herunter.

Bitte unterscheiben Sie eigenhändig den ausgedruckten Zertifikat-Antrag.

Mit dem von Ihnen unterschriebenen Antrag gehen Sie bitte zum zuständigen RA-Operator in Ihrem Institut.

Für die persönliche Identifizierung halten Sie bitte Ihren gültigen Personalausweis bereit.

Nach der erfolgten persönlichen Identifizierung und Prüfung des Zertifikat-Antrag wird der zuständige RA-Operator Ihren Zertifikat-Antrag ausstellen.

Sie erhalten nach der Ausstellung Ihres persönlichen E-Mail-Zertifikats eine E-Mail mit Ihrem Zertifikat im Anhang.

Für weiterführende Schritte und eine detaillierte Anweisung zur Installation des Zertifikats in verschiedene E-Mail-Clients lesen Sie bitte die Informationen in folgendem Dokument.

Beantragung Server-Zertifikat

OpenSSL mit folgenden Parametern aufrufen

Unix/OS X

Einfaches Bash-Skript…

createcsr.sh
openssl req -newkey rsa:2048 -sha256 -keyout priv-key.pem -out certreq.pem
  • Script createscr.sh herunterladen.
  • Rechte ändern
    chmod 744 createcsr.sh
  • Script wie folgt starten
    ./createcsr.sh

Windows

Einfaches PowerShell-Skript…

createcsr.ps1
openssl req -newkey rsa:2048 -sha256 -keyout priv-key.pem -out certreq.pem

Einfaches Batch-Skript…

createcsr.bat
openssl req -newkey rsa:2048 -sha256 -keyout priv-key.pem -out certreq.pem

Danach verfahren Sie weiter ab dem 2. Schritt der Sektion Beantragung persönliches E-Mail-Zertifikat, der Auswahl einer entsprechend zuständigen RA.

Beantragung Server-Zertifikat mittels OpenSSL.cnf

OpenSSL mit folgenden Parametern aufrufen

Unix/OS X

Einfaches Bash-Skript…

createcsr.sh
openssl req -config example.cnf -newkey rsa:2048 -sha256 -nodes -keyout example.key -out example-csr.pem
  • Script createscr.sh herunterladen.
  • Rechte ändern
    chmod 744 createcsr.sh
  • Script wie folgt starten
    ./createcsr.sh

Windows

Einfaches PowerShell-Skript…

createcsr.ps1
openssl req -config example.cnf -newkey rsa:2048 -sha256 -nodes -keyout example.key -out example-csr.pem

Einfaches Batch-Skript…

createcsr.bat
openssl req -config example.cnf -newkey rsa:2048 -sha256 -nodes -keyout example.key -out example-csr.pem

Danach verfahren Sie weiter ab dem 2. Schritt der Sektion Beantragung persönliches E-Mail-Zertifikat, der Auswahl einer entsprechend zuständigen RA.

Beispieldateien für OpenSSL.cnf

MPG

Bitte das Wort example durch den Servernamen und die Email-Adresse noreplay@{mpg|uni-giettingen|gwdg}.de durch eine(n) gültige(n) ersetzen.

example.cnf
HOME            = .
RANDFILE        = $ENV::HOME/.rnd
 
####################################################################
[ req ]
default_bits        = 2048
default_keyfile     = example.key
distinguished_name  = server_distinguished_name
req_extensions      = server_req_extensions
string_mask         = utf8only
 
####################################################################
[ server_distinguished_name ]
countryName         = Country Name (2 letter code)
countryName_default     = DE
 
stateOrProvinceName     = State or Province Name (full name)
stateOrProvinceName_default = Niedersachsen
 
localityName            = Locality Name (eg, city)
localityName_default        = Goettingen
 
organizationName            = Organization Name (eg, company)
organizationName_default    = Max-Planck-Gesellschaft
 
commonName          = Common Name (e.g. server FQDN or YOUR name)
commonName_default      = example.mpg.de
 
emailAddress            = Email Address
emailAddress_default        = noreply@mpg.de
 
####################################################################
[ server_req_extensions ]
 
subjectKeyIdentifier        = hash
basicConstraints        = CA:FALSE
keyUsage            = digitalSignature, keyEncipherment
subjectAltName          = @alternate_names
nsComment           = "OpenSSL Generated Certificate"
 
####################################################################
[ alternate_names ]
 
DNS.1       = example-san-1.mpg.de
DNS.2       = example-san-2.mpg.de

Uni Göttingen

Bitte das Wort example durch den Servernamen und die Email-Adresse noreplay@{mpg|uni-giettingen|gwdg}.de durch eine(n) gültige(n) ersetzen.

example.cnf
HOME            = .
RANDFILE        = $ENV::HOME/.rnd
 
####################################################################
[ req ]
default_bits        = 2048
default_keyfile     = example.key
distinguished_name  = server_distinguished_name
req_extensions      = server_req_extensions
string_mask         = utf8only
 
####################################################################
[ server_distinguished_name ]
countryName         = Country Name (2 letter code)
countryName_default     = DE
 
stateOrProvinceName     = State or Province Name (full name)
stateOrProvinceName_default = Niedersachsen
 
localityName            = Locality Name (eg, city)
localityName_default        = Goettingen
 
organizationName            = Organization Name (eg, company)
organizationName_default    = Georg-August-Universitaet Goettingen
 
commonName          = Common Name (e.g. server FQDN or YOUR name)
commonName_default      = example.uni-goettingen.de
 
emailAddress            = Email Address
emailAddress_default        = noreply@uni-goettingen.de
 
####################################################################
[ server_req_extensions ]
 
subjectKeyIdentifier        = hash
basicConstraints        = CA:FALSE
keyUsage            = digitalSignature, keyEncipherment
subjectAltName          = @alternate_names
nsComment           = "OpenSSL Generated Certificate"
 
####################################################################
[ alternate_names ]
 
DNS.1       = example-san-1.uni-goettingen.de
DNS.2       = example-san-2.uni-goettingen.de

GWDG

Bitte das Wort example durch den Servernamen und die Email-Adresse noreplay@{mpg|uni-giettingen|gwdg}.de durch eine(n) gültige(n) ersetzen.

example.cnf
HOME            = .
RANDFILE        = $ENV::HOME/.rnd
 
####################################################################
[ req ]
default_bits        = 2048
default_keyfile     = example.key
distinguished_name  = server_distinguished_name
req_extensions      = server_req_extensions
string_mask         = utf8only
 
####################################################################
[ server_distinguished_name ]
countryName         = Country Name (2 letter code)
countryName_default     = DE
 
stateOrProvinceName     = State or Province Name (full name)
stateOrProvinceName_default = NIEDERSACHSEN
 
localityName            = Locality Name (eg, city)
localityName_default        = GOETTINGEN
 
organizationName            = Organization Name (eg, company)
organizationName_default    = Gesellschaft fuer wissenschaftliche Datenverarbeitung
 
commonName          = Common Name (e.g. server FQDN or YOUR name)
commonName_default      = example.gwdg.de
 
emailAddress            = Email Address
emailAddress_default        = noreply@gwdg.de
 
####################################################################
[ server_req_extensions ]
 
subjectKeyIdentifier        = hash
basicConstraints        = CA:FALSE
keyUsage            = digitalSignature, keyEncipherment
subjectAltName          = @alternate_names
nsComment           = "OpenSSL Generated Certificate"
 
####################################################################
[ alternate_names ]
 
DNS.1       = example-san-1.gwdg.de
DNS.2       = example-san-2.gwdg.de

Wichtige OpenSSL-Befehle

Eine Sammlung wichtiger OpenSSL-Befehle für Server-Zertifikate

Entfernung des Kennworts vom privaten Schlüssel

openssl rsa -in example.key -out example.np.key

Erstellen einer PKCS#12-Datei aus privaten und öffentlichen Schlüssel

openssl pkcs12 -export -out example.pfx -inkey example.key -in example.pem
1) Eine nicht unterstützte oder abgekündigte Funktion!