Setting a proper hostname for mail servers is a small step, but often required, especially you’re looking to do everything possible to avoid spam ratings in your email.
Having recently completed a fresh install of postfix on a new mail server, I proceeded with running a test email through Spam Assassin to see if any adjustments were needed.
Before I go on … if you’re applications send email and you’re not using a tool like Spam Assassin to gauge spam-potential of your emails, I highly recommend that you start. Our apps send everything from account-creation emails to invoices, so it’s required that our product emails are trusted, sent, and received without issue. Spam Assassin has always helped us achieve that.
In this case, Spam Assassin reported a HELO_LOCALHOST flag. A test against our mail server’s hostname revealed that it was still identifying itself as localhost, which is a potential spam indicator.
Fortunately resolving this is easy, we just needed to change our mail server’s hostname. That’s easy to do with postfix, it just requires 2 steps.
First, change the myhostname directive in /etc/postfix/main.cf to the desired hostname. In our case we changed it to timepanel.net (the server name for our time tracking application, TimePanel):
# myhostname = localhost myhostname = timepanel.net
Second, restart postfix:
sudo service postfix restart
And that’s it! After this change Spam Assassin no longer reports a failed test on our mail server’s hostname.