Postfix und rspamd: keine DKIM-Signatur bei internen Mails

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
Wonko
Beiträge: 3
Registriert: 08.03.2010 13:37:19

Postfix und rspamd: keine DKIM-Signatur bei internen Mails

Beitrag von Wonko » 03.03.2018 18:48:00

Hallo zusammen,

ich habe Postfix laufen. Meine ausgehenden Mails bekommen über rspamd eine DKIM-Signatur.

Funktioniert soweit auch gut. Nur Mails aus meinen internen Netzen bekommen keine DKIM-Signatur - ich vermute, weil rspamd sie nie zu Gesicht bekommt.

Wenn ich von einem Client aus dem lokalen Netz eine Mail über Port 587 verschickt, wird keine Authentifizierung verlangt. Allerdings wird dann die Mail auch nicht signiert, wenn sie an eine externe Adresse geht. Ich vermute das liegt am permit_mynetworks.

Als Workaround habe ich jetzt den IP-Bereich auf mynetworks entfernt und liefere die Mails mit Authentifizierung ein, so bekomme ich auch die DKIM-Signatur. Aber die Authentifizierung möchte ich natürlich vermeiden.

Wie kann ich trotz permit_mynetworks die Mails an rspamd weiterleiten?

Zum Setup:

rspamd ist in der main.cf als über die Milter-Schnittstelle eingebunden:

Code: Alles auswählen

smtpd_milters = inet:localhost:11332
non_smtpd_milters = inet:localhost:11332
milter_protocol = 6
milter_mail_macros =  i {mail_addr} {client_addr} {client_name} {auth_authen}
milter_default_action = accept
Das lokale Netz (192.168.30.*) ist in mynetworks hinterlegt:

Code: Alles auswählen

mynetworks = 127.0.0.0/8 192.168.30.0/24 [::ffff:127.0.0.0]/104 [::1]/128
Sonstige relevante Einstellungen in der main.cf

Code: Alles auswählen

smtpd_relay_restrictions =      reject_non_fqdn_recipient
                                reject_unknown_recipient_domain
                                permit_mynetworks
                                reject_unauth_destination

smtpd_client_restrictions =     permit_mynetworks
                                check_client_access hash:/etc/postfix/without_ptr
                                reject_unknown_client_hostname


smtpd_helo_required = yes
smtpd_helo_restrictions =   permit_mynetworks
                            reject_invalid_helo_hostname
                            reject_non_fqdn_helo_hostname
                            reject_unknown_helo_hostname

smtpd_data_restrictions = reject_unauth_pipelining

mua_relay_restrictions = reject_non_fqdn_recipient,reject_unknown_recipient_domain,permit_mynetworks,permit_sasl_authenticated,reject
mua_sender_restrictions = permit_mynetworks,reject_non_fqdn_sender,permit_sasl_authenticated,reject
mua_client_restrictions = permit_mynetworks,permit_sasl_authenticated,reject
master.cf:

Code: Alles auswählen

submission inet n       -       y       -       -       smtpd
    -o syslog_name=postfix/submission
    -o smtpd_tls_security_level=encrypt
    -o smtpd_sasl_auth_enable=yes
    -o smtpd_sasl_type=dovecot
    -o smtpd_sasl_path=private/auth
    -o smtpd_sasl_security_options=noanonymous
    -o smtpd_client_restrictions=$mua_client_restrictions
    -o smtpd_sender_restrictions=$mua_sender_restrictions
    -o smtpd_relay_restrictions=$mua_relay_restrictions
    -o milter_macro_daemon_name=ORIGINATING
    -o smtpd_sender_login_maps=mysql:/etc/postfix/sql/mysql-sender-login-maps.cf
    -o smtpd_helo_required=no
    -o smtpd_helo_restrictions=
Gruß
Wonko

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Postfix und rspamd: keine DKIM-Signatur bei internen Mails

Beitrag von rendegast » 04.03.2018 19:35:12

In MILTER_README (Debianpostfix-doc) wird auf den Unterschied von smtpd_milters <-> non_smtpd_milters eingegangen.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Wonko
Beiträge: 3
Registriert: 08.03.2010 13:37:19

Re: Postfix und rspamd: keine DKIM-Signatur bei internen Mails

Beitrag von Wonko » 04.03.2018 23:05:26

rendegast hat geschrieben: ↑ zum Beitrag ↑
04.03.2018 19:35:12
In MILTER_README (Debianpostfix-doc) wird auf den Unterschied von smtpd_milters <-> non_smtpd_milters eingegangen.
Ich verstehe jetzt nicht so ganz, worauf du hinaus willst.

non_smtpd_milters sind für Mails, die nicht über SMTP eingeliefert werden. Wenn ich auf dem Mailserver selbst über die Kommandozeile eine Mail mit "mail" schicke, wird sie über qmqpd eingeliefert und erhält auch eine DKIM-Signatur von rspamd. Rspamd ist ja als Milter auch über non_smtpd_milters eingebunden ...

Was nicht funktioniert ist eine Mail aus dem lokalen Netz (192.168.30.*) von anderen Rechnern. Die werden per SMTP über Port 587 eingeliefert. Das lokale Netz gilt als vertrauenswürdig, deswegen wir keine Authentifizierung verlangt (permit_mynetworks). Doch nach dem permit_mynetworks werden offensichtlich auch die Milter nicht mehr ausgeführt, rspamd bekommt die Mail nicht zu Gesicht und sie bekommt keine DKIM-Signatur.

Ich suche quasi einen Weg, wie ich trotz permit_mynetworks den Milter aufrufe... Oder anderweitig die Authentifizierung umgehe.

Benutzeravatar
HZB
Beiträge: 486
Registriert: 22.10.2003 11:52:15
Wohnort: Wien

Re: Postfix und rspamd: keine DKIM-Signatur bei internen Mails

Beitrag von HZB » 05.03.2018 09:51:43

Bist Du sicher das es am Postfix liegt ?

In der options.inc wird zB das locale Netz definiert. Oder zumindest kann man es dort definieren.
Für das Signieren muss noch die local.d/dkim_signing.conf richtig sein.

Wie hast Du das impelmentiert ?

Antworten