Send system mail Ubuntu 18.04

Install the packages needed to get a basic system for handling mail:

sudo apt-get install postfix mailutils libsasl2-2 ca-certificates libsasl2-modules

Next modify (as root) the configuration file /etc/postfix/main.cf to have something like this:

relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CApath = /etc/ssl/certs
smtpd_tls_CApath = /etc/ssl/certs
smtp_use_tls = yes

Next create/modify (as root) the /etc/postfix/sasl_passwd to contain:

[smtp.gmail.com]:587    [email protected]:PASSWORD

Make sure the permissions for the file are correct or it might get mad:

sudo chmod 400 /etc/postfix/sasl_passwd
sudo postmap /etc/postfix/sasl_passwd

Lastly reload postifx:

sudo /etc/init.d/postfix reload

Now you can run a test:

echo "Test mail thingy" | mail -s "Test Postfix Subject" [email protected]

You should get an email that comes from the SMTP account you configured.


In order to send local (system) email to an external email address, in addition to installing a mail handling system as proposed in the currently accepted answer, it is necessary to modify the /etc/aliases file. This file is read by the mail system to determine the final recipient of all internal mail (such as generated by cron jobs or other system errors). A suggested /etc/aliases file is below:

# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
root: user
user: [email protected]

where user and username should be replaced by the appropriate entries for your system. This file redirects all email sent to all of the standard pseudo-users to the root user, and then the last two lines redirect emails to root to the local real user, and then finally externally to gmail.

Once the /etc/aliases file is updated, it is necessary to run the command

sudo newaliases

in order to get the system to notice the changes.

Tags:

Gmail

Mail