Wir haben zwei CA-Zertifikate - 1 Stamm-CA und 1 zugehörige Zwischen-CA - in das entsprechende Betriebssystem eingefügt.Vertrauensladen(/etc/ssl/zertifikateauf unserem SuSE 11), weil sie nicht vom Trust Store des Betriebssystems bereitgestellt wurden (und vermutlich auch nie bereitgestellt werden, da sie nicht im Repo sind).
Vor Kurzem sind diese beiden Zertifikate nach einem automatischen Update verschwunden, mit der offensichtlichen Folge, dass Clients keine Verbindung mehr über TLS herstellen konnten.
Im Nachhinein sind wir nicht sicher, ob wir die Einträge wie üblich aufbereitet haben, d.h.
# c_rehash /etc/ssl/certs
WENN wir das Rehash nicht durchgeführt hätten: Wäre dies der Grund für die Löschung der entsprechenden Zertifikate während des Updates gewesen?
Oder besteht immer die Gefahr, Zertifikate zu verlieren, wenn sie manuell zum Vertrauensspeicher hinzugefügt werden (auf dem betreffenden System befinden sich zwei SSL-Bibliotheken: openssl und mozilla-nss)?
Antwort1
Sie fügen dem Trust-Anchor-Speicher keine untergeordneten Zertifizierungsstellen hinzu. Sie vertrauen nur der Stammzertifizierungsstelle (dem Trust-Anchor) ausdrücklich und vertrauen implizit allen Zertifikaten, die von dieser Stammzertifizierungsstelle oder einer dieser untergeordneten Zertifizierungsstelle signiert wurden.
Wenn Sie die Kette zwischen der End-Entität und dem Vertrauensanker nicht aufbauen können, prüfen Sie, ob die End-Entität alle Zertifikate zwischen sich und dem Vertrauensanker vorlegt. SieheRFC 5256 Abschnitt 7.4.2, insbesondere das certificate_list
;, das besagt, dass alle Zertifikate (optional mit dem Root-Zertifikat) im TLS-Handshake vorgelegt werden müssen.
Microsoft-Clients können fehlende untergeordnete CA-Zertifikate herunterladen, wenn die URL zum Zertifikat in der AIA-Erweiterung angegeben ist. Andere Clients wie Mozilla Firefox verwenden diese Erweiterung nicht und begründen dies mit dem Datenschutz der Benutzer.
Beachten Sie, dass, wenn Sie einer untergeordneten Zertifizierungsstelle ausdrücklich vertrauen, es keine Garantie dafür gibt, dass Ihr Client den Widerruf seines Zertifikats überprüft. Wenn das untergeordnete Zertifikat zu einem späteren Zeitpunkt kompromittiert und von der Stammzertifizierungsstelle widerrufen wird, kann Ihr Client ihm weiterhin vertrauen. Dies ist implementierungsspezifisch.