Exim is a mail transfer agent (MTA) used on Unix-like operating systems. Exim is free software distributed under the terms of the GNU General Public Licence, and it aims to be a general and flexible mailer with extensive facilities for checking incoming e-mail.
- Download exim4 by following command:
sudo apt-get install exim4 exim4-config
- Run the following command:
sudo dpkg-reconfigure exim4-config
- You will see the ‘Package Configuration’ interface. Here, select the options as mentioned in the following:
- Choose -> mail sent by smarthost; received via SMTP or fetchmail and press tab
- Type System Mail Name: e.g. gmail.com
- Type IP Adresses to listen on for incoming SMTP connections: 127.0.0.1
- Leave Other destinations for which mail is accepted blank
- Leave Machines to relay mail for: blank
- Type Machine handling outgoing mail for this host (smarthost): smtp.gmail.com::587
- Choose NO, (don’t hide local mail name in outgoing mail).
- Chose NO, (don’t keep number of DNS-queries minimal (Dial-on-Demand)).
- Choose mbox
- Choose NO, (split configuration into small files).
- Mail for postmaster. Leaving blank will not cause any problems though it is not recommended
- Now open the file /etc/exim4/exim4.conf.template
- Find the line .ifdef DCconfig_smarthost DCconfig_satellite and add the following in that section:
send_via_gmail:
driver = manualroute
domains = ! +local_domains
transport = gmail_smtp route_list = * smtp.gmail.com
- If you have any other smarthost defined with “domains = ! +local_domains” remove that smarthost.
- Find begin authenticators. In that section add the following:
gmail_login:
driver = plaintext
public_name = LOGIN
client_send = : username@gmail.com : YourGmailPassword
- Make sure you have no other authenticators with the same public_name (LOGIN). Comment out the whole section in the bottom starting with:
login:
driver = plaintext
public_name = LOGIN
- Find the comment transport/30_exim4-config_remote_smtp_smarthost. In that section add:
gmail_smtp:
driver = smtp
port = 587
hosts_require_auth = $host_address
hosts_require_tls = $host_address
- Run command:
update-exim4.conf
- Restart exim:
/etc/init.d/exim4 restart
- Now,to test it follow the instructions:
mail receiver_email_address@example.com
- Give a subject and press enter.
- Type something and press enter.
- Type a single . (dot) and press enter.
- Press enter for a blank CC:
- If mail is send to reciever it means you successfully install the mail server.