Runbook: Zertifikat ausstellen

Dauer: ~10 Minuten
Rolle: PKI-Operator
Voraussetzung: Genehmigter CSR


Workflow

flowchart TD A[CSR empfangen] --> B{CSR validieren} B -->|Ungültig| C[Ablehnen + Ticket] B -->|Gültig| D{Genehmigung?} D -->|Nein| E[Genehmigung anfordern] D -->|Ja| F[Zertifikat signieren] F --> G{Hybrid-Modus?} G -->|Ja| H[PQ-Extension hinzufügen] G -->|Nein| I[Klassisch signieren] H --> J[Ausliefern] I --> J J --> K[Audit Log] style B fill:#fff3e0 style F fill:#e8f5e9 style H fill:#e3f2fd


Schritt 1: CSR empfangen und validieren

Checkliste vor Signierung:

# Prüfpunkt Befehl Erwartet
———–——–———-
1 CSR-Format gültig openssl req -in request.csr -verify -noout verify OK
2 Schlüssellänge openssl req -in request.csr -text \| grep „Public-Key“ ≥2048 Bit (RSA), ≥256 Bit (EC)
3 Subject korrekt openssl req -in request.csr -subject -noout Gemäß Antrag
4 SANs vollständig openssl req -in request.csr -text \| grep -A1 „Subject Alternative“ Alle Hostnamen
# Komplette CSR-Prüfung
openssl req -in request.csr -text -noout -verify

Schritt 2: Genehmigung prüfen

Zertifikatstyp Genehmigung durch Dokumentation
—————-——————-—————
Server (intern) Automatisch / Ticket Ticket-Nr.
Server (extern) IT-Security E-Mail + Ticket
Client Abteilungsleiter Formular
Code-Signing CISO Schriftlich

Schritt 3: Zertifikat signieren

Klassischer Modus

# Server-Zertifikat signieren (1 Jahr)
openssl ca -config openssl.cnf \
    -extensions server_cert \
    -in request.csr \
    -out certificate.pem \
    -days 365 \
    -notext
 
# Seriennummer notieren
openssl x509 -in certificate.pem -serial -noout

Hybrid-Modus (PQ)

// C# mit WvdS.System.Security.Cryptography
using var intermediate = new X509Certificate2("intermediate.pfx", "password");
 
var csr = CertificateRequest.LoadSigningRequest(
    File.ReadAllBytes("request.csr"),
    HashAlgorithmName.SHA256);
 
var cert = csr.Create(
    intermediate,
    DateTimeOffset.UtcNow,
    DateTimeOffset.UtcNow.AddDays(365),
    Guid.NewGuid().ToByteArray(),
    CryptoMode.Hybrid);  // PQ-Extension
 
File.WriteAllText("certificate.pem", cert.ExportCertificatePem());

Schritt 4: Ausliefern

Format Verwendung Befehl
——–——————–
PEM Linux, Apache cp certificate.pem /output/
PFX Windows, IIS openssl pkcs12 -export -in certificate.pem -inkey private.key -out certificate.pfx
DER Java openssl x509 -in certificate.pem -outform DER -out certificate.der
# Mit Kette ausliefern
cat certificate.pem intermediate.pem > fullchain.pem

Schritt 5: Dokumentation

Pflichtfelder im Ticket/Log:

Feld Beispiel
—————-
Seriennummer 01:23:45:67:89:AB:CD:EF
Subject CN=server.example.com
Gültig bis 2025-12-15
Ausgestellt von Operator-Name
Ticket-Nr. INC-2024-12345
Modus Hybrid / Classic

Fehlerbehebung

Problem Ursache Lösung
————————–
unable to load CSR Falsches Format openssl req -inform DER -in request.der -out request.pem
signature verify failed CSR manipuliert CSR neu anfordern
wrong issuer Falsche CA CA-Zertifikat prüfen
certificate request failed Konfigurationsfehler openssl.cnf prüfen

Verwandte Runbooks


« ← Tagesgeschäft | → Zertifikat erneuern »


Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional

Zuletzt geändert: den 29.01.2026 um 15:13