====== Configure postfix ======
* Three files to edit/create in /etc/postfix - master.cf, main.cf, transport
* Also check/modify /etc/mailname file
* The examples below are using //nixgate// for a machine name & //webman// as a user name.
* Change your machine & user names appropriate to your system.
==== After editing files ====
* as root convert the transport text file to a database file format.
postmap /etc/postfix/transport
* After editing master.cf or main.cf should restart postfix as root
# systemd way
systemctl restart postfix
# System V init way
/etc/init.d/postfix restart
===== Example master.cf =====
* Add these 2 lines before maildrop entry
* Note the 2 spaces at the beginning of the second line are significant.
wl2k unix - n n - 1 pipe
flags=XFRhu user=webman argv=/usr/local/libexec/mail.wl2k -m
===== Example main.cf =====
* Check that file /etc/mailname exists
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
readme_directory = no
# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.
myhostname = nixgate
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = nixgate, nixgate.localnet, localhost.localnet, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
#home_mailbox = Mail/
# Added for paclink-unix config
transport_maps = hash:/etc/postfix/transport
* When starting postfix if it complains about IPV6 then do the following:
* Add this line to main.cf
inet_protocols = ipv4
* Change the //mynetworks// line in main.cf to:
mynetworks = 127.0.0.0/8
* Now [[plu:install_postfix#after_editing_files | restart Postfix]]
* [[http://www.postfix.org/IPV6_README.html | postfix IPV6 reference]]
===== Example transport file =====
* This is a very simple example that assumes that the machine that postfix is installed on is **only** concerned with winlink mail.
* In the example below //nixgate// is a host machine name.
#
localhost :
nixgate local:
nixgate.localnet local:
nixgate.localhost local:
* wl2k:localhost
* whenever you edit the transport table as root execute the command:
postmap /etc/postfix/transport
===== Example /etc/mailname file =====
nixgate.localnet
===== Config aliases file to receive mail addressed to root =====
* edit // /etc/aliases// to get all mail the system will send to root & postmaster
* After editing run this as root:
newaliases
* Verify by checking for the creation of the ///etc/aliases.db// file
ls -salt /etc/aliases*
==== Example /etc/aliases file ====
# /etc/aliases
root: webman
mailer-daemon: postmaster
postmaster: webman
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root