Unterschrift/Verschlüselung mit eigenem Root-Zertifikat

  • Hallo,


    vermutlich ist meine Frage redundant und schon einmal vorgekommen, aber weder in den Wikiseiten zu S/MIME noch über eine schnelle Suche konnte ich etwas zu meinem Problem finden.


    Ich habe etwas rumgespielt und ein eigenes, selbstzertifiziertes Root-Zertifikat erstellt (auf die Adresse meines Emailaccounts ohne Einschränkungen in der Verwendung, also auch zur Email-signierung/-verschlüsselung).
    Thunderbird hat auch ohne Probleme das Zertifikat importiert und ich konnte es dem Email-Account zum Signieren/Verschlüsseln zuweisen. (An sich will ich mein Zertifikat vergleichbar mit einem OpenPGP-Schlüsselpaar verwenden und kann ersteinmal auf 'Beglaubigungsextras' von höheren Stellen verzichten ;) )


    Allerdings kommt nun beim Versuch, eine Mail mit meinem Zertifikat zu signieren, während des Versendens eine Fehlermeldung:
    "Senden der Nachricht fehlgeschlagen. Kann Nachricht nicht signieren. Bitte überprüfen Sie, ob die Zertifikate, die für dieses Konto in den Konten-Einstellungen angegeben sind, gültig und vertrauenswürdig sind."


    Das mit dem "gültig und vertrauenswürdig" ist bei selbstzertifizierten Zertifikaten ja so eine Sache. Aber da ich mir noch vertraue, würde ich trotzdem gern mein eigenes Zertifikat verwenden (jedenfalls zum Herumexperimentieren).
    Was mache ich also falsch bzw. wie kann ich Thunderbird zum verwenden meines Zertifikates überreden?


    Grüsse & Danke für Tipps


    Thunderbird 2.0.0.22 (20090605)
    Mac OS X 10.5.8 & Ubuntu 9.04
    Key-Generierung mit Apple Schlüsselbundverwaltung bzw. OpenVPN (easy-rsa)

  • Hi Chuck,


    und willkommen im Forum!
    Du bist schon weit gekommen, hast aber einen ganz kleinen Umstand übersehen: das Vertrauen!
    Vertrauen bedeutet ja bei der Verwendung von X.509-Zertifikaten, dass du dem Herausgeber des Zertifikates vertraust. Die etablierten Trustcenter sind ja schon in großer Menge durch die Produzenten diverser Browser, Betriebssysteme und Mailclients in die Produkte, aber deines natürlich nicht. Weniger vertrauenswürdigen Herausgebern, oder solchen, die sich den Eintrag nicht erkaufen wollen ..., musst du manuell das Vertrauen geben. (Das ist auch gut so!)


    Lösung:
    - Zuerst ein root-Zertifikat produzieren. Dieses sollte nur zur Signatur von Nutzerzertifikaten und evtl. Sperrlisten geeignet sein. Mehr schadet aber für Test nicht. Zertifikat (cer, der oder pem, aber ohne priv. Schlüssel) exportieren.
    - Ein Nutzerzertifikat produzieren.
    - Jetzt durch das o.g. root-Zertifikat das Nutzerzertifikat signieren. Es müssen also zwei Zertifikate sein!
    - Schlüsseldatei des Nutzerzertifikates exportieren.
    - Das Herausgeber- (root-) Zertifikat unter Vertrauenswürdige ... importieren und durch Bearbeiten das Vertrauen einstellen.
    - Jetzt kannst du unter Eigene ... deine Schlüsseldadei (p12 oder pfx) importieren. Wenn das root richtig importiert wurde, siehst du jetzt auch den Verwendungszweck.
    - Jetzt Zertifikatsmanager schließen.


    - Kontoeinstellungen >> Konto >> S/MIME-Sicherheit => hier deinem Konto das eine Zertifikat 2x zuweisen. Für Entschlüsseln und für Signatur.


    Jetzt müsste es funktionieren :-)


    MfG Peter

    Thunderbird 45.8.x, Lightning 4.7.x, openSUSE Tumbleweed, 64bit
    S/MIME, denn ich will bestimmen, wer meine Mails lesen kann.
    Nebenbei: die Benutzung der (erweiterten) Suche, und von Hilfe & Lexikon ist völlig kostenlos - und keinesfalls umsonst!
    Und: Ich mag kein ToFu und kein HTML in E-Mails!

  • Danke für die schnelle Antwort :)


    Daran, dass auch die Zertifizierungsstelle importiert werden muss, habe ich nicht gedacht (klingt dann aber auch irgendwie logisch ;) ).
    Wahrscheinlich muss dann auch jeder, dem ich mein selbsterstelltes Mailzertifikat aufdränge, auch das dazugehörige root-Zertifikat importieren, oder...? Hmmmm, doch etwas aufwändiger als ich zuerst gedacht habe.


    Prinzipiell wollte ich mit S/MIME wie mit PGP hantieren und 'schnell mal' ein Schlüsselpaar/Zertifikate erzeugen und austauschen -- in der Hoffnung, dass es eher im Bekanntenkreis 'angenommen' wird, da S/MIME Standard in den meisten Emailprogrammen ist und man nicht noch ein Plugin wie Enigmail braucht.


    Aaaalles nicht so einfach ;)

  • Hi,


    habs mir genau so gedacht :-)
    Ich befasse mich seit vielen Jahren sowohl beruflich als auch privat mit X.509-Zertifikaten. Und ich habe die "Ochsentour" schon durch, die du jetzt in Angriff nehmen willst. Auch wieder sowohl beruflich wie privat ... . Die Menschen haben selbstverständlich alle nichts zu verbergen - wozu dann verschlüsseln.
    Durch seeeehr viel Überzeugungsarbeit und auch ein klein wenig Aufdrängelei habe ich jetzt eine kleine Stammrunde von einigen Hundert Nutzern, denen ich jedes Jahr ein Zertifikat erstelle. Und mittlerweile ist es so, dass mein Herausgeberzertifikat im Netz gut schon angenommen wird.
    Aber, wie gesagt, es ist eine Ochsentour ... .


    Man kann (und sollte) ein Nutzerzertifikat so herstellen, dass im p12-Container auch gleich das Herausgeberzertifikat mit gespeichert wird. Dann hat es der Nutzer nach dem Import seiner eigenen Schlüsseldatei schon im Zertifikatsspeicher drin. Er muss dann nur noch das Vertrauen einstellen.


    Wenn du ernsthaft mit dem Gedanken spielst, deine Bekannten von der Mailverschlüsselung zu begeistern, dann solltest du dir aber auch ein vernünftiges CA-Programm suchen. Leider kenne ich für dein Betriebssystem keine entsprechenden Programme. Für Linux (und auch die WinDOSe) gibt es u. a. das ausgezeichnete Programm "XCA". Das gute daran ist, dass du dir Templates für alle Arten von Zertifikaten herstellen kannst. Also Vorlagen für alle erforderlichen Einstellungen für jeden Verwendungszweck - CA, S/MIME-Userzertifikat, OpenVPN uvam. Das ist dann genau so komfortabel wie bei unserer professionellen Software auf Arbeit.


    Falls du dich ernsthaft mit dem Thema befassen willst, kannst du dich gern mit weiteren Fragen melden.


    MfG Peter

    Thunderbird 45.8.x, Lightning 4.7.x, openSUSE Tumbleweed, 64bit
    S/MIME, denn ich will bestimmen, wer meine Mails lesen kann.
    Nebenbei: die Benutzung der (erweiterten) Suche, und von Hilfe & Lexikon ist völlig kostenlos - und keinesfalls umsonst!
    Und: Ich mag kein ToFu und kein HTML in E-Mails!

  • Hi,


    dann bin ich zum Glück nicht allein ;)


    'Prinzipiell' benutze ich seit einigen Jahren auch OpenPGP mit Enigmail -- allerdings geht es mir vermutlich wie vielen, dass ich in meinem Bekanntenkreis nur 1 oder 2 andere PGP-Benutzer habe. Und die sind eh computeraffin und können Plugins etc installieren. Dem Rest kann man nicht so etwas 'komplexes' wie ein Plugin antun ;)


    Darauf gekommen, meine eigenen x.509-Zertifikate zu erstellen und PGP-like zu verteilen, bin ich, als ich für mein OpenVPN zwischen meinem Mac und meinem Linux-Netbook Zertifikate erstellt habe (mit den easy-rsa Skripte von OpenVPN). Naja, wie gesagt in der Hoffnung, dass es eher angenommen wird, wenn keine Plugins oder so etwas 'kompliziertes' eingerichtet werden muss -- halt Mutter-kompatibel ;)


    Wenn ein Container sowohl den öffentlichen Schlüssel des User-Zertifikates als auch das Root-Zertifikat enthalten, sollte es ja genauso einfach sein, wie das akzeptieren eine PGP-Schlüssels :)


    Ich bin gerade dabei mir XCA anzuschauen (Mac OS ist ja auch nur ein Unix). Die grösste Hürde für XCA auf meinem Mac ist das nötige Qt zu besorgen. XCA scheint qt4 zu benötigen und im Standardpaket von Qt für den Mac scheint es nicht drin zu stecken bzw. ich finde nicht die nötigen Dateien um die Umgebungsvariablen richtig zu setzen...
    Im Moment besorge ich mir den Fink-Port und werde damit mal probieren XCA zu kompilieren. Im Notfall muss halt mein Netbook XCA und dann die Schlüssel erzeugen, obwohl ich dem lahmen Ding das nicht unbedingt antuen will ;) -- oder ich muss mich etwas in die Zertifikatserzeugung auf der Kommandozeile hineinfuchsen...


    Grüsse & Danke für die Hilfe