Exim 4
Versions of Exim prior to the current major release are considered obsolete. If you are using Exim 3.x or earlier it is suggested by the Exim development team that you upgrade to the current release.
The following configuration file, which can be found at /etc/exim4/update-exim4.conf.conf, was pulled from Ubuntu Server 10.4 and is for example purposes only:
dc_eximconfig_configtype='smarthost'
dc_other_hostnames=''
dc_local_interfaces='127.0.0.1'
dc_readhost='your.server.name'
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.sendgrid.net::587'
CFILEMODE='644'
dc_use_split_config='false'
dc_hide_mailname='true'
dc_mailname_in_oh='true'
Enable TLS support in /etc/exim4/exim4.conf.localmacros.
If this file does not exist, you will need to create it:
MAIN_TLS_ENABLE = 1
Enter credentials that will allow Exim to access SendGrid in /etc/exim4/passwd.client:
Note that you must use an API key to authenticate. Do this by setting your username to 'apikey' and your password to your API key's actual value (the string provided by Twilio SendGrid when you created the key).
*:apikey:<YourAPIKey>
Once you have completed and saved all changes to Exim's configuration files, you will need to restart it to activate those changes:
$ /etc/init.d/exim4 restart
cPanel
If you are using cPanel with Exim and want to relay your email through SendGrid, go to Main > Service Configuration > Exim Configuration Editor, click on the Advanced Editor button, and enter the following in the AUTH Box:
begin authenticators
sendgrid_login:
driver = plaintext
public_name = LOGIN
client_send = : apikey : <YourAPIKey>
Only include "begin authenticators" if it's not already in the configuration.
Add a route in the Router Configuration Box:
send_via_sendgrid:
driver = manualroute
domains = ! +local_domains
transport = sendgrid_smtp
route_list = "* smtp.sendgrid.net::587 byname"
host_find_failed = defer
no_more
Add a transport to the Transport Configuration Box:
sendgrid_smtp:
driver = smtp
hosts = smtp.sendgrid.net
hosts_require_auth = <; $host_address
hosts_require_tls = <; $host_address
Once you have completed and saved all changes to Exim's configuration files, you will need to restart it to activate those changes:
$ /etc/init.d/exim4 restart
Exim Documentation
If your version of Exim does not match the version above or you are not finding the answer you need, please check out the Official Exim Documentation for more information.
Need some help?
We all do sometimes. Get help now from the Twilio SendGrid Support Team.
Running into a coding hurdle? Lean on the wisdom of the crowd by browsing the SendGrid tag on Stack Overflow or visiting Twilio's Stack Overflow Collective.