Home‎ > ‎Server config‎ > ‎

Configuring Postfix as a Gmail relay on RHEL/Centos

Installing Postfix

yum install postfix mailx cyrus-sasl-plain

Configuring

Create a password file so that Postfix can authenticate to Gmail's servers. Create a file named sasl_passwd in /etc/postfix. Replace smtp_user and smtp_passwd with their respective values.

echo "smtp.gmail.com smtp_user:smtp_passwd" > /etc/postfix/sasl_passwd

Then hash that file so that the password is not stored in clear text. This command will create a file named sasl_passwd.db in the /etc/postfix/ directory.

postmap hash:/etc/postfix/sasl_passwd

You can, and should delete the sasl_passwd file now.

After that is done, add these to the bottom of /etc/postfix/main.cf. This is assuming that your root certificates installed from openssl are located in /etc/pki/tls/certs/ca-bundle.crt.

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
# Secure channel TLS with exact nexthop name match.
smtp_tls_security_level = secure
smtp_tls_mandatory_protocols = TLSv1
smtp_tls_mandatory_ciphers = high
smtp_tls_secure_cert_match = nexthop
smtp_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt
relayhost = smtp.gmail.com:587

After that is done, restart postfix:

service postfix restart

Send a test mail:
echo "Test mail from Postfix" | mail -s "Mail from Postfix" johann.maxen@gmail.com
echo "Test mail from Postfix" | mail -s "Mail from Postfix" johann.swart@up.ac.za

Both should work if all went well.
REMEMBER TO CHECK SPAM FOLDERS!!!!

To debug:

tail /var/log/maillog