Kommentare (5)      print

Tutorial zur Erstellung und Einbinden eines X.509 (S/MIME) Zertifikats

Bitte lesen Sie zuerst die Seite "E-Mail verschlüsseln und/oder signieren", um Grundsätzliches zum Thema zu verstehen.

Diese Anleitung bezieht sich nur auf S/MIME (X.509-Zertifikat) und nicht auf PGP sowie erklärt das Erzeugen sowie das Einbinden eines solchen Zertifikats in die E-Mail-Clients Outlook (kostenpflichtig) und Thunderbird (kostenlos).

Inhaltsverzeichnis:

1. Vorwort

2. X.509-Zertifikat beantragen

3. X.509-Zertifikat von Zertifizierungsstelle importieren

4. X.509-Zertifikat exportieren

 
 



1. Vorwort


S/MIME (Secure / Multipurpose Internet Mail Extensions) arbeitet auf der Anwendungsschicht (Application Layer 7) und ist ein Standard zum Verschlüsseln und Signieren von E-Mails im asymmetrischen Verfahren (privater und öffentlicher Schlüssel).

Dabei setzt X.509 ein strikt hierarchisches System von vertrauenswürdigen Zertifizierungsstellen (CA, certificate authority) voraus, die das Zertifikat überprüfen und bei Echtheit und Gültigkeit beglaubigen. Vertrauenswürdige CA sind im Zertifkatsspeicher von E-Mail-Clients und Webbrowsern i.d.R. gespeichert. Deshalb sind kostenlose Zertifikate, die meist von nichtkommerziellen CA zur Verfügung gestellt werden (Beispiel CAcert), sehr mit Vorsicht zu geniessen, denn diese sind oft nicht in der lokalen Zertifizierungsdatenbank enthalten. Ein Anwender, der eine solche E-Mail erhält, wird wahrscheinlich eine Fehlermeldung erhalten, dass die Herkunft des Zertifikats nicht überprüft werden konnte. In diesem Fall würde nur das manuelle Eintragen der entsprechenden CA Abhilfe schaffen, was aber nicht praxistauglich ist.

Auch haben kostenlose Zertifikate oft nur eine sehr kurze Laufzeit (meist 30 Tagen), was wiederum die Praxistauglichkeit erheblich einschränkt, denn es müssten die hier beschriebenen Arbeitsschritte jeden Monat erneut durchgeführt werden und die abgelaufenen Zertifikate weiter gespeichert bleiben, um ältere, verschlüsselte Mails noch lesen zu können. Zum Testen eignen sich solche kostenlosen Zertifikate aber nicht für den täglichen, produktiven Gebrauch. Siehe z.B. 30 Tage-Zertifikat von Comodo/Sectigo (vertrauenswürdige CA).

Deshalb sollten Sie etwas Geld in die Hand nehmen, sofern Ihnen ein sicherer E-Mail-Verkehr etwas wert ist!




2. X.509-Zertifikat beantragen


Sie können zum Testen ein
30 Tage-Zertifikat von Comodo/Sectigo (vertrauenswürdige CA) beantragen oder gleich ein länger gültiges Zertifikat erwerben. Bei Comodo/Sectigo z.B. HIER. Ein Klasse-1-Zertifikat (sichert die Echtheit der E-Mail-Adresse zu) kostet dort rund EUR 15,-- netto pro Jahr bei einer Laufzeit von drei Jahren (Stand 12.12.2019). Bei Zertifikaten der Klasse 2-4 wird auch der Name verifiziert, weshalb eine zuvorige persönliche Legitimierung mit Ausweis, HR-Auszug u.s.w. erforderlich ist (z.B. PostIdent-Verfahren).

Es gibt natürlich noch weitere Anbieter, z.B. die Bundesdruckerei. Diese bietet ein D-TRUST-Advanced Personal ID-Zertifikat für EUR 94,01 (EUR 37,-- p.a.) für eine Laufzeit von zwei Jahren an (Stand 12.12.2019). Wir empfehlen aus Kostengründen jedoch Comodo.

Ein X.509-Zertifikat ist an die E-Mail-Adresse gebunden, d.h. für jede E-Mail-Adresse muss ein eigenes Zertifikat beantragt werden!




3. X.509-Zertifikat von Zertifizierungsstelle importieren


Das ist der kniffligste Teil und etwas umständlich, weil das Zertifikat nicht so einfach heruntergeladen werden kann, sondern in den Zertifikatsspeicher des verwendeten Web-Browser importiert werden muss.

Nachdem Sie den Bestellprozess (am Beispiel von Comodo/Sectigo) abgeschlossen haben, erhalten Sie eine E-Mail mit einem Verifizierungslink. Nun müssen Sie das Zertifikat in Ihren Browser unter Verwendung des mitgeteilten Passworts (sog. Collection-Code) importieren (über den zur Verfügung gestellten Link). Dies geschieht vollautomatisch.

Mac-User haben hier ein kleines Problem, denn der Safari schwächelt damit (ihm fehlen die kryptographischen Bibliotheken), d.h. evtl. auf einen Windows-Rechner ausweichen und dort das Zertifikat exportieren (siehe Punkt 4) und auf den Mac übertragen oder den Browser "Firefox" für Mac installieren.

Unter Windows bietet sich der "Internet Explorer" (im Alltag bitte NICHT verwenden, sondern nur für diesen Fall!) an, damit sich das Zertifikat gleich an der richtigen Stelle (unter Internetoptionen --> Inhalte --> Zertifikate --> Eigene Zertifikate) befindet und von Outlook verwendet werden kann. Benutzt man einen anderen Browser (z.B. Firefox) für den Zertifikatsimport, muss das Zertifikat hernach exportiert und in den Zertifikatsspeicher von Windows (Internet Explorer) importiert werden, um von Outlook genutzt werden zu können. Gleiches gilt für Thunderbird, d.h. auch dort muss das Zertifikat importiert werden, weil die Zertifikatsspeicher von Firefox und Thunderbird nicht mehr identisch sind (war früher einmal der Fall).

  • Es wäre beim Import zu beachten, dass der Schlüssel exportierbar importiert wird, also entsprechendes Häkchen setzen:




Der Export des Zertifikats sollte auf jeden Fall IMMER erfolgen (egal welchen Browser Sie zum Import verwendet haben), um zum einen das Zertifikat zu sichern und zum anderen, um das Zertifikat auf dritte Rechner übertragen zu können. Denn evtl. wollen Sie Ihre E-Mail-Adresse und das Zertifikat auf mehreren Computern verwenden (z.B. Desktop-Rechner, Notebook und Smartphone). Export siehe Punkt 4.

Mit der Beantragung und Aktivierung erhalten Sie auch ein sog. Revocation-Passwort. Mit diesem ist es möglich, das Zertifikat wieder zu deaktivieren/widerrufen, wenn es während der Laufzeit nicht mehr gebraucht oder kompromittiert wird (z.B. Diebstahl des privaten Schlüssels).




4. X.509-Zertifikat
exportieren

Ist das Zertifikat ordnungsgemäss importiert, gehen Sie für den Export wie folgt vor. Stellen Sie ferner sicher, dass das exportierte Zertifikat für niemanden (ausser Ihnen) zugänglich ist, denn es handelt sich um eine sehr sensible Angelegenheit. Dafür bietet sich ein TrueCrypt/VeraCrypt-Volume an, in welchem Sie das Zertifikat ablegen (siehe Tutorial zu TrueCrypt/VeraCrypt).




4.1
Export aus Windows-Zertifikatsspeicher (Internet Explorer)

  • Navigieren Sie zu Systemsteuerung --> Internetoptionen --> Inhalte --> Zertifikate --> Eigene Zertifikate

  • Markieren Sie das entsprechende Zertifikat und klicken auf Export und Weiter



  • Wählen Sie Ja, privaten Schlüssel exportieren und Weiter



    Anmerkung:
    Wollen Sie jemandem Ihren öffentlichen Schlüssel zukommen lassen, damit dieser Ihnen sofort eine verschlüsselte E-Mail senden kann, klicken Sie "Nein, privaten Schlüssel nicht exportieren" an und exportieren den öffentlichen Schlüssel im CER-Format ohne Passwort (siehe Kontakt für unseren öffentlichen Schlüssel im CER-Format).

  • Bestätigen Sie nächstes Fenster mit dieser Auswahl:



  • Vergeben Sie ein sehr gutes Passwort und ändern die Verschlüsselung
    von "TripleDES-SHA1" auf "AES256-SHA256" und klicken auf Weiter



  • Wählen Sie einen Speicherort auf Ihrem Computer und vergeben einen Dateinamen und klicken auf Weiter



  • Am gewählten Speicherort befindet sich nun das exportierte Zertifikat im pfx-Format zur weiteren Verwendung (z.B. Übertragung auf weiteren Computer und Import in einen weiteren Zertifikatsspeicher). Diese Datei dürfen Sie keinesfalls Dritten zur Verfügung stellen, weil diese Ihren privaten Schlüssel enthält!




4.2 Export aus Firefox-Zertifikatsspeicher


  • Navigieren Sie zu den Firefox-Einstellungen --> Datenschutz & Einstellungen --> Zertifikate anzeigen

  • Markieren Sie das entsprechende Zertifikat und klicken auf Sichern



  • Wählen Sie einen Speicherort auf Ihrem Computer und vergeben einen Dateinamen und klicken auf Speichern



  • Vergeben Sie ein sehr gutes Passwort und klicken auf OK



  • Am gewählten Speicherort befindet sich nun das exportierte Zertifikat im p12-Format zur weiteren Verwendung (z.B. Übertragung auf weiteren Computer und Import in einen weiteren Zertifikatsspeicher). Diese Datei dürfen Sie keinesfalls Dritten zur Verfügung stellen, weil diese Ihren privaten Schlüssel enthält!




5. X.509-Zertifikat wieder importieren (aus Export)

Zum Import in den Windows- oder Firefox-Zertifikatsspeicher rufen Sie wieder die entsprechenden Einstellungen (wie oben aufgezeigt) auf, wählen das entsprechende Zertifikat (im pfx- oder p12-Format) aus und importieren dies - unter Verwendung des beim Export angegebenen Passworts. Fertig! Wir verzichten hier auf Screenshots, weil dies äquivalent zum Export selbsterklärend funktioniert. Die Zertifikate können auch direkt in Outlook (Punkt 6) oder Thunderbird (Punkt 7) importiert werden, siehe folgend.




6. Konfiguration des X.509-Zertifikats in Outlook (am Bsp. von Outlook
2016)

Das Zertifikat sollte im Windows-Zertifikatsspeicher (Internet Explorer) importiert sein (siehe Punkt 3), kann aber auch noch direkt in Outlook nachgeholt werden.

  • Navigieren Sie in Outlook zu Datei --> Optionen --> Trust Center --> Einstellungen für das Trust Center



  • Wählen Sie E-Mail-Sicherheit und Einstellungen. Ist das Zertifikat noch nicht importiert, haben Sie hier nochmals die Möglichkeit dies über den Button Importieren/Exportieren nachzuholen.



  • Vergeben Sie einen Namen für die Sicherheitseinstellung (z.B. Ihre E-Mail-Adresse) und wählen Sie das Zertifikat über die Buttons "Auswählen" aus.



  • Im folgenden Fenster wählen Sie das importierte Zertifikat aus und klicken auf OK. Bei mehreren Zertifikaten wählen Sie "Weitere Optionen", um die weiteren Zertifikate anzuzeigen.



  • Um höchstmögliche Kompatibilität und sehr gute Sicherheit zu erreichen, ändern Sie den Hashalgorithmus auf SHA256 und den Verschlüsselungsalgorithmus auf AES (256-bit) ab und klicken auf OK.



  • Wenn Sie das Signieren von ausgehenden Nachrichten per Standard haben wollen, dann aktivieren Sie das Kästchen "Ausgehende Nachrichten digitale Signatur hinzufügen". ABER nur dann zu empfehlen, wenn über Outlook entweder nur eine E-Mail-Adresse gepflegt wird ODER mehrere E-Mail-Adressen verwaltet werden, die ALLE ein Zertifikat besitzen. Werden in Outlook dagegen mehrere E-Mail-Adressen verwaltet, die aber nicht alle ein Zertifikat halten, sollte das Häkchen nicht gesetzt sein. Sonst erhalten Sie beim Versand mit einer E-Mail-Adresse ohne Zertifikat eine Fehlermeldung (ist in Outlook leider unkomfortabel aber es gibt eine Lösung, siehe weiter unten). Der Nachteil ohne gesetztes Häkchen ist, dass Sie das Signieren für jede E-Mail händisch aktivieren müssen.



    Für den Fall mehrerer E-Mail-Adressen aber nicht alle halten ein Zertifikat, bietet sich das Tool/Add-In "Suspend Account-Defaults" an. Ohne gesetztes Häkchen können Sie dann für jede E-Mail-Adresse einzeln festlegen, ob standardmässig signiert und/oder verschlüsselt werden soll.

    Das Häkchen für eine generelle Verschlüsselung sollte nicht gesetzt sein, sondern vielmehr die Verschlüsselung nur dann für eine E-Mail aktiviert werden, wenn dies auch der Empfänger unterstützt, sprich Sie den öffentlichen Schlüssel des Empfängers besitzen. Diesen haben Sie automatisch, wenn Sie bereits eine signierte E-Mail vom Empfänger erhalten haben und diesen Ihren Kontakten (Adressbuch) hinzugefügt haben.

    Oder Sie fügen den öffentlichen Schlüssel des Empfängers manuell im Adressbuch (Kontakte) hinzu. Dazu den Kontakt auswählen oder anlegen und auf "Datenursprung anzeigen Outlook Kontakte" --> Anzeigen --> Zertifikate --> Importieren --> p7c oder cer-Datei auswählen und Öffnen klicken und danach speichern (siehe Kontakt für unseren öffentlichen Schlüssel im CER-Format):







  • Um beim E-Mail-Versand eine E-Mail zu Signieren und/oder zu verschlüsseln, rufen Sie im Mail-Fenster die Optionen auf und wählen "Signieren" und/oder "Verschlüsseln". Ist das Häkchen (siehe vorheriger Punkt) bei "Ausgehenden Nachrichten digitale Signatur hinzufügen" als Standard gesetzt oder im Addon "Suspend Account Defaults" so konfiguriert, ist das Signieren bereits per Default aktiviert.



  • Eine signierte und verschlüsselte Nachricht sieht dann so in Outlook aus:










7. Konfiguration des X.509-Zertifikats in Thunderbird


Die Zertifikatsverwaltung ist hier unabhängig vom verwendeten Betriebssystem, so dass die folgenden Schritte für Windows, Linux oder Mac OS X gleichermassen gelten.
  • Rufen Sie die Konten-Einstellungen im Thunderbird auf und navigieren im Menü-Baum unter Ihrer E-Mail-Adresse zum Punkt S/MIME-Sicherheit und auf die Buttons "Auswählen". Ist das Zertifikat noch nicht importiert, wählen Sie zuerst "Zertifikate verwalten" und importieren das Zertifikat.



  • Im gleichen Fenster können Sie festlegen, ob E-Mails von dieser Adresse automatisch signiert werden sollen. Das Häkchen für eine notwendige Verschlüsselung sollte nicht gesetzt sein, sondern vielmehr die Verschlüsselung nur dann für eine E-Mail aktiviert werden, wenn dies auch der Empfänger unterstützt, sprich Sie den öffentlichen Schlüssel des Empfängers besitzen. Diesen haben Sie automatisch, wenn Sie bereits eine signierte E-Mail vom Empfänger empfangen haben.



  • Um beim E-Mail-Versand eine E-Mail zu Signieren und/oder zu verschlüsseln, rufen Sie im Mail-Fenster entweder die Optionen auf oder das Kontextmenü zu S/MIME und wählen "Nachricht unterschreiben" und/oder "Nachricht Verschlüsseln". Ist das Häkchen (siehe vorheriger Punkt) bei "Nachrichten digital unterschreiben (als Standard)" gesetzt, ist das Signieren bereits per Default aktiviert.



  • Eine signierte und verschlüsselte Nachricht sieht dann so in Thunderbird aus:








8. X.509-Zertifikat auf Smartphones verwenden:


Wenn Sie das Zertifikat auch auf Ihrem Smartphone nutzen wollen, bieten sich für Android die Mail-Apps CipherMail (bei Google Play) oder R2Mail2 (bei Google Play, Lizenz einmalig € 4,80 Stand 12.12.2019) an. Wir empfehlen für Android "R2Mail2", weil diese sehr anwenderfreundlich gestaltet ist und hohe Sicherheitsstandards bietet.

Das iPhone unterstützt S/MIME mit der hauseigenen Mail-App.

Dazu übertragen Sie das exportierte Zertifikat (siehe Punkt 4 oben) auf das Smartphone und importieren es in den Zertifikatsspeicher der jeweiligen Mail-App und konfigurieren Ihre E-Mail-Adresse dazu.



Also alles kein Hexenwerk. Nun sind Sie in der Lage signierte und/oder streng verschlüsselte E-Mails (lückenlose Ende-zu-Ende-Verschlüsselung) zu senden und zu empfangen. Ein "man-in-the-middle" sieht nur Datenmüll, d.h. auch Ihr E-Mail-Provider wird nicht in der Lage sein, diese E-Mails zu lesen, sofern beim Versenden die Verschlüsselung (und nicht nur das Signieren) aktiviert wurde. Tutto bene :-).


War die Anleitung auf dieser Seite hilfreich, würden wir uns über einen Kommentar Ihrerseits freuen.

Kommentare (5) zu dieser Seite
Sie können einen neuen Kommentar-Thread beginnen (siehe Button) oder auf einen bestehenden Kommentar antworten (Grafik "antworten" unten links zu einem Kommentar anklicken). In letzterem Fall wird ein "@{name}" (auf wen die Antwort erfolgte) im Kommentar automatisch vorangestellt.



Cedric (13.12.2019 | 00:11 Uhr)

Ich möchte hiermit ein ganz großes Dankeschön an Thomas schicken. Ich habe heute die Bitte ausgesprochen, mir einen Link zu einer guten Anleitung zum Thema zu schicken. Da macht der das gleich selbst und stellt die Seite heute online. Klasse, das ist wirklicher und sehr guter Kundenservice!    

S. Kowalski (13.12.2019 | 08:26 Uhr)

Sehr geehrter Herr Murr,

danke für Ihre E-Mail über die Benachrichtigung zu dieser Anleitung. Das ist ein sehr feiner Zug von Ihnen, daß Sie die erstellt haben. Ich werde mich erkenntlich zeigen.
---
Vor zwei Tagen habe ich Herrn Murr gebeten, mir einen Leitfaden zur E-Mail-Verschlüsselung an die Hand zu geben. In dieser Ausführlichkeit hatte ich das nicht erwartet.    

Thomas S. (15.12.2019 | 10:08 Uhr)

Perfekt erklärt und illustriert. Danke!    

CM (16.12.2019 | 16:38 Uhr)

Das Vorwort bringt es auf den Punkt!

Von kostenlosen Zertifikats-Anbietern ist abzuraten. Z.B. sind DGNcert oder Actalis u.s.w nicht im Zertifikatsspeicher enthalten, also keine TrustedRootCa. Deshalb komplett wertlos. Und das beste/schlechteste: diese Anbieter erzeugen den privaten Schlüssel selbst (also serverseitig). ABSOLUT WERTLOS und ein NO GO, dann kann man Verschlüsselung gleich sein lassen, wenn der private Schlüssel außer Haus ist! Da kann ich mir gleich selbst ein Zertifikat ausstellen, das wäre noch besser.

Und vertrauensvolle Anbieter wie Comodo bzw. Sectigo bieten nur noch 30 Tage gültige kostenlose Zertifikate an. Das ist unpraktikabel, weil man muß wie der Autor erwähnt hat ständig neue beantragen und installieren und alle alten Zertifikate ewig mitziehen. Sonst kann man alte Mails nicht mehr lesen, die verschlüsselt waren.

Man kann nur hoffen, daß Lets Encrypt mal endlich auch kostenlose S/MIME-Zertifikate anbietet. Dann hätten wir endlich eine Art Volksverschlüsselung mit vertrauensvollen RootCA an der Hand!    

Selma (23.03.2020 | 18:17 Uhr)

TOP ANLEITUNG!!!
Funktioniert genau wie hier beschrieben. Verwende Outlook 2019 auf einem (PC) und Thunderbird 68 auf anderem Rechner (Laptop) mit der gleichen E-Mail-Adresse. Konnte das mit dieser Anleitung perfekt umsetzen und das Zertifikat in beide Systeme einbinden.    

 Die Übertragung erfolgt SSL-verschlüsselt, d.h. mit Protokoll https
(mit * kennzeichnet ein Pflichtfeld)
Name*:
eMail-Adresse*:
Homepage:
 Homepage wird zum Kommentar angezeigt
Kommentar*:Zeichen frei:

Datenschutz - Einwilligung DSGVO*:


Sicherheits-Abfrage*:
Bitte geben Sie die Summe als Zahl ein (z.B. VIER+ACHT=12).
Bild mit Rechenaufgabe 
 

Hinweise: Eine eingegebene URL (Internetadresse) wird automatisch erkannt und verlinkt, deshalb bitte keinen HTML-Code eingeben.

Wir behalten uns vor, Kommentare vor der Veröffentlichung zu prüfen (Wir benachrichtigen Sie dann über eine Freigabe per E-Mail). Erst-Kommentare werden grundsätzlich zuvor geprüft. Haben Sie bereits Kommentare mit derselben E-Mail-Adresse abgegeben und wir Sie als vertrauenswürdig eingestuft, wird Ihr Kommentar ohne Prüfung sofort veröffentlicht. Auch in diesem Fall behalten wir uns vor, Kommentare nachträglich zu sperren oder endgültig zu löschen, verletzende oder gesetzlich unzulässige Inhalte zu entfernen oder die Vertrauenswürdigkeit wieder herabzustufen.