Cannot Send Outgoing Email Messages
Applies to SmarterMail 8.x - 14.x
There are multiple possible reasons why SmarterMail would be unable to send messages to external email addresses. This article identifies the most common causes of failed outbound email delivery.
Outgoing connections to port 25 blocked by a firewall
The first and easiest thing to check is to make sure a firewall is not blocking outgoing connections on port 25. To test this, go to a command prompt on your SmarterMail server and try to telnet to a few external mail servers. You can telnet to our SmarterTools mail server on the SMTP port (25) by typing the following:
telnet mail.smartertools.com 25
You should get a response like this:
If you get a response starting with '220' you can just type 'quit' to end the session. If the connection fails then you likely have outgoing connections on port 25 blocked by your firewall. You will probably want to try to connect to one more external mail server to be certain this is the case.
The Spool service is not running
The next easiest thing to check is that the SmarterMail spool service is running. You can check that on the "Manage->Services" page of your SmarterMail web interface.
Bad DNS Setup
If the spool service is running and outgoing connections to port 25 aren't getting blocked by a firewall, the next most likely culprit is the DNS settings. If you go to the "Settings-General Settings" page you will see a couple of fields for the DNS servers to use. We recommend in most cases to leave these blank. If these are empty, SmarterMail will grab the DNS servers to use from the machine it is running on. If these are not empty, clear out those DNS fields and then restart the SmarterMail service. Now go to a command prompt on your SmarterMail server and verify that your DNS servers are returning correct information for MX lookups. To do that type:
Now type a domain name to retrieve it's MX records. When I look up the MX records for SmarterTools.com I receive the following:
SmarterTools.com MX preference=10, mail exchanger = mail.smartertools.com
mail.smartertools.com internet address = IP Address>
If your DNS servers are not returning correct (or any) MX record information you will need to fix them before SmarterMail will be able to send out email correctly.
In a small number of cases SmarterMail is unable to retrieve the DNS servers that the local machine is set to use. In that case, you will want to manually set those DNS servers on the "Settings-General Settings" page. You will want to restart the SmarterMail service after setting those fields.
Mail rejected due to host name or invalid reverse DNS entry
If the problem is only with sending email to certain domains, there are a couple of settings that may affect this. The first is the host name field on the "Settings-General Settings" page. This should be set to a fully qualified domain name. We use mail.smartertools.com for ours. The other thing to check is that the IP that SmarterMail uses to send outgoing mail with has a valid reverse DNS entry. Note that, by default, SmarterMail will always use the first IP of the machine to send from. If you go to a command prompt and type "ipconfig /all", it will be the first IP that is listed. This can be overriden on a per domain basis using the "Outbound IP" setting that is found under the "Technical" tab when editing a domains settings.
Your mail server is listed by a Spam RBL list
Another reason mail servers may reject mail from your mail server is that it is listed on a spam RBL list. There are many spam RBL lists on the internet that keep track of servers reported to send out spam or have been verified as an open relay. To see if your servers IP is listed, do a search for sites that allow you to check an IP against multiple RBL lists. Go to a search engine and type in 'multiple spam RBL list' or something along those lines. At the time of this writing we use http://rbls.org/
to do multiple RBL lookups for a mail server.