Die einfache Antwort darauf ist, dass so ziemlich jede Anwendung anders damit umgeht.
Auch OpenSSL und GNUTLS (die am häufigsten verwendeten Bibliotheken zur Verarbeitung von Zertifikaten, die zur Verarbeitung signierter Zertifikate verwendet werden) verhalten sich bei der Behandlung von Zertifikaten unterschiedlich, was das Problem ebenfalls erschwert. Auch Betriebssysteme verwenden unterschiedliche Mechanismen, um die von den meisten Websites verwendete "Stammzertifizierungsstelle" zu verwenden.
Abgesehen davon, als Beispiel Debian. Installieren Sie das ca-certificates
Paket:
apt-get install ca-certificates
Anschließend kopieren Sie die öffentliche Hälfte Ihres nicht vertrauenswürdigen CA-Zertifikats (das Sie zum Signieren Ihrer CSR verwenden) in das CA-Zertifikatverzeichnis (als Root):
cp cacert.pem /usr/share/ca-certificates
Und um das Verzeichnis mit Ihrem Zertifikat neu zu erstellen, führen Sie es als root aus:
dpkg-reconfigure ca-certificates
und wählen Sie die ask
Option, scrollen Sie zu Ihrem Zertifikat, markieren Sie es für die Aufnahme und wählen Sie OK.
Die meisten Browser verwenden ihre eigene CA-Datenbank. Daher müssen Tools wie certutil
zum Beispiel zum Ändern ihres Inhalts verwendet werden (unter Debian, das im libnss3-tools
Paket enthalten ist). Mit Chrome führen Sie beispielsweise Folgendes aus:
certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "My Homemade CA" -i /path/to/CA/cert.file
In Firefox können Sie nach dem Zertifikat auf der Festplatte suchen, es als Zertifikatdatei erkennen und es dann in die Liste der Stammzertifizierungsstellen importieren.
Die meisten anderen Befehle, z. B. curl
Befehlszeilenschalter, mit denen Sie auf Ihre Zertifizierungsstelle zeigen können,
curl --cacert /path/to/CA/cert.file https://...
oder löschen Sie die SSL-Validierung vollständig
curl --insecure https://...
Der Rest muss einzeln untersucht werden, wenn der ca-certificates
gleiche Trick ihn nicht für diese bestimmte Anwendung sortiert.