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.rpmSchlüssel generieren
/usr/bin/dkim-genkey -r -d mydomain1.comErsetzen 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/defaultWichtiger 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.comFü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.confSie 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/keylistSie muss folgendermaßen aussehen:
*@mydomain1.com:mydomain1.com:/etc/mail/dkim/keys/mydomain1.com/defaultHinweis: 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.cfsmtpd_milters = inet:localhost:20209
non_smtpd_milters = inet:localhost:20209
milter_protocol = 2
milter_default_action = acceptFü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 restartTesten
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.
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.