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 Debian 6 (Squeeze) 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.
It is assumed 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.
Before you begin installing and configuring the components described in this guide, please make sure you’ve followed our instructions for setting your hostname. Issue the following commands to make sure it is set properly:
hostname hostname -f
The first command should show your short hostname, and the second should show your fully qualified domain name (FQDN).
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.
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.
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.