著者: Fernando Sanchez 日付: To: exim-users 題目: [Exim] sender verify problem
I'm running Debian with exim 4.40. I don't know if is more a problem
about the distribution, but my
require verify = sender
is not working well. I run exim4 -bh and I get this
**** SMTP testing session as if from host 123.123.123.123
**** but without any ident (RFC 1413) callback.
**** This is not for real!
>>> host in host_lookup? yes (matched "*")
>>> looking up host name for 123.123.123.123
>>> IP address lookup failed: h_errno=1 LOG: no host name found for IP address 123.123.123.123 >>> host in host_reject_connection? no (option unset)
>>> host in sender_unqualified_hosts? no (option unset)
>>> host in recipient_unqualified_hosts? no (option unset)
>>> host in helo_verify_hosts? no (option unset)
>>> host in helo_try_verify_hosts? no (option unset)
>>> host in helo_accept_junk_hosts? no (option unset) 220 mail.usfq.edu.ec ESMTP Exim 4.20 Wed, 02 Jul 2003 13:06:42 -0500
helo no.server.com >>> no.server.com in helo_lookup_domains? no (end of list) 250 mail.usfq.edu.ec Hello no.server.com [123.123.123.123]
mail from: nosuchuser@???
250 OK
rcpt to: myuser@??? >>> using ACL "acl_check_rcpt"
>>> processing "accept"
>>> check hosts = :
>>> host in ":"? no (end of list)
>>> accept: condition test failed
>>> processing "deny"
>>> check local_parts = ^.*[@%!/|] : ^\\.
>>> myuser in "^.*[@%!/|] : ^\."? no (end of list)
>>> deny: condition test failed
>>> processing "accept"
>>> check local_parts = postmaster
>>> myuser in "postmaster"? no (end of list)
>>> accept: condition test failed
>>> processing "require"
>>> check verify = sender
>>> exim.org in "mail.usfq.edu.ec"? no (end of list)
>>> nosuchuser@??? in "*@mail.usfq.edu.ec"? no (end of list)
>>> exim.org in "localhost"? no (end of list)
>>> nosuchuser@??? in "*@localhost"? no (end of list)
>>> exim.org in "usfq.edu.ec"? no (end of list)
>>> nosuchuser@??? in "*@usfq.edu.ec"? no (end of list)
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing nosuchuser@???
>>> exim.org in "@:mail.usfq.edu.ec:localhost:usfq.edu.ec"? no (end of list) >>> exim.org in "! +local_domains"? yes (end of list)
>>> calling dnslookup router
>>> 195.92.195.160 in "0.0.0.0 : 127.0.0.0/8 : 192.168.0.0/16 :172.16.0.0/12 : 10.0.0.0/8 : 169.254.0.0/16"? no (end of list) >>> 195.92.193.160 in "0.0.0.0 : 127.0.0.0/8 : 192.168.0.0/16 :172.16.0.0/12 : 10.0.0.0/8 : 169.254.0.0/16"? no (end of list) >>> 195.92.249.251 in "0.0.0.0 : 127.0.0.0/8 : 192.168.0.0/16 :172.16.0.0/12 : 10.0.0.0/8 : 169.254.0.0/16"? no (end of list) >>> routed by dnslookup router
>>> ----------- end verify ------------
>>> require: condition test succeeded
>>> processing "deny"
>>> check !acl = acl_whitelist_local_deny
>>> using ACL "acl_whitelist_local_deny"
>>> processing "accept"
>>> check hosts = ${if exists{/etc/exim4/local_host_whitelist}{/etc/exim4/local_host_whitelist}{}} >>> host in ""? no (end of list)
>>> accept: condition test failed
>>> processing "accept"
>>> check senders = ${if exists{/etc/exim4/local_sender_whitelist}{/etc/exim4/local_sender_whitelist}{}} >>> nosuchuser@??? in ""? no (end of list)
>>> accept: condition test failed
>>> end of ACL "acl_whitelist_local_deny": implicit DENY
>>> check senders = ${if exists{/etc/exim4/local_sender_blacklist}{/etc/exim4/local_sender_blacklist}{}} >>> nosuchuser@??? in ""? no (end of list)
>>> deny: condition test failed
>>> processing "deny"
>>> check !acl = acl_whitelist_local_deny
>>> using ACL "acl_whitelist_local_deny"
>>> processing "accept"
>>> check hosts = ${if exists{/etc/exim4/local_host_whitelist}{/etc/exim4/local_host_whitelist}{}} >>> host in ""? no (end of list)
>>> accept: condition test failed
>>> processing "accept"
>>> check senders = ${if exists{/etc/exim4/local_sender_whitelist}{/etc/exim4/local_sender_whitelist}{}} >>> nosuchuser@??? in ""? no (end of list)
>>> accept: condition test failed
>>> end of ACL "acl_whitelist_local_deny": implicit DENY
>>> check hosts = ${if exists{/etc/exim4/local_host_blacklist}{/etc/exim4/local_host_blacklist}{}} >>> host in ""? no (end of list)
>>> deny: condition test failed
>>> processing "accept"
>>> check domains = +local_domains
>>> mail.usfq.edu.ec in "@:mail.usfq.edu.ec:localhost:usfq.edu.ec"? yes (matched "@") >>> mail.usfq.edu.ec in "+local_domains"? yes (matched "+local_domains")
>>> check verify = recipient
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing myuser@???
>>> mail.usfq.edu.ec in "! +local_domains"? no (matched "! +local_domains" - cached) >>> calling amavis router
>>> routed by amavis router
>>> ----------- end verify ------------
>>> accept: condition test succeeded 250 Accepted
It seems like it just test for a valid dns server, but not for a valid
user on a valid domain. Is the verify = sender condition implemented
only on the source or is there any way I can modify the behaibior?