Alle Beiträge von Don Matteo

lebt in Zürich, ist System Engineer MCP bei A-Enterprise GmbH. Mitglied des UNBLOG Network. Author und Blogger zu den Themen, Linux und Open Source. Tutorials für Windows, VMware, Synology, Fortinet.

E-Mail Verschlüsselung mit PGP in Outlook

OpenPGP Verschlüsselung und Signieren von E-Mails mit Outlook in Windows 10 und 11

E-Mail Verschlüsselung mit OpenPGP in Outlook zum Schutz der Privatsphäre sollte zur Selbstverständlichkeit gehören, um die Authentizität der Absender und die Unveränderlichkeit zu garantieren, wie verschlüsselte Webseiten über Transport Layer Security (TLS) heute fast überall der Standard ist, vor allem dank der freien und offenen X.509-Zertifizierungsstelle. Let’s Encrypt ist kostenlos und kann einfach auf vielen Plattformen implementiert werden. Zur Verschlüsselung und Signieren von E-Mails, Dateien und Ordnern unter Windows bietet sich Gpg4win (GNU Privacy Guard for Windows) an, eine freie Software die mit nur wenigen Mausklicks installiert werden kann.

  OpenPGP ist der am häufigste verwendete E-Mail-Verschlüsselungsstandard mit asymmetrischen Schlüsseln. OpenPGP wird von der Arbeitsgruppe der Internet Engineering Task Force (IETF) als vorgeschlagener Standard in RFC 4880 definiert.

INSTALLATION

Voraussetzung für E-Mail Verschlüsselung mit OpenPGP in Outlook ist ein Windows 10 oder Windows 11, Microsoft Outlook 2010, 2013, 2016 oder 2019 (32bit oder 64bit). Die in dieser Anleitung in Anwendung gebrachte Gpg4win Software kann hier herunter-geladen werden. Die Installation ist unspektakulär und vollzieht sich mit wenigen Maus klickst.

Nach dem Gpg4win auf dem Windows 10 Computer Installiert ist, findet sich das Outlook-Plugin GpgOL im Outlook Ribbon.

Weiter findet sich die Schlüsselverwaltung Kleopatra unter dem Start Programme Menü, aus diesem man sich erst ein Schlüsselpaar generieren lässt. Nach erzeugen eines Schlüsselpaares, dem privaten geheimen Schlüssel, kann der öffentliche Schlüssel den Empfängern bekannt gegeben werden. Es handelt sich hier um sogenannte asymmetrische Schlüssel.

Hat man eine eigene Webseite, empfiehlt es sich der öffentliche Schlüssel darauf zu publizieren, beispielsweise zur E-Mail in der Kontaktseite. Aus Kleopatra wird mit einem rechts klick über seiner E-Mail Adresse das Kontextmenü geöffnet, darin wählt man Exportieren, oder über die Option Details.

Der in der asc-Datei exportierte öffentliche Schlüssel kann in Notepad geöffnet werden, den Inhalt mit Copy & Paste in ein E-Mail einfügen, oder als Anlage an den Empfänger versenden, mit diesem man verschlüsselte E-Mail austauschen möchte. Grundsätzliche kann man mit jedem E-Mail Empfänger verschlüsselt kommunizieren, sobald Absender und Empfänger ihre PGP Public Keys untereinander ausgetauscht haben, und die E-Mail in Kleopatra beglaubigt wurde, können E-Mails untereinander entschlüsselt werden.

Beim verfassen einer Nachricht die Signiert und verschlüsselt werden soll, klickt man die Option Absichern im Outlook Ribbon.

PGP Verschlüsselte Email mit Outlook

Für Nutzer von Thunderbird gibt es das Enigmail Add-on, dieses hier heruntergeladen werden kann. Enigmail ist ein nahtlos integriertes Sicherheits-Add-on für Mozilla Thunderbird. Es verwendet OpenPGP um E-Mails zu verschlüsseln und digital zu signieren sowie empfangene Nachrichten zu entschlüsseln und zu überprüfen.

LINUX GnuPG

Für GNU/Linux basierte Systeme kann direkt GnuPG über den Paketmanager installiert werden.

$ sudo apt install -y gnupg

Unter MacOS X kann die GPG Suite verwendet werden.

e-Mail senden mit cURL

cURL unterstützt das Senden von E-Mails an einen SMTP-Server

cURL sendet in Kombination mit Befehlszeilenoptionen eine E-Mail an einen Empfänger. Ursprünglich stand der Name für „see URL“ und wurde erst später zum aktuellen Backronym cURL umgedeutet.

Der grundlegende Befehl zum Senden einer Mail mit cURL.

$ curl smtp://mail.server.com --mail-from sender@domain.com --mail-rcpt
receiver@domain.com --upload-file email.txt

Beispiel Anwendung von cURL SMTP im Terminal-Emulator:

$ curl -v smtp://mail.server.com/email.com --mail-from don@email.com --mail-rcpt rosa@email.com --upload-file email.txt

Es folgt die Ausgabe im Terminal:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 10.12.15.13...
* TCP_NODELAY set
* Connected to mail.server.com (10.12.15.13) port 25 (#0)
< 220 mail.server.com ESMTP
> EHLO email.com
< 250-mail.server.com
< 250-PIPELINING
< 250-SIZE 22000000
< 250-ETRN
< 250-ENHANCEDSTATUSCODES
< 250-8BITMIME
< 250 DSN
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0> MAIL FROM:<don@email.com> SIZE=355
< 250 2.1.0 Ok
> RCPT TO:<rosa@email.com>
< 250 2.1.5 Ok
> DATA
< 354 End data with <CR><LF>.<CR><LF>
} [355 bytes data]
* We are completely uploaded and fine
< 250 2.0.0 Ok: queued as B744B28008
100   355    0     0  100   355      0    355  0:00:01 --:--:--  0:00:01  1334
* Connection #0 to host mail.server.com left intact

Durch den Parameter -v wird die verbose Ausgabe erzeugt.

Die Datei email.txt wird von cURL zum SMTP-Relay hochgeladen und versendet.

From: Don <don@email.com>
To: Rosa <rosa@email.com>
Subject: Das ist ein Beispiel mit cURL SMTP
Date: Sam, 19. Jan 2019 12:50:16

Hallo Rosa,
Willkommen zum cURL eMail, heute ist ein schöner Tag.

Der Inhalt von email.txt, mit die Zeilen From, To, Subject und Date sind Datenfelder, diese dem Simple Mail Transfer Protocol dient.

  Der Mail Transfer Agent (MTA) muss so konfiguriert sein, das Mails von dem Host akzeptiert werden, auf diesem cURL eingesetzt wird, falls es nicht selber ein MTA ist, muss eine direktive bei smtpd_sender_restrictions, b.z.w. smtpd_client_restrictions konfiguriert werden.

Anmerkung

cURL ist eine Programmbibliothek und ein Kommandozeilen Programm zum Übertragen von Dateien in Netzwerke. cURL steht unter der Open-Source MIT Lizenz und wurde für zahlreichen Betriebssysteme portiert. Die zugehörige Programmbibliothek libcurl wird von zahlreichen Programmen und Programmiersprachen verwendet und gilt als eine der meist verwendeten Software-Bibliotheken überhaupt.

Daniel Stenberg, der Programmierer von cURL, begann 1997 ein Programm zu schreiben, das IRC-Teilnehmern Daten über Wechselkurse zur Verfügung stellen sollte, welche von Webseiten abgerufen werden mussten. Er setzte dabei auf das vorhandene Open-Source-Tool httpget. Nach einer Erweiterung um andere Protokolle wurde das Programm am 20. März 1998 als cURL 4 erstmals veröffentlicht. Ursprünglich stand der Name für „see URL“ und wurde erst später von Stenberg nach einem besseren Vorschlag zum aktuellen Backronym umgedeutet.