Exim Username-Based Authentication (DirectAdmin)
- Ensure the outgoing authenticating user is added in the Spam Experts systems my following the instructions to Add an Outgoing User
- Ensure the outgoing user has appropriate limits set to match your traffic volumes
- Open the Exim configuration file
/etc/exim.conf
- Add the following to the Routers section after Begin Routers:
- Depending on the configuration, you may have to comment "lookuphost:" router
- Add the following to the Transports section after Begin Transports:
- Add the following to the Begin Authenticators section:
- Restart Exim
- If you are signing with DKIM on your Direct Admin server you may need to add the following line under hosts_require_tls
spamexperts_smarthost_router:
driver = manualroute
domains = ! +local_domains
ignore_target_hosts = 127.0.0.0/8
condition = "${perl{check_limits}}"
# Exclude null sender messages from relaying via the smarthost
condition = ${if or {{!eq{$sender_address}{}} {!eq{$sender_host_address}{}}}}
headers_add = ${if !eq{$original_domain}{$domain}{X-Forwarded-For: $original_local_part@$original_domain}}\n\
X-AuthUser: $authenticated_id
headers_add = X-AuthUser: $authenticated_id
transport = spamexperts_smarthost_transport
route_list = $domain SMARTHOST::587
no_more
Where SMARTHOST is smtp.antispamcloud.com or as otherwise detailed here.
spamexperts_smarthost_transport:
driver = smtp
# In-case your server continues to send outgoing over port 25 please add the below line
port = 587
hosts_require_tls = SMARTHOST
hosts_require_auth = *
Where SMARTHOST is smtp.antispamcloud.com or as otherwise detailed here.
spamexperts_login:
driver = plaintext
public_name = LOGIN
client_send = : username@demo-domain.invalid : yourUserPassword
Where username@demo-domain.invalid is the full email address and yourUserPassword is the password for the Authenticating user as configured in Spam Experts
.include_if_exists /etc/exim.dkim.conf