OpenDKIM ignoriert Hostnamen und Domänen in der Datei „Trusted Hosts“

OpenDKIM ignoriert Hostnamen und Domänen in der Datei „Trusted Hosts“

Entsprechendhttp://opendkim.org/opendkim.conf.5.htmlunterstützen die Optionen ExternalIgnoredHostsund InternalHostsdasselbe Format wie die PeerListOption wie folgt:

Der Satz sollte in jeder Zeile einen Hostnamen, einen Domänennamen (z. B. „.example.com“), eine IP-Adresse, eine IPv6-Adresse (einschließlich einer zugeordneten IPv4-Adresse) oder eine IP-Spezifikation im CIDR-Stil (z. B. „192.168.1.0/24“) enthalten.

IP-Adressen und Subnetze werden korrekt als interne Hosts identifiziert, aber nicht alle Hostnamen und Domänen werden erfasst.

Hier ist/etc/opendkim.conf

LogWhy              yes
Syslog              yes
SyslogSuccess       yes
UMask               002
UserID              opendkim:opendkim

KeyTable            refile:/etc/opendkim/key.table
SigningTable        refile:/etc/opendkim/signing.table

ExternalIgnoreList  refile:/etc/opendkim/trusted.hosts
InternalHosts       refile:/etc/opendkim/trusted.hosts

AutoRestart         yes
AutoRestartRate     10/1M
Background          yes
Canonicalization    relaxed/simple
DNSTimeout          5
Mode                sv
Nameservers         192.168.100.1,192.168.100.2
OversignHeaders     From
SignatureAlgorithm  rsa-sha256
SubDomains          no

Socket              local:/var/spool/postfix/opendkim/opendkim.sock
PidFile             /run/opendkim/opendkim.pid

Und/etc/opendkim/trusted.hosts

127.0.0.1
::1
localhost
mailserver                # mail server hostname
192.168.100.50            # test server
webserver.domain.local    # web server
.domain.local             # entire local domain
*.testdomain.local        # entire local test domain

Und main.cfMilter-Optionen:

milter_default_action = accept
milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_type} {auth_authen}
milter_protocol = 6
smtpd_milters = local:opendkim/opendkim.sock
non_smtpd_milters = $smtpd_milters

E-Mail von 192.168.100.50ist wie erwartet signiert:

mailserver postfix/qmgr[5406]: 59CA920E11: removed
mailserver postfix/smtpd[5412]: connect from testserver.mydomain.com[192.168.100.50]
mailserver postfix/smtpd[5412]: 41BD520E11: client=testserver.mydomain.com[192.168.100.50]
mailserver postfix/cleanup[5436]: 41BD520E11: message-id=<>
mailserver opendkim[5427]: 41BD520E11: DKIM-Signature field added (s=default, d=contoso.com)
mailserver postfix/qmgr[5406]: 41BD520E11: from=<[email protected]>, size=371, nrcpt=1 (queue active)
mailserver postfix/smtp[5437]: 41BD520E11: to=<[email protected]>, relay=ASPMX.L.GOOGLE.COM[173.194.76.27]:25, delay=0.4, delays=0.01/0/0.13/0.26, dsn=2.0.0, status=sent (250 2.0.0 OK  1610364907 k20si14443742wrc.23 - gsmtp)
mailserver postfix/qmgr[5406]: 41BD520E11: removed

Aber E-Mails von webserver.domain.localwerden nicht als intern erkannt, obwohl der Name des Clients aufgelöst wird:

mailserver postfix/smtpd[5846]: connect from webserver.domain.local[192.168.100.51]
mailserver postfix/smtpd[5846]: 4F00620E11: client=webserver.domain.local[192.168.100.51]
mailserver postfix/cleanup[5850]: 4F00620E11: message-id=<>
mailserver opendkim[5840]: 4F00620E11: webserver.domain.local [192.168.100.51] not internal
mailserver opendkim[5840]: 4F00620E11: not authenticated
mailserver opendkim[5840]: 4F00620E11: no signature data
mailserver postfix/qmgr[5821]: 4F00620E11: from=<[email protected]>, size=371, nrcpt=1 (queue active)
mailserver postfix/smtp[5851]: 4F00620E11: to=<[email protected]>, relay=ASPMX.L.GOOGLE.COM[74.125.133.27]:25, delay=0.83, delays=0.01/0/0.43/0.39, dsn=2.0.0, status=sent (250 2.0.0 OK  1610365309 g124si15021166wma.170 - gsmtp)
mailserver postfix/qmgr[5821]: 4F00620E11: removed

Übersehe ich etwas im Zusammenhang mit der Auflösung von Hostnamen oder etwas Grundlegenderes im Zusammenhang mit der Implementierung dieser Funktionalität? Ich habe auch Domänenkombinationen von *.domain.localund .domain.localin /etc/opendkim/trusted.hostsohne Erfolg ausprobiert.

Für jede Hilfe wäre ich dankbar.

Versionsnummern:

~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.4 LTS
Release:        18.04
Codename:       bionic

~$ postconf mail_version
mail_version = 3.3.0

opendkim -V
~$ opendkim -V
opendkim: OpenDKIM Filter v2.11.0
        Compiled with OpenSSL 1.1.1  11 Sep 2018
        SMFI_VERSION 0x1000001
        libmilter version 1.0.1
        Supported signing algorithms:
                rsa-sha1
                rsa-sha256
        Supported canonicalization algorithms:
                relaxed
                simple
        Active code options:
                POLL
                QUERY_CACHE
                USE_DB
                USE_LDAP
                USE_LUA
                USE_ODBX
                USE_UNBOUND
                _FFR_ATPS
                _FFR_RBL
                _FFR_REPLACE_RULES
                _FFR_SENDER_MACRO
                _FFR_STATS
                _FFR_VBR
        libopendkim 2.11.0: atps query_cache

Antwort1

Dies wurde behoben, indem die führenden Sternchen aus einem Domänen-Platzhalter entfernt wurden /etc/opendkim/trusted.hosts. Die vorhandenen Sternchen führten nicht nur dazu, dass der Domänen-Platzhalter nicht mehr funktionierte, sondern auch dazu, dass alle anderen Zeichenfolgeneinträge in der Datei nicht mehr funktionierten. IP-Adressen waren davon allerdings nicht betroffen.

IP-Adressen funktionieren, Zeichenfolgen jedoch nicht:

127.0.0.1
::1
localhost
mailserver                # mail server hostname
192.168.100.50            # test server
webserver.domain.local    # web server
.domain.local             # entire local domain
*.testdomain.local        # entire local test domain

Sowohl IP-Adressen als auch Zeichenfolgen funktionieren:

127.0.0.1
::1
localhost
mailserver                # mail server hostname
192.168.100.50            # test server
webserver.domain.local    # web server
.domain.local             # entire local domain
.testdomain.local         # entire local test domain

verwandte Informationen