@ CryptoGuy hatte hier eine ziemlich gute Antwort, aber ich wollte es erweitern.
Umschreiben:
Sie können die Zertifizierungsstelle eines Drittanbieters einschränken, um Zertifikaten (von dieser Zertifizierungsstelle) zu vertrauen, die für eine von Ihnen gewünschte Namensliste ausgestellt wurden. Auch wenn die Drittanbieter-Zertifizierungsstelle keine Namensbeschränkungserweiterung hat, können Sie diese über eine Gegenzertifizierung mithilfe Ihres eigenen internen Zertifizierungsstellenservers anwenden. Der Trick besteht darin, dass Sie die Zertifizierungsstelle eines Drittanbieters mit Ihrer internen Zertifizierungsstelle signieren.
Blatt SSL-Zertifikat -> Gegenzertifikat -> Ihr CA-Zertifikat -> Ihr internes Stammzertifikat.
Und so funktioniert das (mithilfe der OpenSSL-Befehlszeilen-CA)
Erstellen Sie eine einfache Zertifizierungsstelle
openssl req -new -x509 -days 3650 -newkey rsa:2048 -sha256 -out root-ca.crt -keyout root-ca.key -subj "/CN=My Root CA"
Sie können das Erstellen einer Zwischenzertifizierungsstelle überspringen
Erstellen Sie eine Zwischenzertifizierungsstellenanforderung mit Namensbeschränkungen.
openssl req -new -days 3650 -newkey rsa:2048 -out domain-ca.req -sha256 -keyout domain-ca.key -config ossl_domain_com.cfg
Mit diesem in der ossl_domain_com.cfg
Datei:
[ req ]
prompt=no
distinguished_name=req_distinguished_name
req_extensions=domain_ca
[ req_distinguished_name ]
CN=somedomain.com trust CA
[ domain_ca ]
basicConstraints=critical,CA:true,pathlen:1
nameConstraints=critical,permitted;DNS:.somedomain.com
Unterschreiben Sie dann diese Zwischen-Domänen-Zertifizierungsstelle mit Ihrer Zertifizierungsstelle.
openssl x509 -req -in domain-ca.req -CA root-ca.crt -CAkey root-ca.key -sha256 -set_serial 1 -out domain-ca.crt -extensions domain_ca -extfile ossl_domain_com.cfg
Wenn Sie das Erstellen des Zwischenprodukts übersprungen haben, signieren Sie mit Ihrer Stammzertifizierungsstelle
Signieren Sie nun die CA der ursprünglichen Domain unter Ihrer Autorität mit ihrem Zertifikat neu. Hier können Sie die CA-Erweiterungen hinzufügen.
openssl x509 -in third_party_ca.crt -CA domain-ca.crt -CAkey domain-ca.key -set_serial 47 -sha256 -extensions domain_ca -extfile ossl_domain_com.cfg -out domain-cross-ca.crt
Möglicherweise müssen Sie das -x509-to-req
Argument verwenden, um eine Anfrage zu erstellen, die Sie genauso wie das Zwischenprodukt oben signieren würden.
Fügen Sie nun Ihre Stammzertifizierungsstelle, Zwischenzertifizierungsstelle und die domänenübergreifende Zertifizierungsstelle zur Vertrauensdatenbank Ihres Browsers hinzu.