[exim] Sender verify at extreme

Etusivu
Poista viesti
Vastaa
Lähettäjä: Marcin Krol
Päiväys:  
Vastaanottaja: exim-users
Aihe: [exim] Sender verify at extreme
Hello everyone,

OK, so I designed myself this ACL for sender verify with exceptions
made for some broken domains that are held in
/etc/exim/wildcard_whitelist_domains file ( *.badly.broken.domain ):

begin acl

acl_nsvdom:
        accept condition = ${lookup {${lc:$sender_address_domain}} partial1-lsearch {/etc/exim/wildcard_whitelist_domains} {yes}{no}}
        require verify = sender/callout=120s,defer_ok
        control = no_callout_flush
        accept


[...]

require verify = sender
acl = acl_nsvdom


It worked dandy until some of my users tried getting mails with
activation links from one badly misconfigured domain:

playfoto.pl.            259200  IN      MX      10 87.98.232.90.


exim -bh 87.98.232.90 gives me this:

>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing play@???
>>> playfoto.pl in "lsearch;/etc/virtual/domains"? no (end of list)
>>> playfoto.pl in "! +local_domains"? yes (end of list)
>>> calling lookuphost router
>>> lookuphost router declined for play@???
>>> "more" is false: skipping remaining routers
>>> no more routers
>>> ----------- end verify ------------
>>> require: condition test failed

LOG: H=gnugeneration.net (o) [87.98.232.90] sender verify fail for <play@???>: all relevant MX records point to non-existent hosts or (invalidly) to IP addresses
550-Verification failed for <play@???>
550-It appears that the DNS operator for playfoto.pl
550-has installed an invalid MX record with an IP address
550-instead of a domain name on the right hand side.
550 Sender verify failed
LOG: H=gnugeneration.net (o) [87.98.232.90] F=<play@???>
rejected RCPT xxx@???: Sender verify failed

Why would this condition fail??? After all, I clearly defined accept
condition:

accept condition = ${lookup {${lc:$sender_address_domain}} partial1-lsearch {/etc/exim/wildcard_whitelist_domains} {yes}{no}}

It is fulfilled, because the wildcard domain "*.playfoto.pl" is added
there (and I have tested it in case of domains that have good MX but
where sender verify fails for some other reasons, like greylisting).
Therefore, correctness of MX for the domain or lack thereof should play
no role in deciding whether to accept or reject the mail.

Anybody has a clue why this require fails?

Thanks in advance,
Marcin Krol