E-Mail Verschlüsselung unter Lotus Notes – Fortsetzung

Ein wenig probieren, auch mit anderen Adressaten, und die Tatsache, dass einige Mails richtig ankamen, brachte mich die letzten Tage einer Lösung der Frage näher, warum in kmail nicht alle s/mime verschlüsselten Mails automatische entschlüsselt werden (siehe hier).

Auf einigen Wegen kamen die Mails richtig an, auf anderen falsch. Im Thunderbird wurden sie immer entschlüsselt. Dies veranlasste mich im RfC 2633 nachzulesen. In Kapitel 3.8 ist beschrieben, wie ein Client einen s/mime Anhang erkennen soll. Siehe da, kmail müsste den Anhang auch anhand des Dateinamens und der Endung p7m, p7s oder p7c erkennen. Der RfC berücksichtigt bereits, dass es Gateways gibt, die mit s/mime nichts anfangen können und aus pkcs7-mime einfach octet-stream machen. Vermutlich ist der Lotus Notes Client nicht der Verursacher, denn er würde es jedes Mal falsch machen, sondern ein nicht richtig konfiguriertes Gateway, das auf dem Weg der Mail durch den Dschungel des Netzes steht.

Eine Prüfung meiner /etc/mime.types ergab: Hier fehlte für application/pkcs7-mime der Eintrag einer Dateinamenserweiterungen. Zufügen half nicht (ich hatte keine Lust auf einen Neustart, der Linuy-untypisch wäre.) Eine Kontrolle der Dateizuordnungen im konqueror zeigte: Auch hier war apllication/pkcs7-mime keine Erweiterung zugeordnet. Eine einfacher Eintrag half nur bedingt, weil jetzt kleopatra nicht damit umgehen konnte. Die Dame hielt die Datei für ein Zertifikat. Nun, dem konnte ich mit dem parameter –decrypt-verify statt –import abhelfen. Nur leider wird damit die Datei in kmail nicht in-line dargestellt, sondern nur entschlüsselt auf der Platte abgelegt. Da blieb mir nur, einen Bug Report (282882) bei Kde zu erzeugen.

So kann man auch den Abend verbringen.

Ein wunderbares Beispiel für das verzwickte Zusammenspiel von Rechnern und Protokollen.

Gute Nacht.

PS: Thunderbird macht es richtig. Evolution muss ich nochmal ausprobieren.

Update: Ich sollte nicht so müde und spät Artikel schreiben. Hoffe, nach dem Korrekturlesen sind jetzt weniger Fehler drin und die Sätze flüssiger.

E-Mail Verschlüsselung unter Lotus Notes

Neben der in Lotus Notes eigenen Verschlüsselung der Dokumente / Mails kann man auch die S/MIME Verschlüsselung mit dem cryptovision Plugin cv act s/mail nutzen – wenn man die Software denn hat. Vorteil ist, dass nicht nur Lotus Notes Empfänger in den Genuss der Verschlüsselung kommen.

Nachdem sich Outlook oder K-Mail nutzende Empfänger meiner aus Lotus Notes 7.0.3 verschickten Mails beklagt haben, dass nur eine Datei smime.p7m als Anhang angezeigt wird, bin ich am Wochenende der Ursache auf den Grund gegangen. Schicke ich eine mit cv act s/mail S/MIME verschlüsselte Lotus Notes an eine Internet Adresse, dann wird die Mail unter K-Mail nicht als S/MIME verschlüsselt erkannt. Ein Vergleich mit einer erkannten Mail zeigte, dass dies Ursache ein falscher Content-Type ist. Irgendwo bei der SMTP Konvertierung setzt Lotus Notes (oder das cv act plugin) folgenden Content-Type:


Content-type: application/octet-stream;
  name="smime.p7m"

Richtig ist der folgende Eintrag:


Content-type: application/pkcs7-mime;
  smime-type=enveloped-data;
  name="smime.p7m"

Eine Korrektur des Content-Type bestätigt den Verdacht. Da es mühsam ist die Mails zu speichern, im Editor zu korrigieren und wieder in K-Mail zu importieren, habe ich einen kleinen Filter mit sed geschrieben, der die Korrektur auf Knopfdruck erledigt. Als Filterregeln bieten sich an:

  1. X-Mailer enthält: Lotus Notes Release 7.0.3 September 26, 2007
  2. Der Nachrichtenvorstand enthält: smime.p7m
  3. Der Nachrichtenvorstand enthält nicht: pkcs7-mime

Installation:

  1. Zip-Archiv herunter laden
  2. In ~/bin oder /usr/local/bin extrahieren
  3. Neuen Filter in K-Mail einrichten

Wer es nützlich findet, spendiere mir bei Gelegenheit einen Latte Macchiato.


Downloads:

  1. Patch-SMIME.zip

S/MIME Verschlüsselung in Kontact und Kmail

Heureka!

Heute habe ich es endlich geschafft die X.509 Verschlüsselung unter Linux in Kontact / Kmail einzurichten. Meine früheren Bemühungen waren mangels Kommunikationspartner extrem halbherzig. Noch bin ich nicht ganz am Ziel, aber für meinen Zweck reicht es im Moment. Da viele Firmen Public Key Infrastuctures einführen, kann sich ein Mitarbeiter verschlüsselte Nachrichten an das private Postfach senden. Die IT-Sicherheit wird es freuen ;-).

Hier eine kleine Beschreibung des Weges.

  1. Mit TinyCA2 eine eigene CA eingerichtet.
  2. Ein eigenes Zertifikat erzeugt und in Kleopatra importiert
  3. Fremde Zertifikate importiert.
  4. Erster Versuch der Verschlüsselung schlug wegen mangelnder Vertrauenswürdigkeit der Zertifikate fehl. Schlüssel konnten nicht den Kontakten zugeordnet werden.
  5. Ein Schlüssel-Server für die Revocation Lists half nicht.
  6. Probiert einen Weg zu finden, die Vertrauenswürdigkeit zu ändern. Leider waren alle Meüeinträge für X.509 grau.
  7. Gegooglet – nichts hilfreiches gefunden – weiter gegooglet – im Forum versteckte Lösung gefunden. Keine Lust zum Anmelden, also noch mehr googeln.
  8. Endliche ein Hinweis auf gpg-agent und dem Parameter allow-mark-trusted in ~/.gnupg/gpa.conf sowie die Datei ~/.gnupg/trustlist.txt gefunden.
  9. Die vertrauenswürdige Keys in trustlist.txt angefügt, allow-mark-trusted eingefügt und siehe da es klappte. Leider an zwei Schrauben gedreht.
  10. Eine Schrauen zurück andere gedreht und siehe da, dass Geheimnis ist die Datei trustlist.txt.
  11. Befehl zum Anfügen der Keys in der trustlist.txt verfeinert.
  12. Beitrag geschrieben

Kleines Script um alle importierten Keys in die Datei trustlist.txt aufzunehmen.

trustthemall.sh

#!/bin/sh

gpgsm –list-keys 2>/dev/null \
| egrep ‚(fingerprint|Issuer)‘ \
| sed ‚/fingerprint/ s#:##g; /fingerprint/ s#$# S#;s#^.*fingerprint ##;/Issuer/ s!^!#!‘ \
>>~/.gnupg/trustlist.txt

Das Einrichten der eigenen CA mit Hilfe der grafischen Anwendung von TinyCA2 ist ein Kinderspiel und selbst erklärend. Die Software findet sich hier. Es geht zwar auch händisch mit openSSL, wenn man etwas mehr Schlüssel verwalten und Zeit sparen will, rate ich davon ab.


Meine – öffentlichen – Zertifikate
CA-Certificate
Mein X.509 Zertifikat