Ich möchte meinen eigenen OCSP-Responder einrichten (nur zu Testzwecken). Dazu muss ich ein Stammzertifikat und ein paar daraus generierte Zertifikate haben.
Ich habe es geschafft, mit openssl ein selbstsigniertes Zertifikat zu erstellen. Ich möchte es als Root-Zertifikat verwenden. Der nächste Schritt wäre, die abgeleiteten Zertifikate zu erstellen. Ich kann die Dokumentation dazu jedoch nicht finden. Weiß jemand, wo ich diese Informationen finden kann?
Bearbeiten
Im Nachhinein meine Frage ist noch nicht vollständig beantwortet. Um das Problem zu klären, stelle ich meine Zertifikatskette folgendermaßen dar:
Wurzel -> A -> B -> C -> ...
Ich kann derzeit die ROOT- und A-Zertifikate erstellen, habe aber noch nicht herausgefunden, wie eine längere Kette erstellt werden kann.
Mein Befehl zum Erstellen des Stammzertifikats lautet:
openssl req -new -newkey rsa:1024 -nodes -out ca.csr -keyout ca.key
openssl x509 -trustout -signkey ca.key -days 365 -req -in ca.csr -out ca.pem
Zertifikat A wird folgendermaßen erstellt:
openssl genrsa -out client.key 1024
openssl req -new -key client.key -out client.csr
openssl ca -in client.csr -out client.cer
Dieser Befehl hängt implizit vom Stammzertifikat ab, für das er die erforderlichen Informationen in der Konfigurationsdatei openssl findet.
Zertifikat B muss sich jedoch nur auf A verlassen, das nicht in der Konfigurationsdatei registriert ist, sodass der vorherige Befehl hier nicht funktioniert.
Welche Befehlszeile sollte ich verwenden, um Zertifikate B und höher zu erstellen?
Bearbeiten
fand ich die Antwort in diesem Artikel . Zertifikat B (Kette A -> B) kann mit diesen beiden Befehlen erstellt werden:
# Create a certificate request
openssl req -new -keyout B.key -out B.request -days 365
# Create and sign the certificate
openssl ca -policy policy_anything -keyfile A.key -cert A.pem -out B.pem -infiles B.request
Ich habe auch die Datei openssl.cnf geändert:
[ usr_cert ]
basicConstraints=CA:TRUE # prev value was FALSE
Dieser Ansatz scheint gut zu funktionieren.