Skip to main content

Client-Zertifikat vom Firefox Profil exportieren

Vor kurzem habe ich ein neues Firefox Profil angefangen, da beim alten der Browser oft abgestützt ist. Jetzt brauchte ich aber mein Client-Zertifikat vom alten Profil wieder, weil ich mich damit bei cacert.org einloggen wollte.

Beim letzten mal habe ich einfach Firefox mit dem alten Profil gestartet und innerhalb von Firefox das Client-Zertifikat exportiert. Das war mir aber zu umständlich. Sicher könnte man auch die ganze Zertifikatsdatenbank vom alten Profil in das neue kopieren, aber das wollte ich auch nicht. Also habe ich ein wenig im Internet gesucht und eine Lösung gefunden:

Erst einmal muss man wissen wo das Profil ist. Wenn man das selbe Problem wie ich hat, dann weiß man das eigentlich. Unter Linux befindet sich es in einem Unterordner von “~/.mozilla/firefox/”. In der “profiles.ini” steht, welches Profil das Standardprofil ist.

Für die nächsten Operationen benötigt man die Programme “certutil” und “pk12util”. Bei ArchLinux befinden sie sich im Paket “nss”, welches bei mir bereits installiert war.

Nun listet man innerhalb des Profils (also der Unterordner) alle “private keys” auf:

% certutil -K -d ./
certutil: Checking token "NSS Certificate DB" in slot "NSS User Private Key and Certificate Services"
< 0> rsa      617508...   Christoph Giesel's Root CA ID

Der Parameter “-K” listet alle “private keys” auf und mit “-d” gibt man an, in welchem Verzeichnis sich die “cert8.db” Datei befindet. Jetzt wissen wir, wie unser Zertifikat heißt. Damit können wir es exportieren:

% pk12util -o ~/export.pk12 -n "Christoph Giesel's Root CA ID" -d ./ -W passwort
pk12util: PKCS12 EXPORT SUCCESSFUL

Mit dem Parameter “-o” sage ich, wo der Export gespeichert werden soll (also bei mir im Homeverzeichnis), mit “-n” wie das Zertifikat heißt, mit “-d” wieder das Verzeichnis der “cert8.db” Datei und mit “-W” wird ein Passwort für den Export angegeben. Da Firefox beim Import nach einem Passwort fragt, habe ich hier auch eins angegeben. Man kann es wohl auch weglassen.

Nun kann man direkt in Firefox unter “Einstellungen -> Erweitert -> Zertifikate -> Zertifikate anzeigen -> Ihre Zertifikate -> Importieren” das Zertfikat wieder importieren. Oder man macht es ebenfalls mit pk12util (nicht getestet):

% pk12util -i ~/export.pk12 -d ./ -W passwort

Natürlich muss man hier das Verzeichnis des neuen Profils angeben. ;)