Difference between revisions of "OpenSMTPD"

From ArchWiki
Jump to: navigation, search
m (Craft a simple smtpd.conf setup: added note about local LAN IP subnet.)
(Craft a simple smtpd.conf setup)
Line 24: Line 24:
 
=== Craft a simple smtpd.conf setup ===
 
=== Craft a simple smtpd.conf setup ===
  
* A working configuration can be had in as little as five lines! In this example 10.1.1.0/24 is local LAN IP subnet.
+
* A working configuration can be had in as little as five lines! In this example 10.1.1.0/24 is the LAN IP subnet.
 
{{hc|/etc/smtpd/smtpd.conf|
 
{{hc|/etc/smtpd/smtpd.conf|
 
listen on eth0 hostname myemaildomain.com
 
listen on eth0 hostname myemaildomain.com

Revision as of 02:09, 17 March 2014

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary end

Required packages

Installation

# pacman -S opensmptd

simple OpenSMTPD/mbox configuration

create user accounts

  • Create a user account on the mail server for each desired mailbox.
# useradd -m -s /bin/bash roger
# useradd -m -s /bin/bash shirley
  • OpenSMTPD will deliver messages to the user account's mbox file at /var/spool/mail/<username>
  • Multiple SMTP email addresses can be delivered into one mailbox if desired.

Craft a simple smtpd.conf setup

  • A working configuration can be had in as little as five lines! In this example 10.1.1.0/24 is the LAN IP subnet.
/etc/smtpd/smtpd.conf
listen on eth0 hostname myemaildomain.com
table vdoms             "/etc/smtpd/vdoms"
table vusers            "/etc/smtpd/vusers"
accept from any for domain <vdoms> virtual <vusers> deliver to mbox
accept from source { localhost 10.1.1.0/24 } for any relay

create virtual domain and user tables

  • For the domain table file; simply put one domain per line
/etc/smtpd/vdoms
personaldomain.org
businessname.com
  • For the user table file; list one inbound SMTP email addresses per line and then map it to an mbox user account name, SMTP email address, or any combination of the two on the right, separated by commas.
/etc/smtpd/vusers
roger@personaldomain.org          roger
newsletters@personaldomain.org    roger,roger.rulz@gmail.com

roger@businessname.com            roger
shirley@businessname.com          shirley
info@businessname.com             roger,shirley
contact@businessname.com          info@businessname.com

Starting the server

Use the standard systemd syntax to control the smtpd.service daemon.

# systemctl start smtpd.service

To have it start on boot

# systemctl enable smtpd.service

Watch the spice flow!

# journalctl -f _SYSTEMD_UNIT=smtpd.service

See also