DKIM-Signierung in Rspamd einrichten

Richte die automatische DKIM-Signierung ausgehender E-Mails in Rspamd ein. Lerne, wie du Schlüssel generierst und das Modul dkim_signing konfigurierst.

Stand: Juli 2026

Zusammenfassung: Die E-Mail-Signierung mit DKIM lässt sich in Rspamd über das Modul dkim_signing konfigurieren. Voraussetzung dafür ist, dass ausgehende E-Mails von Rspamd gescannt werden. Schlüsselpaare können mit dem Tool rspamadm dkim_keygen erzeugt und im Dateisystem hinterlegt werden.

Wenn du Rspamd zur Spamfilterung auf deinem Server einsetzt, kannst du es auch dazu nutzen, ausgehende E-Mails mit einer DKIM-Signatur zu versehen. Wenn Scanner wie Kuveris bemängeln, dass deine E-Mails unsigniert sind, hilft dir diese Anleitung bei der Behebung.

Wichtige Voraussetzung: Ausgehender Mailscan

Bevor du mit der Konfiguration beginnst, musst du sicherstellen, dass ausgehende E-Mails überhaupt durch Rspamd geleitet werden.

Die offizielle Dokumentation stellt klar: For DKIM signing to work, you must scan outbound mail with rspamd.

Zudem wird eine E-Mail nur unter bestimmten Bedingungen signiert: In order to be eligible for signing, an email must either be received from an authenticated user, a reserved (local) IP address, or an address in the sign_networks map (if defined).

Schlüssel generieren mit rspamadm dkim_keygen

Rspamd bietet ein integriertes Werkzeug namens rspamadm dkim_keygen zur Schlüsselgenerierung.

Im einfachsten Fall generierst du einen Schlüssel mit: rspamadm dkim_keygen -s 'test' -d example.com

Um einen sichereren 2048-Bit-Schlüssel zu erzeugen und die Ausgaben direkt in Dateien zu speichern, empfiehlt sich folgender Befehl: rspamadm dkim_keygen -s 'woosh' -b 2048 -d example.com -k example.private > example.txt

Beachte hierbei die Bedeutung der Flags: -b 2048 specifies a 2048 bit key size (the standard default 1024 bit size is weak)

Das Tool gibt zwei Teile aus:

Hinterlege den Inhalt aus example.txt als TXT-Record in deiner DNS-Zone (z. B. unter woosh._domainkey.example.com).

Konfiguration des dkim_signing-Moduls

Die Konfiguration des Moduls erfolgt in /etc/rspamd/local.d/dkim_signing.conf.

Pfad und Selektor konfigurieren

Standardmäßig sucht Rspamd nach Schlüsseln in einem bestimmten Verzeichnispfad auf Basis der effektiven Second-Level-Domain (eSLD): For example, the search path for user@test.example.com would be /var/lib/rspamd/dkim/example.com.dkim.key. If a key is found, the message will be signed.

Du kannst diesen Suchpfad und den Selektor in der Konfiguration explizit festlegen. Dabei kannst du Variablen wie $domain und $selector verwenden:

path = "/var/lib/rspamd/dkim/$domain.$selector.key";

Der Standard-Selektor, den Rspamd verwendet, ist dkim: # Default selector to use selector = "dkim";

Berechtigungen prüfen

Damit Rspamd die Schlüsseldateien lesen und Signaturen berechnen kann, müssen die Dateiberechtigungen stimmen: This requires the keys to be accessible by the user or group _rspamd.

Stelle sicher, dass die privaten Schlüssel für den Benutzer _rspamd lesbar sind (z. B. per chown _rspamd /var/lib/rspamd/dkim/*.key).

Domainauswahl und Sicherheitsabgleiche

In der Konfigurationsdatei stellst du ein, wie Rspamd die zu signierende Domain ermittelt und ob Abweichungen zulässig sind:

Abweichende Pfade per Domain konfigurieren

Falls du für einzelne Domains abweichende Selektoren oder Pfade konfigurieren möchtest, kannst du einen domain { } Block in der Datei anlegen: domain { # Domain name is used as key example.com { # Private key path path = "/var/lib/rspamd/dkim/example.key"; # Selector selector = "ds"; } }

Signieralgorithmen

Für die Generierung der Signatur wendet Rspamd bewährte Standardeinstellungen an: Rspamd always uses relaxed/relaxed encoding with the rsa-sha256 signature algorithm

Konfiguration prüfen

Nachdem du die Einstellungen in /etc/rspamd/local.d/dkim_signing.conf vorgenommen hast, lade Rspamd neu (systemctl reload rspamd). Sende anschließend eine Test-E-Mail über deinen Mailserver an eine externe Adresse und prüfe das Ergebnis mit dem kostenlosen Kuveris-Scanner, um sicherzustellen, dass die DKIM-Signatur vorhanden und im DNS valide auflösbar ist.

Weiterführende Links