"mail-encryptd" ist ein kleiner SMTP-Proxy in Perl für Unix/Linux, der von beliebigen E-Mail Clients versendete Mails mit GnuPG verschlüsselt und via SMTP an einen Mail-Server weiterleitet. SSL und SMTP-Auth werden für die Weiterleitung der E-Mails unterstützt.
Der
"mail-encryptd" wurde für die Kommunikation in Gruppen oder Communities entwickelt (Mailinglisten, webbasierte Lösungen wie die Nachrichtenbox der GPF e.V.). Es ist damit nicht nötig, die Public Keys aller Beteiligten untereinander auszutauschen. Nur der Admin hat dafür zu sorgen, dass alle nötigen Keys vorhanden und vertrauenswürdig sind.
Installation
Der
"mail-encryptd" benötigt einige Perl-Module, welche direkt aus dem CPAN installiert werden können:
# perl -MCPAN -e shell
....
perl> install Log::Log4perl
perl> install Net::Server::Daemonize
perl> install Net::Server::Mail::ESMTP
perl> install Email::Address
perl> install Email::Send
perl> install GnuPG::Interface
perl> quit
Für Debian GNU/Linux and Ubuntu stehen diese Module als Pakete bereit und können wie üblich auf die Platte gespült werden:
# aptitude install liblog-log4perl-perl
# aptitude install libnet-server-perl
# aptitude install libnet-server-mail-perl
# aptitude install libemail-address-perl
# aptitude install libemail-send-perl
# aptitude install libgnupg-interface-perl
Danach kann das Archiv
mail-encryptd-0.5.tar.gz entpackt und die Dateien in die entsprechenden Verzeichnisse kopiert werden:
# cp bin/mail-encryptd /usr/local/bin/mail-encryptd
# cp man1/mail-encryptd.1 /usr/locla/man/man1/mail-encryptd.1
# mkdir /etc/mail-encryptd
# cp conf/config.sample /etc/mail-encryptd/config
Auch ein Verzeichnis für die Logdaten ist anzulegen. Für Debian GNU/Linux and Ubuntu
enthält das Archiv ein ein Script für
"logrotate.d".
# mkdir /var/log/mail-encryptd
# cp logrotate.d/mail-encryptd /etc/logrotate.d/mail-encryptd
Konfiguration
Das Archiv enthält ein Konfigurationsbeispiel. Die Einstellungen sind an die eigenen Erfordernisse anzupassen und die Konfiguration kann in folgenden Dateien gespeichert werden:
- /etc/mail-encryptd/config
- $HOME/.mail-encryptd.cfg
- Pfad, der in der Environment-Variable MAIL_ENCRYPTD_CONF zur Verfügung steht.
Start des Daemons
Der Daemon kann auf der Kommandozeile gestartet werden oder bei jedem Booten durch das Init-System. Init-Scripte für Debian/Ubuntu, SuSe und Gentoo enhält das Archiv im Verzeichnis
"init.d"
Für Debian/Ubuntu:
# cp init.d/mail-encryptd.debian /etc/init.d/mail-encryptd
# update-rc.d mail-encryptd defaults
# invoke-rc.d mail-encryptd start
Für SuSe-Linux:
# cp init.d/mail-encryptd.suse /etc/init.d/mail-encryptd
# insserv mail-encryptd
Nach dem Start erwartet der Daemon unter der Adresse
localhost Port
2025 auf E-Mails, die er verschlüsselt an einen weiteren SMTP-Server weiterleitet. Netzwerkadressen und Ports sowie Username und Passwort für den folgenden SMTP-Server können in der Konfiguration angepasst werden.
Verwaltung der OpenPGP-Keys
Um das Vertrauensmodell von GnuPG zu nutzen, sollte ein oder mehrere Admin-Key(s) als absolut vertrauenswürdig in den vom Daemon genutzten Keyring importiert werden. Alle weiteren Schlüssel sind mit diesem Key zu signieren. Es ist möglich, in der Konfiguration die Nutzung des Vertrauensmodells zu deaktivieren. In diesem Fall werden alle importierten Schlüssel aktzeptiert.
Als erstes ist ein oder mehrere Admin-Key(s) zu importieren und für diesen Schlüssel ist das Vertrauen auf
"absolut" zu setzen.
# su <mail-encrypt-daemon-uid>
> gpg --import <admin-key.asc>
> gpg --edit-key <admin-key>
gpg> trust
....
gpg> quit
Anschließend können die mit diesen Admin-Keys signierten Schlüssel der Empfänger importiert werden. Das Vertrauen in die Schlüssel ist damit gewährleitet. Wer das Trust-Modell nicht nutzen möchte, kann die Option TRUST_ALWAYS in der Konfigurationsdatei des mail-encryptd auf
"yes" setzen.
In einem Verzeichnis können OpenPGP-Keyfiles bereitsgestellt werden. Diese Dateien haben folgende Namenskonvention einzuhalten:
e-mail-adresse_pub.asc, also z.B.
pitti@platsch.de_pub.asc. Die Dateien werden bei Bedarf automatisch importiert. Evtl. vorhandene ältere Keys werden gelöscht. Die bereitgestellten Schlüssel müssen mit einem der trusted Key signiert sein, wenn das GnuPG Trust Modell nicht deaktiviert wurde.
Geman Privacy Foundation e.V.