Antworten:
Wenn es sich um ein neues System handelt, wird Ihre Zertifikatdatenbank möglicherweise nicht initialisiert. Um dies zu beheben, führen Sie Folgendes aus:
mkdir -p $HOME/.pki/nssdb
certutil -d $HOME/.pki/nssdb -N
certutil -d sql:$HOME/.pki/nssdb -L
es würde nicht zu diesem Fehler führen. Aber wenn ich nur starte certutil -L
, würde es diesen Fehler zeigen. Bedeutet das, dass die Datenbank nicht beschädigt ist, aber eine gewisse Inkompatibilität vorliegt, oder erwartet certutil das falsche Verzeichnis?
Falls die Datenbank bereits initialisiert wurde, aber dennoch beschädigt ist, muss sie neu erstellt werden:
$ mv ~/.pki/nssdb ~/.pki/nssdb.corrupted
$ mkdir ~/.pki/nssdb
$ chmod 700 ~/.pki/nssdb
$ certutil -d sql:$HOME/.pki/nssdb -N
Überprüfen Sie, ob alles in Ordnung ist
$ certutil -d sql:$HOME/.pki/nssdb -L
Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI
Zertifikat importieren
$ certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n GoAgent -i ~/programs/goagent/local/CA.crt
[5284:5310:0306/110217:ERROR:nss_util.cc(750)] After loading Root Certs, loaded==false: NSS error code: -8018
keine Möglichkeit, dies anmutig zu lösen. Der Wiederaufbau der DB hat es für mich gelöst! Vielen Dank :)
certutil: function failed: SEC_ERROR_BAD_DATABASE: security library: bad database.
Mein Importbefehl lautet certutil -d sql:$HOME/.pki/nssb -A -t "CT,C,C" -n sophos -i ~/Downloads/sophos_cert.crt
Dies sollte nicht als root ausgeführt werden müssen, oder?
Wenn Sie Zertifizierungen aus einem bestimmten Ordner anzeigen möchten (z. B. dem Ordner, in dem die cert8.db
Datei für Firefox gespeichert ist), müssen Sie den Ordner mit "-d" angeben:
nss-certutil -d /Users/myuser/Library/Application\ Support/Firefox/Profiles/jii912uh.default -L
Andernfalls wird nss-certutil
möglicherweise versucht, * .db-Dateien aus dem ~/.netscape
Ordner oder $HOME/.pki/nssdb
wie bereits vom vorherigen Benutzer erwähnt zu lesen .
Überprüfen Sie auch, ob der -d
Verzeichnispfad (muss auf das Verzeichnis zeigen) Leerzeichen enthält oder nicht. Mit Speicherplatz gibt es den gleichen Fehler oder einen fehlerhaften Dateiformatfehler - altes Datenbankformat usw. Speziell auf dem Mac befindet sich der Ordner, in "Application Support"
dem Speicherplatz enthalten ist. Lassen Sie den Pfad also vollständig zitieren:
"/Users/myuser/Library/Application Support/Firefox/Profiles/jii912uh.default"
oder fügen Sie das Zeichen \ Escape hinzu.
/Users/myuser/Library/Application\ Support/Firefox/Profiles/jii912uh.default
Überprüfen Sie, ob der Ordner die folgenden Dateien enthält: cert8.db, key3.db and secmob.db.
--empty-password
Schalter am Ende descertutil
Befehls hinzu.