OpenSMTPD Mail Relay

SMTPD is derived from OpenBSD.

Install OpenSMTPD

Installation is a single package, with some prerequisites.

sudo apt install opensmtpd

Configure OpenSMTPD


listen on socket
listen on localhost

table aliases file:/etc/aliases
table secrets file:/etc/secrets

accept for local alias <aliases> deliver to mbox
accept for any relay via tls+auth:// auth <secrets>



Set the permissions and ownership:

sudo chmod 640 /etc/secrets
sudo chown root:opensmtpd /etc/secrets

Note: the manpages refer to the group _smtpd, but this group does not exist on Linux; only OpenBSD.

Enable and start the service

After editing the config files, restart the service:

sudo systemctl restart opensmtpd

Make sure it is enabled:

sudo systemctl enable opensmtpd


Add to /etc/aliases to send root mail to your inbox:


Then, update the aliases db:

sudo newaliases

Install a mailer

Any mailer can be used, this is the smallest one. You may want sendmail if you need to send file attachments.

sudo apt install bsd-mailx

Send an email

If everything works correctly, you will be able to send emails to yourself:

echo "beep boop" | mail -s "Test email from your cool server!" root

That will send an email to the same address configured in the aliases file.

Check the firewall

If your system has a firewall configured, make sure there is a rule to allow local programs connect to tcp/25 for smtp:

sudo iptables -A INPUT -s -p tcp -m tcp --dport 25 -j ACCEPT