So, jetzt kann dieser Server auch DKIM, sichert also den Inhalt von über ihn versendeten Mails kryptographisch. Angeregt das zu implementieren wurde ich durch einen Artiekl von heise-Netze. Daran angelehnt ist auch das Setup.
Dieser Server nutzt Postfix als MTA. Daran anflanschen kann man dkim-filter, eine dkim Implementation, die eigentlich für sendmail/milter entstanden ist, aber auch gut mit postfix nutzbar ist. Aber der Reihe nach:
Installieren von dkim-filter mittels:
aptitude install dkim-filter
Der braucht jetzt etwas an Konfiguration. Zunächst werden die Schlüssel erstellt, der öffentliche wird später ins DNS eingetragen, der private bleibt auf dem Server und sollte dort gegen Zugriffe gesichert werden:
dkim-genkey -b 1024 -d HOSTNAME -s selector1
Der Selector wird sich später im DNS wiederspiegeln. Dieser Befehl erzeugt zwei Dateien: selector1.private mit dem Geheimen Schlüssel und selector1.txt mit dem Inahlt fürs DNS (ohne den Umbruch, den ich fürs Design eingefügt habe):
selector1._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDQUvoDB1EESpvP1kL9OCL1l6B4Zkmh
27R2Y8eWPZx5hHc6PygCa8CWHje4wTbul6efewWjynFYJxOI2BDpbfjeF2/LSGiuM9DUbz
6OJtMABhUM6Tk2gNPa40U187/vhk4a5oowtL8JqcuhVgDDUFWYhO1vGVt+9KyCpJK6KGEo
PQIDAQAB" ; ----- DKIM selector1 for allmers.eu
Das muss bei allen Domins, für den der Server signieren soll ins DNS eingetragen werden, damit die Mailempfänger die Signatur verifizieren können (in einen TXT-Record für die subdomain selector1_domainkey).
dkim-filter muss nun noch konfiguriert werden, dies geschieht in /etc/dkim-filter.conf:
Syslog yes
LogWhy yes
UMask 002
#alle Domains, fuer die signiert werden soll
Domain allmers.eu,allmers.de
#privater Schluessel
KeyFile /etc/dkim/selector1.private
#wieder der selector von der Keyerstellung
Selector selector1
Mode sv
SubDomains no
X-Header yes
#hört nur auf localhost, auf Port 8891
Socket inet:8891@localhost
Jetzt noch postfix beibringen, dass er den dkim-filter benutzen soll (in /etc/postfix/main.cf):
smtpd_milters = inet:localhost:8891
Und alles neu starten:
/etc/init.d/dkim-filter restart ; /etc/init.d/postfix/restart
Und schon sollte der Server Mails signieren. Dies kann man überprüfen, indem man eine Mail an sa-test/at/sendmail.net sendet. Wenn man dann sowas zurückbekommt ist alles gut:
Authentication System: DomainKeys Identified Mail
Result: DKIM signature confirmed GOOD







