Q0743 - Exim/exim GitHub Wiki
What should I put in my acl_smtp_rcpt?
Often, people want to arrange their RCPT ACL something like this:
-
Accept anything locally generated:
accept hosts = :
-
Accept anything from authenticated users:
accept authenticated = *
-
Accept anything from the local network:
accept hosts = +local_network
- here you have to decide what "local_network" means - for
example, you might want to define it as
192.168.0.0/16
- here you have to decide what "local_network" means - for
example, you might want to define it as
-
Reject non-local domains:
deny domains = !+local_domains message = Relaying denied
- this is what stops your Exim from being an open relay. Again,
you have to decide what
local_domains
means.
- this is what stops your Exim from being an open relay. Again,
you have to decide what
-
Reject invalid recipients:
require verify = recipient
- this causes Exim to check that the recipient is routeable.
For example,
[email protected]
might exist, but[email protected]
might not. Usingverify = recipient
, in conjunction with the right router configuration, causes Exim to reject the bad addresses at RCPT time.
- this causes Exim to check that the recipient is routeable.
For example,
-
If you want to add extra checks (such as consulting DNS blacklists, or rejecting "bounce" messages with large numbers of recipients), this would be a good place to do add them.
-
Accept the rest:
accept
But as long as you don't configure Exim to be an open relay, the details are entirely up to you.
For more information, see the Exim Specification: