[exim] Host lacks reverse DNS

Αρχική Σελίδα
Delete this message
Reply to this message
Συντάκτης: Kamal Ashour
Ημερομηνία:  
Προς: exim-users
Αντικείμενο: [exim] Host lacks reverse DNS
Greetings,

Sending and receiving emails from the localhost works, but sending email
from the local network clients via IMAP/POP gives the following and email
rejects, if I add the client IP address to the hosts files works ok, but
clients on the local network setup with dynamic ips.

I want to bypass local network DNS lookup, I included my exim.conf setup
below.

What am i missing?

Thanks in advance.

2010-08-03 20:37:55 1OgSva-0000f6-QB H=([192.168.0.7]) [192.168.0.7]
F=<kamal@???> temporarily rejected after DATA: Greylisted
<<4C58C467.1070206@???>> from <kamal@???>
for offences: Host 192.168.0.7 lacks reverse DNS

I have the following setup

Local Network 192.168.0.0/24
Linux Fedora 13
Exim 4.72
Dovecot IMAP/POP

domainlist local_domains = @:localhost:dsearch;/etc/exim/virtual
domainlist relay_to_domains =
hostlist relay_from_hosts = 127.0.0.1 : 192.168.0.0/16

host_lookup = *

begin acl

# This access control list is used for the MAIL command in an incoming
# SMTP message.

acl_check_mail:

# Hosts are required to say HELO (or EHLO) before sending mail.
# So don't allow them to use the MAIL command if they haven't
# done so.

  deny condition = ${if eq{$sender_helo_name}{} {1}}
       message = Nice boys say HELO first


# Use the lack of reverse DNS to trigger greylisting. Some people
# even reject for it but that would be a little excessive.

  warn condition = ${if eq{$sender_host_name}{} {1}}
       set acl_m_greylistreasons = Host $sender_host_address lacks reverse
DNS\n$acl_m_greylistreasons


accept

acl_check_rcpt:

# Accept if the source is local SMTP (i.e. not over TCP/IP). We do this
by
# testing for an empty sending host field.

  accept  hosts = :
          control = dkim_disable_verify


# Accept mail to postmaster in any local domain, regardless of the
source,
# and without verifying the sender.

  accept  local_parts   = postmaster
          domains       = +local_domains


# Deny unless the sender address can be routed. For proper verification
of the
# address, read the documentation on callouts and add the /callout
modifier.

  require verify        = sender


acl_check_data:

require acl = greylist_mail

accept

# To enable the greylisting, also uncomment this line:
.include /etc/exim/exim-greylist.conf.inc

begin routers

# This router routes addresses that are not in local domains by doing a
DNS
# lookup on the domain name. The exclamation mark that appears in "domains
= !
# +local_domains" is a negating operator, that is, it can be read as
"not". The
# recipient's domain must not be one of those defined by "domainlist
# local_domains" above for this router to be used.
#
# If the router is used, any domain that resolves to 0.0.0.0 or to a
loopback
# interface address (127.0.0.0/8) is treated as if it had no DNS entry.
Note
# that 0.0.0.0 is the same as 0.0.0.0/32, which is commonly treated as the
# local host inside the network stack. It is not 0.0.0.0/0, the default
route.
# If the DNS lookup fails, no further routers are tried because of the
no_more
# setting, and consequently the address is unrouteable.

#dnslookup:
# driver = dnslookup
# domains = ! +local_domains
# transport = remote_smtp
# ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
# no_more

# Alternatively, comment out the above router and uncomment this one to
# route all mail to a smarthost instead of sending it directly to the
# intended recipients. If your smarthost requires authentication, change
# 'remote_smtp' to 'remote_msa' and set up the 'client_auth' authenticator
# later in this file. You might need to change the port number in the
# remote_msa transport.
#
smarthost:
driver = manualroute
domains = ! +local_domains
transport = remote_smtp
route_data = smtp-server
no_more

virtual:
driver = redirect
allow_defer
allow_fail
domains = dsearch;/etc/exim/virtual
data =
${expand:${lookup{$local_part}lsearch*@{/etc/exim/virtual/$domain}}}
retry_use_local_part
no_more