Verschlüsselte Mails auf dem iPhone

Nachdem das S/Mime-Zertifikat auf dem iPhone gelandet ist (via →), wie verschickt man nun eine verschlüsselte Mail?

Guido (@gibro) hat mich darauf aufmerksam gemacht, dass dieser Schritt in der Anleitung noch fehlt/unklar ist. Daher komme ich dem gerne nach 😉

1. Zertifikat auswählen

Das Zertifikat ist zwar auf dem iPhone installiert, muss aber dem Mail Account noch zugewiesen werden. Dazu gehen wir folgendermaßen vor:

  1. Einstellungen → Mail, Kontakte, Kalender → den entsprechende Mail-Account auswählen → Account → Erweitert (ganz unten!) → S/MIME (wieder ganz unten!)
  2. Dort aktivieren wir zuerst „S/MIME“, indem wir den Schalten umlegen.
    IMG_2610
  3. Darunter gibt es noch zwei Optionen: „Signieren“ und „Standardmäßig verschlüsseln“.
    Ich empfehle die Option „Signieren“ zu aktivieren. Damit wird jede Mail über den ausgewählten Account automatisch signiert. Wenn wir dies aktiveren, wird die Liste der möglichen Zertifikate angezeigt und wir wählen das passende Zertifikat aus. In der Regel sollte dies bereits ausgewählt sein.
    „Standardmäßig verschlüsseln“ bedeutet, dass Mail.app versucht, jede Mail zu verschlüsseln. Das geht aber oft schief und bewirkt dann eine Fehlermeldung, da von vielen Empfängern ja noch (?) keine Zertifikate vorliegen. Daher würde ich diese Einstellung vorerst ausgeschaltet lassen, um unnötige Fehlermeldungen zu vermeiden.
  4. Wichtig: Wenn wir jetzt zurück zu den Einstellungen gehen, immer auf „Fertig“ oder „Sichern“ klicken! 🙂 Sonst sind die Einstellungen wieder weg.

2. Mails verschlüsseln

Möchte ich mich mit jemanden verschlüsselt unterhalten, so brauche ich zuerst sein Zertifikat. Daher schickt man sich am Besten zuerst eine Mail zu, in der nichts – oder „hallo“ steht. Es geht ja um nichts als das Zertifikat. Und das kommt eh mit, da wir die Einstellungen ja entsprechend angepasst haben (siehe unter 1.)

In der Mail sehe ich nun schon, dass sich etwas geändert hat. Neben dem Namen ist ein Stern mit Häckchen, das darauf hinweist „Mail signiert“.

IMG_2611

Um das Zertifikat zu installieren, klicke ich auf den Namen und importiere das Zertifikat. Das ist wichtig, denn erst  danach kann ich verschlüsselt mit dieser Person kommunizieren.

Wenn ich nu auf diese Mail antworte, sehe ich neben dem Namen ein offenes Schloss. Dies zeigt mit die Option an, dass die Mail verschlüsselt werden könnte.
Wenn ich darauf klicke, schließt es sich und gleichzeitig steht oben unter dem Titel der Mail „verschlüsselt“. Geschafft 🙂

IMG_2613

Die Mails können fortan verschlüsselt versendet werden.


Hab ich etwas vergessen? Oder ist etwas unklar? Dann freue ich mich über einen Kommentar.

PGP geht auf dem iPhone auch, ist aber nicht so schön implementiert. Für die Ver- und Entschlüsselung von PGP auf dem iPhone nutze ich zum Beispiel iPGMail.

Mails verschlüsseln, bitte.

[toc]

Vorab Gedanken

Die meisten Mails, die wir täglich verschicken, sind Postkarten. Für alle lesbar, die Zugriff auf die Server haben, über die die Mails laufen. Obwohl wir das selbst zu den besten Zeiten des Papier-Briefes kaum gemacht haben, haben wir uns inzwischen an die Offenheit gewöhnt. Trotz Snowden & Co. Fahrlässig…

Dabei würde ich so gerne mehr verschlüsseln. Kann ich doch? Immerhin kann man ja auch auf eine erhaltende Postkarte einen schönen und verschlossenen Brief zurück schicken.
Tja, leider bricht hier die Analogie… Für eine Verschlüsselung brauchen wir die Mitarbeit von beiden Seiten: Dem Sender und dem Empfänger.

Wie funktioniert Verschlüsselung

Jeder hat zwei Schlüssel (ein Schlüssel ist ein Zahlen-Code, den ich auf dem Rechner gespeichert habe. Also nix dolles.) Der eine Schlüssel ist der private Schlüssel. Der ist nur für mich und keinem anderen bekannt – und sollte auch nie weitergegeben werden.
Der andere Schlüssel ist der öffentliche Schlüssel. Den sollte man weitergeben und verteilen.

Was tun die beiden Schlüssel? Der öffentliche Schlüssel kann eine Nachricht so „verschließen“, dass sie nur mit dem entsprechenden privaten Schlüssel geöffnet werden kann.

Wenn ich also Peter eine Mail schreibe, dann verschlüsselt mein E-mail Programm die Mail mit Peters öffentlichen Schlüssel. Peter kann dann mit seinem privaten Schlüssel diese Mail öffnen und lesen. Und zwar nur Peter, da ja nur er diesen Schlüssel hat!
Auf dem Weg von mir zu Peter ist nur eine Flut von Zahlen und Buchstaben zu sehen. Für Außenstehende also nicht auszuwerten.

Um die Mails zu verschlüsseln, müssen Peter und ich dafür sorgen, dass wir unsere öffentlichen Schlüssel gegenseitig ausgetauscht haben. Denn ohne diesen Schlüssel kann nicht verschlüsselt werden.

Damit Peter, wenn er mir schreiben möchte, nicht erst nach meinem Schlüssel fragen muss, gibt es zwei Wege:

  1. Schlüsselserver (vor allem bei PGP): Auf diesen werden die öffentlichen Schlüssel nach der Erstellung geladen und sind dann für alle verfügbar. Ich kann dort, wenn ich die E-mail Adresse von jemandem kenne, nach seinem öffentlichen Schlüsseln suchen.
  2. Über signierte E-mails: Signierte E-mails sind keine verschlüsselten E-mails. Wenn eine E-mail signiert wurde, so bedeutet dies, dass sie mit meinem öffentlichen Schlüssel ausgestattet ist. Der Empfänger kann also, sobald er eine signierte Mail von mir erhalten hat, mit einer verschlüsselten Nachricht antworten.
    Praktisch unter OS X: Wenn das Mail Programm eine signierte Nachricht erkennt, wird der SChlüssel direkt in den eigenen Schlüsselbund importiert. Der Mail selber sieht man nicht direkt an, ob sie signiert worden ist oder nicht.
    (Ich selber signiere seit mehr als einem Jahr alle meine Mails. Auf diese Weise sorge ich dafür, dass möglichst viele meinen öffentlichen Schlüssel haben, und zumindest von meiner Seite damit die Möglichkeit zur Verschlüsselung gegeben ist.)

Für E-mails haben sich zwei Verschlüsselungsverfahren durchgesetzt: PGP und S/MIME.
(Beide Verfahren funktionieren grundsätzlich unabhängig vom Betriebssystem, also egal ob Windows, Mac, Android, iOS, Linux, Unix… etc.)

Installation von PGP bzw. GPG

GPG (GNU Privacy Guard) eine OpenSource Umsetzung für PGP.

So bekommt man GPG auf den Mac.

  1. Man lädt sich die GPG Suite auf seinen Rechner und installiert das entsprechende Programm. Es werden unterschiedliche Tools installiert.
  2. Unter anderem ist die App „GPG Keychain“ installiert worden, in der man die privaten und die öffentlichen Schlüssel seiner Bekannten sammeln kann. Diese App wird nun geöffnet und man kann dann getrost der guten Anleitung von GPG folgen:
    Die ersten Schritte zur verschlüsselten Mail.

Installation von S/MIME

Bei S/MIME ist es etwas komplizierter, dafür kann die Verschlüsselung nicht nur auf dem Mac, sondern auch auf dem iPhone einfach eingebunden werden, sodass man ohne Probleme unterwegs verschlüsselte Mails versenden und erhalten kann. Daher lohnt sich der Aufwand.

Im Folgenden möchte ich kurz erklären, wie man sich einen Schlüssel anlegt und ihn auf dem Mac und dem iPhone installiert.

Einen Schlüssel besorgen

Es gibt verschiedene Anbieter, die E-Mail Zertifikate anbieten. Ich schlage der Einfachheit halber comodo.com, wo man kostenlose Zertifikate (Schlüssel) beantragen kann, die für 1 Jahr gültig sind.

Auf der Seite wählt man das „Free Mail Certificate“ aus und trägt seine Daten ein. Im Anschluss daran bekommt man – mit ein wenig zeitlicher Verzögerung – eine Mail zugeschickt, in der sich der Link befindet, um das Zertifikat (den Schlüssel) zu laden.

Bildschirmfoto 2016-01-09 um 19.39.18

Klickt man auf den Link, wird ein Dokument mit dem Namen CollectCCC.p7s geladen. Darin befinden sich die Schlüssel.

Den Schlüssel auf den Mac importieren

Mit einem Doppelklick auf das Zertifikat öffnet sich die App „Schlüsselbundverwaltung“. Man wird gefragt, an welchen Schlüsselbund man seinen neuen Schlüssel stecken möchte. Wir wählen „Anmeldung“ aus, den Schlüsselbund, den der Mac für die ganzen anderen Schlüssel verwendet, die wir auf dem Mac (meist unwissentlich) verwenden.

Der neue Schlüssel ist nun über den Punkt „Meine Zertifkate“ in der Seitenleiste zu finden.

Bildschirmfoto 2016-01-09 um 19.53.39 Das Zertifikat hat den Namen der E-mail Adresse und ist installiert. Wenn man möchte, kann man nun seine erste signierte Mail schreiben.

Bitte die Datei CollectCCC.p7s jetzt löschen.

Den Schlüssel auf das iPhone übertragen

Um den Schlüssel aufs iPhone zu bekommen, muss der Schlüssel zuerst exportiert werden. Dazu wählt man den Schlüssel aus und klickt im Menu „Ablage“ → auf „Objekte exportieren“.

Das Dateiformat sollte „.p12“ sein, der Name spielt keine Rolle, ist aber wahrscheinlich „Zertifikat“.
Man speichert die Datei Zertifikate.p12 und vergibt dabei ein Passwort.

Wichtig: In dieser Datei steckt der öffentliche und der private Schlüssel. Daher ist ein sicheres Passwort sinnvoll! Wir brauchen dieses Passwort nur 1x, wenn wir den Schlüssel auf dem iPhone installieren. Das Passwort darf also ruhig komplex sein…

Nachdem man das Passwort vergegen hat, wird man nach dem Benutzerpasswort des Rechners gefragt, da der Schlüssel exportiert wird. Den Zugriff sollte man „Erlauben“.

Die Datei Zertifikate.p12 muss nun auf das iPhone (oder iPad). Man kann es sich per Dropbox oder Mail zuschicken, allerdings geht dabei auch der Schlüssel quer um den Globus. Einfacher, schneller und sicherer ist daher der Weg über AirDrop.

Auf beiden Geräten (Mac und iPhone) startet man AirDrop und kopiert das Zertifikat auf das iPhone. Dort steht der Installation nur ein kleiner Passwort und Entsperr-Code Marathon bevor. Aber danach ist das Zertifikat auch auf iPhone aktiviert. Prima!

Bitte die Datei Zertifikate.p12 jetzt löschen.

Die installierten Zertifikate auf dem iPhone findet man hier: „Einstellungen“ → „Allgemein“ → „Profile“.

Viel Spaß beim Verschlüsseln! 🙂 Gerne stehe ich für einen Testlauf zur Verfügung.

Tipps

  1. Bildschirmfoto 2016-01-09 um 20.14.46In der Mail.app kann man hier (grüner Pfeil) einstellen, ob eine Mail signiert ist oder man sogar verschlüsseln kann (nur, wenn man den öffentlichen Schlüssel des Empfängers hat).
  2. Wenn man beide Verschlüsselungstechniken installiert hat, kann man auswählen, welche Verschlüsselung man verwenden möchte (gelber Pfeil).

Update: → Verschlüsselte Mails auf dem iPhone

Evernote und das Datumsformat

Ich nutze an verschiedenen Stellen zur besseren Sortierung und eben auch in Evernote das Datumsformat Jahr-Monat-Tag, um eine schnelle Übersicht über viele Dokumente zu bekommen.

Mit dem Tastaturkürzel cmd-shift-d kann man ja bekanntlich überall in Evernote das aktuelle Datum einfügen. Allerdings in der „normalen“ Schreiweise die das System vorschlägt, also „Tag-Monat-Jahr“ bzw. 03.01.2016. Wenn man lieber 2015-01-03 haben möchte, gibt es Abhilfe:

In den

Systemeinstellungen → Sprache & Region → Weitere Optionen → Datum

kann man das Format anpassen.

Ich habe für die Kurz- und Mittelform die folgende Sortierung genommen:

Kurzform: yy.MM.dd
Mittelfom y-MM-dd

Damit kann ich mit dem Tastaturküzel das aktuelle Datum im gewünschten Format einfügen (ggf. passt man die Einstellungen von Evernote noch an unter „Einstellungen“ – „Formatierung“ – „Format für ‚Datum einfügen'“). Praktisch für den Titel von Notizen oder bei der Dokumentation von Projektverläufen.

Die Einstellungen werden auch im Finder und iCal übernommen. Das irritiert kurzzeitig, ist aber eigentlich logisch. Und daher schnell das neue „normal“.

Bildschirmfoto 2016-01-03 um 22.03.53

OmniFocus: „Auf Antwort warten“

OmniFocus für den Mac bietet – in der Pro Version – auch eine Unterstützung für AppleScript. Damit lassen sich auf dem Mac verschiedene Arbeitsabläufe automatisieren – was gerade für die Todo Liste sehr angenehm sein kann.

Ein schönes Script stammt von Curt Clifton: „Complete & Await Reply„. Damit lässt sich ein Eintrag abschließen und gleichzeitig ein neuer Eintrag erstellen mit dem gleichen Namen, aber mit „Reply on:“ vorangestellt und im Kontext „wait“ verortet.

Bildschirmfoto 2016-01-03 um 19.27.36

Das Script wird in den OmniFocus Script Ordner gelegt und in der Menüzeile platziert. Eine Anleitung (auf Englisch) zur Nutzung des Scripts gibt es von Tim Stringer auf learnomnifocus.com.


Wer das Script übersetzt haben möchte, lädt es sich im Original herunter (hier) und öffnet es mit einem Doppelklick. Das Script wird in Script-Editor.app geladen und kann nun editiert werden.

Wir gehen nur zur Zeile:

property waitingForContext : "wait"

und ändern diese entsprechend unseres Kontextes. Bei mir lautet er „Warten“, also:

property waitingForContext : "Warten"

Jetzt noch

property waitingPrefix : "Reply on: "

ändern zu

property waitingPrefix : "Antwort auf: "

Fertig.


Man kann sich übrigens auch das Icon des Scripts anpassen… wenn man zum Beispiel die Icons von deaghean (hier auf Github) schöner findet.

Bildschirmfoto 2016-01-03 um 19.37.18

  1. Bild aus den Vorlagen von deaghean auswählen und doppelklicken. Es öffnet sich Vorschau.
  2. Menu „Bearbeiten“ → „Kopieren“ auswählen. Fenster schließen.
  3. Dann das Script auswählen und im Menu „Ablage“ → „Information“ auswählen.
  4. Auf das Symbol oben links klicken, sodass es ausgewählt wird.
  5. Dann im Menu „Bearbeiten“ → „Einsetzen“ auswählen.
  6. Fertig.

 

Fever° und OpenID

Der Neustart hier bedeutete auch einige Anpassungen. Dank eines hervorragendes Wikis der ubernauten und ein wenig Basiswissen im Umgang mit dem Terminal ging es aber alles ganz gut über die Bühne.

Als Dienste habe ich aktuell Fever° und eine OpenID Instanz laufen.


Fever°

fever-fluid

Der Umzug von der alten Domain lief eigentlich ganz gut. MySQL DB exportiert, in die neue Datenbank importiert und dann die Dateien von feedafever.com auf den Server geladen und entpackt.

Die alte Instanz gelöscht und auf http://feedafever.com die Lizenz auf die neue Domain transferriert.

Im Anschluss Fever auf der neuen Domain gestartet (xyz.domain.tld/boot.php), die neuen Daten für die Datenbank und den Authentifizierungscode eingetragen,

fertig.


OpenID
… aber zuerst: let’s encrypt

Um OpenID über eine gesicherte Verbindung aufzurufen, brauchen wir zuerst ein Zertifikat für die eigene Domain. Von Haus aus ist bei den ubernauten nur interne Name (irgendwas.libra.uberspace.de) mit einem Zertifikat abgedeckt. Für die eigene Domain greift man zum Beispiel auf let’s encrypt zurück. Ich ignoriere hier, dass es durchaus kritische Stimmen dazu  gibt, finde die Initiative, freie Zertifikate nutzen zu können, aber an sich sehr gut und lobenswert.

Hintergrund:
https://blog.uberspace.de/lets-encrypt-rollt-an/

Anleitung:
https://wiki.uberspace.de/webserver:https#nutzung_von_let_s-encrypt-zertifikaten

Um die Cent-OS Version des uberspaces zu erfahren (geht alles erst ab CentOS-6), übers Terminal einloggen (am Besten mit SSH Key :)) und das hier eintippen:

cat /etc/redhat-release

Vor dem Konfigurieren von let’s encrypt am Besten bereits die subdomain für den OpenID Dienst anlegen, damit die Zertifikate dafür direkt mit erstellt werden. Achja: Und die subdomain – sofern man keine *wildcard für seine Domain erstellt hat – auch noch richtig verbinden.

Wenn let’s encrypt läuft, gehts mit der OpenID weiter.

OpenID

Anleitung:
https://marvindickhaus.de/2014/04/simpleid-openid-auf-deinem-uberspace/

openid_big_logo_textBei mir lief es nicht auf Anhieb… Ich wollte eigentlich alles in einem Verzeichnis unter der Subdomain installieren – was aber nicht ohne Weiteres ging. Muss auch nicht sein.
Aber auch streng nach der obigen (oder nach dieser)  Anleitung wollte es nicht so richtig. Das roch danach, ein frustiger Ausflug in die Welten der OpenID zu werden…

Am Ende war es die .htaccess Datei, die zu viel an den URLs manipuliert hat. Als ich dann irgendwann  # RewriteBase / nicht mehr auskommentiert habe, sondern es gelassen habe,  wie es in der Vorlage steht, lief es.