E-Mail Sicherheit · 2 min read · Sep 27, 2025

DKIM für mehrere Domains auf Postfix mit dkim-milter 2.8.x (CentOS 5.3) einrichten

DKIM für mehrere Domains auf Postfix mit dkim-milter 2.8.x (CentOS 5.3) einrichten

Einführung

Der Internetstandard DomainKeys Identified Mail (DKIM) ermöglicht es E-Mail-Absendern, ihre Nachrichten digital zu signieren, sodass Empfänger überprüfen können, dass diese Nachrichten nicht gefälscht wurden. Das DKIM-Authentifizierungsschema ermöglicht es dem Empfänger einer Nachricht, zu bestätigen, dass eine Nachricht vom Domain des Absenders stammt und dass der Inhalt der Nachricht nicht verändert wurde. Eine auf Kryptographie basierende Lösung, DKIM bietet Unternehmen eine branchenübliche Methode zur Minderung von E-Mail-Betrug und zum Schutz der Marke und des Rufs einer Organisation zu relativ niedrigen Implementierungskosten. Die DKIM-Grundspecifikation wird von Sendmail, Inc. in Zusammenarbeit mit Cisco und Yahoo! vorangetrieben.

Dieses Tutorial basiert auf dem Tutorial DKIM auf Postfix mit dkim-milter (CentOS 5.2) einrichten und meiner persönlichen Erfahrung. Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

Installation

Topdog-Software bietet CentOS-RPMs für Dkim-milter unter http://www.topdog-software.com/oss/dkim-milter an, also werden wir die neueste Version installieren. Zum Zeitpunkt des Schreibens dieses Tutorials ist die neueste Version dkim-milter-2.8.3-1.

Installieren Sie das dkim-milter-RPM (32-Bit und 64-Bit Intel unterstützt)

wget http://www.topdog-software.com/oss/dkim-milter/dkim-milter-2.8.3-1.i386.rpm  
rpm -ivh dkim-milter-2.8.3-1.i386.rpm

Schlüssel generieren

/usr/bin/dkim-genkey  -r -d mydomain1.com

Ersetzen Sie mydomain1.com durch den Domainnamen, für den Sie die E-Mails signieren werden. Der Befehl erstellt zwei Dateien.

default.txt - enthält den öffentlichen Schlüssel, den Sie über DNS veröffentlichen
default.private - den privaten Schlüssel, den Sie zum Signieren Ihrer E-Mails verwenden

Benennen Sie den privaten Schlüssel um und verschieben Sie ihn in das dkim-milter-Schlüsseldirectory und sichern Sie ihn.

mv default.private default  
mkdir /etc/mail/dkim/keys/mydomain1.com  
mv default /etc/mail/dkim/keys/mydomain1.com  
chmod 600 /etc/mail/dkim/keys/mydomain1.com/default  
chown dkim-milt.dkim-milt /etc/mail/dkim/keys/mydomain1.com/default

Wichtiger Hinweis: Wiederholen Sie diese Schritte für andere Domains und verwenden Sie für jede Domain einen separaten Ordner, wie oben zu sehen ist, andernfalls erhalten Sie die Fehlermeldung “dkim: FAILED, invalid (public key: not available)”.

DNS-Setup

Sie müssen Ihren öffentlichen Schlüssel über DNS veröffentlichen. Client-Server verwenden diesen Schlüssel, um Ihre signierten E-Mails zu überprüfen. Der Inhalt von default.txt ist die Zeile, die Sie zu Ihrer Zonendatei hinzufügen müssen. Ein Beispiel ist unten.

default._domainkey IN TXT "v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDG81CNNVOlWwfhENOZEnJKNlikTB3Dnb5kUC8/zvht/S8SQnx+YgZ/KG7KOus0By8cIDDvwn3ElVRVQ6Jhz/HcvPU5DXCAC5owLBf/gX5tvAnjF1vSL8ZBetxquVHyJQpMFH3VW37m/mxPTGmDL+zJVW+CKpUcI8BJD03iW2l1CwIDAQAB"
; ----- DKIM default für mydomain1.com

Fügen Sie dies auch zu Ihrer Zonendatei hinzu.

_ssp._domainkey IN TXT "t=y; dkim=unknown"

Konfiguration

Sie müssen die Datei /etc/dkim-filter.conf überprüfen.

vi /etc/dkim-filter.conf

Sie muss folgendermaßen aussehen:

ADSPDiscard             yes
ADSPNoSuchDomain        yes
AllowSHA1Only           no
AlwaysAddARHeader       no
AutoRestart             yes
AutoRestartRate         10/1h
BaseDirectory           /var/run/dkim-milter
Canonicalization        simple/simple
Domain                  mydomain1.com   #fügen Sie hier alle Ihre Domains hinzu und trennen Sie sie mit Kommas
ExternalIgnoreList      /etc/mail/dkim/trusted-hosts
InternalHosts           /etc/mail/dkim/trusted-hosts
KeyList                 /etc/mail/dkim/keylist
LocalADSP               /etc/mail/dkim/local-adsp-rules
Mode                    sv
MTA                     MSA
On-Default              reject
On-BadSignature         reject
On-DNSError             tempfail
On-InternalError        accept
On-NoSignature          accept
On-Security             discard
PidFile                 /var/run/dkim-milter/dkim-milter.pid
QueryCache              yes
RemoveOldSignatures     yes
Selector                default
SignatureAlgorithm      rsa-sha1
Socket                  inet:20209@localhost
Syslog                  yes
SyslogSuccess           yes
TemporaryDirectory      /var/tmp
UMask                   022
UserID                  dkim-milt:dkim-milt
X-Header                yes

Überprüfen Sie die Datei /etc/mail/dkim/keylist.

vi /etc/mail/dkim/keylist

Sie muss folgendermaßen aussehen:

*@mydomain1.com:mydomain1.com:/etc/mail/dkim/keys/mydomain1.com/default

Hinweis: Wenn Sie andere Domains haben, müssen Sie diese in dieser Datei hinzufügen. Jede Zeile für eine Domain.

Postfix konfigurieren

Sie müssen die folgenden Optionen zur Postfix main.cf-Datei hinzufügen, um es zu aktivieren, den Milter zu verwenden.

vi /etc/postfix/main.cf
smtpd_milters = inet:localhost:20209
non_smtpd_milters = inet:localhost:20209
milter_protocol = 2
milter_default_action = accept

Fügen Sie die dkim-milter-Optionen zu den vorhandenen Miltern hinzu, wenn Sie bereits andere Milter konfiguriert haben.
Starten Sie dkim-milter und starten Sie Postfix neu:

service dkim-milter start  
service postfix restart

Testen

Senden Sie eine E-Mail an [email protected] oder [email protected], Sie erhalten eine Antwort, die angibt, ob Ihre Einrichtung korrekt funktioniert.

Updates

Aktualisierte RPMs werden immer unter http://www.topdog-software.com/oss/dkim-milter bereitgestellt.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.