Postfix: Problem mit ausgehenden Mails an t-online: loops back to myself

smileng

New Member
Hallo zusammen,
ich habe mich schon fast überall geschaut und werde aus dem Problem nicht schlau.
Ich habe einen Postfix-Server mit Confixx als Serverwaltungstool im Internet schon seit mehreren Jahren und hatte noch kein Problem mit T-Online.

Seit kurzer Zeit meldet mir mein Postfix:
mail for t-online.de loops back to myself

Auszug aus der main.cf: (hab mal die wichtigsten Parameter ausgeschnitten)
..
myhostname = mail.myserver.de
mydomain = myserver.de
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, $mydomain, localhost.$mydomain
relayhost =
mynetworks = 127.0.0.0/8
...
### CONFIXX POSTFIX ENTRY ###
virtual_alias_maps = hash:/etc/postfix/confixx_virtualUsers
virtual_alias_domains = hash:/etc/postfix/confixx_localDomains
...
smtpd_recipient_restrictions =
check_client_access hash:/etc/postfix/ip-block,
permit_sasl_authenticated,
permit_mynetworks,
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unauth_destination,
reject_rbl_client dnsbl.njabl.org,
check_policy_service inet:127.0.0.1:60000
...

Hier ein Beispiel für die confixx-Dateien

/etc/postfix/confixx_virtualUsers:

/etc/postfix/confixx_localDomains
virtualdomain1.de confixx
virtualdomain1.de confixx
...
myserver.de
...

Beim Vergleich der Abarbeitung von Mails an Google und T-Online ist mir aufgefallen, dass er bei T-Online zusätzlich noch ein rewrite testet:

Google:
Feb 25 09:57:25 (none) postfix/smtpd[28444]: resolve_clnt: `testaddresse@googlemail.com' -> transp=`smtp' host=`googlemail.com' rcpt=`testaddresse@googlemail.com' flags= class=default
Feb 25 09:57:25 (none) postfix/smtpd[28444]: ctable_locate: install entry key testaddresse@googlemail.com
Feb 25 09:57:25 (none) postfix/smtpd[28444]: extract_addr: result: testaddresse@googlemail.com
------ direkt weiter im Text ----------
Feb 25 09:57:25 (none) postfix/smtpd[28444]: >>> START Recipient address RESTRICTIONS <<<
Feb 25 09:57:25 (none) postfix/smtpd[28444]: generic_checks: name=check_client_access
Feb 25 09:57:25 (none) postfix/smtpd[28444]: check_namadr_access: name meineclientaddresse.domain.de addr <CLIENTIP>
Feb 25 09:57:25 (none) postfix/smtpd[28444]: check_domain_access:meineclientaddresse.domain.de
Feb 25 09:57:25 (none) postfix/smtpd[28444]: check_addr_access: <CLIENTIP>
Feb 25 09:57:25 (none) postfix/smtpd[28444]: generic_checks: name=check_client_access status=0
Feb 25 09:57:25 (none) postfix/smtpd[28444]: generic_checks: name=permit_sasl_authenticated
Feb 25 09:57:25 (none) postfix/smtpd[28444]: generic_checks: name=permit_sasl_authenticated status=1
Feb 25 09:57:25 (none) postfix/smtpd[28444]: >>> CHECKING RECIPIENT MAPS <<<
...

und hier der Prozess mit T-Online
...
Feb 25 09:57:32 (none) postfix/smtpd[28831]: resolve_clnt: `test@t-online.de' -> transp=`smtp' host=`t-online.de' rcpt=`test@t-online.de' flags= class=default
Feb 25 09:57:32 (none) postfix/smtpd[28831]: ctable_locate: install entry key test@t-online.de
Feb 25 09:57:32 (none) postfix/smtpd[28831]: extract_addr: result: test@t-online.de
---- und hier kommt ein Rewrite -------
Feb 25 09:57:32 (none) postfix/smtpd[28831]: send attr request = rewrite
Feb 25 09:57:32 (none) postfix/smtpd[28831]: send attr rule = canonicalize
Feb 25 09:57:32 (none) postfix/smtpd[28831]: send attr address = postmaster
Feb 25 09:57:32 (none) postfix/smtpd[28831]: private/rewrite socket: wanted attribute: address
Feb 25 09:57:32 (none) postfix/smtpd[28831]: input attribute name: address
Feb 25 09:57:32 (none) postfix/smtpd[28831]: input attribute value: postmaster@mail.myserver.de
Feb 25 09:57:32 (none) postfix/smtpd[28831]: private/rewrite socket: wanted attribute: (list terminator)
Feb 25 09:57:32 (none) postfix/smtpd[28831]: input attribute name: (end)
Feb 25 09:57:32 (none) postfix/smtpd[28831]: rewrite_clnt: canonicalize: postmaster -> postmaster@mail.myserver.de
------- und jetzt weiter im Text ---------
Feb 25 09:57:32 (none) postfix/smtpd[28831]: >>> START Recipient address RESTRICTIONS <<<
Feb 25 09:57:32 (none) postfix/smtpd[28831]: generic_checks: name=check_client_access
Feb 25 09:57:32 (none) postfix/smtpd[28831]: check_namadr_access: name meineclientaddresse.domain.de addr <CLIENTIP>
Feb 25 09:57:32 (none) postfix/smtpd[28831]: check_domain_access: meineclientaddresse.domain.de
Feb 25 09:57:32 (none) postfix/smtpd[28831]: check_addr_access: <CLIENTIP>
Feb 25 09:57:32 (none) postfix/smtpd[28831]: generic_checks: name=check_client_access status=0
Feb 25 09:57:32 (none) postfix/smtpd[28831]: generic_checks: name=permit_sasl_authenticated
Feb 25 09:57:32 (none) postfix/smtpd[28831]: generic_checks: name=permit_sasl_authenticated status=1
Feb 25 09:57:32 (none) postfix/smtpd[28831]: >>> CHECKING RECIPIENT MAPS <<<
...

Rewrite ist trivial-rewrite
master.cf:
smtp inet n - n - - smtpd
#submission inet n - - - - smtpd
# -o smtpd_etrn_restrictions=reject
#628 inet n - - - - qmqpd
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - - 300 1 qmgr
#qmgr fifo n - - 300 1 oqmgr
rewrite unix - - - - - trivial-rewrite
bounce unix - - - - 0 bounce
defer unix - - - - 0 bounce
trace unix - - - - 0 bounce
verify unix - - - - 1 verify
flush unix n - - 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - - - - smtp
relay unix - - - - - smtp
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - - - - showq
error unix - - - - - error
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
anvil unix - - n - 1 anvil
#
# Interfaces to non-Postfix software. Be sure to examine the manual
# pages of the non-Postfix software to find out what options it wants.
#
# maildrop. See the Postfix MAILDROP_README file for details.
#
maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
uucp unix - n n - - pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail unix - n n - - pipe
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -d -t$nexthop -f$sender $recipient
scalemail-backend unix - n n - 2 pipe
flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}

# only used by postfix-tls
#tlsmgr fifo - - n 300 1 tlsmgr
#smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
587 inet n - n - - smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes

smtp-amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes
-o disable_dns_lookups=yes
-o max_use=20

clamsmtp unix - - n - 16 smtp
-o smtp_send_xforward_command=yes
-o smtp_enforce_tls=no

127.0.0.1:10025 inet n - n - - smtpd
#smtp inet n - n - - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_delay_reject=no
-o smtpd_client_restrictions=permit_mynetworks,reject
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks_style=host
-o mynetworks=127.0.0.0/8
-o strict_rfc821_envelopes=yes
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
-o smtpd_client_connection_count_limit=0
-o smtpd_client_connection_rate_limit=0
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks

Ich bin hier echt am verzweifeln und weiß nicht, wo ich noch suchen sollte...
 
Was mir noch aufgefallen ist:
Bei der DNS-Abfrage, die postfix anscheinend durchführt, wird der MX von Google bzw. T-Online abgefragt.

Google:
141 0.669147 mail.myserver.de rns20.rl.b.rz-ip.net DNS 74 Standard query MX googlemail.com
149 0.765125 mail.myserver.de rns20.rl.b.rz-ip.net DNS 86 Standard query AAAA gmail-smtp-in.l.google.com
151 0.765754 mail.myserver.de rns20.rl.b.rz-ip.net DNS 94 Standard query AAAA gmail-smtp-in.l.google.com.mail.myserver.de
153 0.767171 mail.myserver.de rns20.rl.b.rz-ip.net DNS 86 Standard query A gmail-smtp-in.l.google.com
155 0.769961 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query AAAA alt1.gmail-smtp-in.l.google.com
159 0.771224 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query A alt1.gmail-smtp-in.l.google.com
162 0.772782 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query AAAA alt2.gmail-smtp-in.l.google.com
166 0.774441 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query A alt2.gmail-smtp-in.l.google.com
168 0.775407 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query AAAA alt3.gmail-smtp-in.l.google.com
172 0.777350 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query A alt3.gmail-smtp-in.l.google.com
174 0.778449 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query AAAA alt4.gmail-smtp-in.l.google.com
178 0.780366 mail.myserver.de rns20.rl.b.rz-ip.net DNS 91 Standard query A alt4.gmail-smtp-in.l.google.com

und hier T-Online:
302 3.067871 mail.myserver.de rns20.rl.b.rz-ip.net DNS 76 Standard query A mx00.t-online.de
304 3.068710 mail.myserver.de rns20.rl.b.rz-ip.net DNS 76 Standard query AAAA mx03.t-online.de
306 3.069267 mail.myserver.de rns20.rl.b.rz-ip.net DNS 84 Standard query AAAA mx03.t-online.de.mail.myserver.de
308 3.070388 mail.myserver.de rns20.rl.b.rz-ip.net DNS 76 Standard query A mx03.t-online.de
310 3.071296 mail.myserver.de rns20.rl.b.rz-ip.net DNS 76 Standard query AAAA mx02.t-online.de
312 3.071783 mail.myserver.de rns20.rl.b.rz-ip.net DNS 84 Standard query AAAA mx02.t-online.de.mail.myserver.de
314 3.072948 mail.myserver.de rns20.rl.b.rz-ip.net DNS 76 Standard query A mx02.t-online.de
316 3.073760 mail.myserver.de rns20.rl.b.rz-ip.net DNS 76 Standard query AAAA mx01.t-online.de
329 3.092013 mail.myserver.de rns20.rl.b.rz-ip.net DNS 84 Standard query AAAA mx01.t-online.de.mail.myserver.de
331 3.093373 mail.myserver.de rns20.rl.b.rz-ip.net DNS 76 Standard query A mx01.t-online.de

Aber warum fragt er nach mx02.t-online.de.mail.myserver.de, was ja dann wirklich bei mir wäre????
Gibt es ein Feature, welches den eigenen Domainnamen dort einsetzt und testet?
 
Ja, der Eintrag "search" in der resolv.conf
search Search list for host-name lookup.

The search list is normally determined from the local domain
name; by default, it contains only the local domain name. This
may be changed by listing the desired domain search path follow-
ing the search keyword with spaces or tabs separating the names.
Resolver queries having fewer than ndots dots (default is 1) in
them will be attempted using each component of the search path
in turn until a match is found. For environments with multiple
subdomains please read options ndots:n below to avoid man-in-
the-middle attacks and unnecessary traffic for the root-dns-
servers. Note that this process may be slow and will generate a
lot of network traffic if the servers for the listed domains are
not local, and that queries will time out if no server is avail-
able for one of the domains.

The search list is currently limited to six domains with a total
of 256 characters.
Gefährlich wird es dann, wenn im DNS noch ein Wildcard-Record *.myserver.de exisitiert.

Für einen gehosteten Server sollte man search immer leer lassen.
 
Danke für den Hinweis. Search ist mir nicht eingefallen.

Ich habe gerade mal geschaut, aber in der resolv.conf hab ich search aber auch nicht verwendet:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 8.8.8.8
nameserver 4.4.4.4
#nameserver 81.169.163.104
#nameserver 81.169.163.106
 
The search list is normally determined from the local domain name; by default, it contains only the local domain name.
Damit ist es myserver.de - du mußt irgendetwas anderes (z.B. nur einen Punkt) eintragen.
 
Hey Whistler,

ich hatte temporär jetzt für t-online.de ein transport-mapping konfiguriert, aber jetzt wo ich deinem Tipp gefolgt bin und in der resolv.conf ein
eingetragen habe, fragt postfix auch nicht mehr nach t-online.de.mail.myserver.de und die Mails gehen wieder den gewohnten Weg (ohne transport-mapping)!

Danke für den Tipp!

smileng
 
Back
Top