====== Setup Postfix to function as relay host ====== Setup Postfix to function as relay host with authentication * Create a password maps file * You can create multiple entries in the sasl_passwd file for multiple domains echo "mailserver.example.com username:password" >> /etc/postfix/sasl_passwd chown root:root /etc/postfix/sasl_passwd chmod 600 /etc/postfix/sasl_passwd postmap /etc/postfix/sasl_passwd * Update /etc/postfix/main.cf relayhost = mailserver.example.com smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = * Restart/Reload postfix ===== Another Example ===== Typical configuration for an internal server (inside a LAN) that uses an SMTP server (also internal) to send mail. Append this to main.cf mydomain = mail.dev08.example.org myhostname = mail.dev08.example.org myorigin = $mydomain append_dot_mydomain = no relayhost = td006 smtp_host_lookup = native Below is a configuration diff that was generated from a Ubuntu Trusty default Postfix install as "satellite" server. The server name is ubv10 (as see in diff below). Replace server name throughout the main.cf file. The local server relay is "localsmtp". Change this as required. Since this is a local server and the name does not feature in the DNS include the ''smtp_host_lookup'' option. If you have a server name that resolves via DNS (as opposed to /etc/hosts), this is not required. Of course make sure /etc/hosts has entry for localsmtp. diff --git a/postfix/main.cf b/postfix/main.cf index eb619b9..1539d7d 100644 --- a/postfix/main.cf +++ b/postfix/main.cf @@ -33,8 +33,12 @@ alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = ubv10.localdomain, ubv10, localhost.localdomain, localhost -relayhost = smtp.localdomain +relayhost = localsmtp +smtp_host_lookup = native mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = loopback-only Not exactly sure why, but sometimes it is required to include ''disable_dns_lookups = yes'' along with (or may instead of) ''smtp_host_lookup = native'' when using local (/etc/hosts) host resolution as opposed to DNS (MX record) resolution. ===== Generic mapping for outgoing SMTP mail ===== Since the from address will not appear as host.localdomain and be treated as junk mail, to rewrite relayed mail from address use ''smtp_generic_maps''. Check the below reference. Reference: http://www.postfix.org/ADDRESS_REWRITING_README.html#generic Append to main.cf: # Address rewriting smtp_generic_maps = hash:/etc/postfix/generic Once updated do hash and reload (as root): postmap /etc/postfix/generic /etc/init.d/postfix reload