This document is an older, unmaintained guide. There may be a new guide available for this software.
Many Linux server applications need to send email; cron jobs use mail services to deliver reports on jobs that have run, web applications require mail support for user registration functions, and other applications may need to send alerts via SMTP. This guide will help you install and configure the lightweight Exim MTA (Mail Transfer Agent) on your Ubuntu 9.10 (Karmic) Linux VPS.
You'll gain the ability to send mail from localhost through either a traditional "sendmail" style interface, or via port 25 locally. As this guide is not intended to provide a full send/receive mail solution, please refer to our other email guides for ways to implement such configurations.
We assume that you've already followed the steps outlined in our getting started guide. If you're just getting acquainted with Linux systems, we also encourage you to review our using Linux guides. Make sure you're logged into your Linode as "root" via SSH before proceeding.
Make sure you have the "universe" repositories enabled. Your /etc/apt/sources.list file should resemble this:
## main & restricted repositories deb http://us.archive.ubuntu.com/ubuntu/ karmic main restricted deb-src http://us.archive.ubuntu.com/ubuntu/ karmic main restricted deb http://security.ubuntu.com/ubuntu karmic-security main restricted deb-src http://security.ubuntu.com/ubuntu karmic-security main restricted ## universe repositories deb http://us.archive.ubuntu.com/ubuntu/ karmic universe deb-src http://us.archive.ubuntu.com/ubuntu/ karmic universe deb http://us.archive.ubuntu.com/ubuntu/ karmic-updates universe deb-src http://us.archive.ubuntu.com/ubuntu/ karmic-updates universe deb http://security.ubuntu.com/ubuntu karmic-security universe deb-src http://security.ubuntu.com/ubuntu karmic-security universe
Issue the following commands to update your package repositories, upgrade your system, and install Exim:
apt-get update apt-get upgrade apt-get install exim4-daemon-light mailutils
Issue the following command to start Exim configuration:
You'll be presented with a welcome screen, followed by a screen asking what type mail delivery you'd like to support. Choose the option for "internet site" and select "Ok" to continue.
Enter your system's FQDN (fully qualified domain name) in the "mail name" configuration screen.
Enter "127.0.0.1" when asked which IP address to listen on for SMTP connections.
Make sure you list your FQDN, hostname, and localhost entries when you're asked which destinations mail should be accepted for.
Leave the relay domains and relay machines fields blank.
Select "No" when asked whether to keep DNS queries to a minimum.
You may select either "mbox" or "Maildir" when asked about the delivery method used for incoming mail. While many utilities use mbox format, Maildir format can make handling individual locally delivered mail messages easier, and is widely supporting by a range of applications.
Accept the default "non-split" option for your mail configuration file.
Enter at least one external email address (choose one that you check frequently) in addition to "root" when asked to specify postmaster mail recipients.
Issue the following command to send a test email, substituting an external email address for email@example.com.
echo "This is a test." | mail -s Testing firstname.lastname@example.org
Congratulations! You've configured Exim to send email from your Linux VPS.
You may wish to consult the following resources for additional information on this topic. While these are provided in the hope that they will be useful, please note that we cannot vouch for the accuracy or timeliness of externally hosted materials.
This guide is licensed under a Creative Commons Attribution-NoDerivs 3.0 United States License.
Last edited by System on Friday, April 29th, 2011 (r1261).