Enable Outgoing Emails

From Amahi Wiki
Revision as of 20:35, 11 July 2010 by Gboudreau (talk | contribs)
Jump to: navigation, search

Here's how to enable outgoing emails on your Amahi server.

Note: Make sure to use copy-paste to execute those commands. In particular, they contain back-ticks as the starting string delimiter, which can be hard to find on a keyboard!

As root:

SMTP_SERVER=your_isp_smtp_server
yum -y install sendmail-cf m4
cd /etc/mail
sed -ie "s/.*SMART_HOST.*/define(\`SMART_HOST', \`$SMTP_SERVER')dnl/" sendmail.mc
make
service sendmail restart

Make sure to replace your_isp_smtp_server on the first line with the hostname or IP address of your ISP SMTP server.

If you need to connect to the SMTP server using port 587 (TLS/STARTTLS), you'll need to do this too:

cd /etc/mail
sed -ie "s/\(.*SMART_HOST.*\)/\1\ndefine(\`RELAY_MAILER_ARGS', \`TCP \$h 587')dnl\ndefine(\`ESMTP_MAILER_ARGS', \`TCP \$h 587')dnl/" sendmail.mc
make
service sendmail restart

If you want to use another port than 587, change that number in the above command (it's there twice), before executing it. If you already executed it, edit the sendmail.mc file, and search for 587 - it should appear there twice - change both.

If you need to provide a username and password to use the SMTP server, you'll need to do this too:

SMTP_SERVER=your_isp_smtp_server
USERNAME=your_smtp_username
PASSWORD=your_smtp_password
cd /etc/mail
chmod 640 access
echo "AuthInfo:$SMTP_SERVER \"U:$USERNAME\" \"P:$PASSWORD\" \"M:PLAIN\"" >> access
makemap -r hash access.db < access
sed -ie "s/.*confAUTH_MECHANISMS.*/define(\`confAUTH_MECHANISMS', \`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl\nFEATURE(\`authinfo',\`hash \/etc\/mail\/access')dnl/" sendmail.mc
make
service sendmail restart