Warning: This article was written in 2013, the content might be out of date.

EXIM and AWS SES

Categories: General

The Amazon documentation says edit the exim.conf file, but it did not work for me. Editing the exim.conf.template did.

sudo dpkg-reconfigure exim4-config
Leave everything as default except changing the relay server to AWS SES

To configure integration using STARTTLS

Edit the /etc/exim/exim.conf.template file. If the file does not exist, create it. In this file, make the following changes:

In the routers section, after the begin routers line, add the following:

send_via_ses:
driver = manualroute
domains = ! +local_domains
transport = ses_smtp
route_list = * email-smtp.us-east-1.amazonaws.com

In the transports section, after the begin transports line, add the following:
ses_smtp:
driver = smtp
port = 25
hosts_require_auth = $host_address
hosts_require_tls = $host_address

In the authenticators section, after the begin authenticators line, add the following, replacing USERNAME and PASSWORD with your SMTP user name and password:
Important: Use your SMTP user name and password, not your AWS access key ID and secret access key. Your SMTP credentials and your AWS credentials are not the same. For information about how to obtain your SMTP credentials, see Obtaining Your Amazon SES SMTP Credentials.
ses_login:
driver = plaintext
public_name = LOGIN
client_send = : USERNAME : PASSWORD #obtain this information from AWS SES
Save the /etc/exim/exim.conf.template file.

Look for this section:
login:                                                                                              
  driver = plaintext                                                                                
  public_name = LOGIN                                                              

Change the LOGIN to OLD_LOGIN

Restart the exim4 service

Next | Previous