hMailServer includes a number of anti-spam features. They can be found in hMailAdmin, under Settings -> Protocols -> SMTP -> Spam protection. This page describes the different options.
email@example.com you an email, hMailServer will check if the domain,
microsoft.com, has valid DNS-MX records. If it has, the email is accepted. If it hasn't, the email is dropped. Some spammers send email from bogus domains that do not exist. Turning this feature on prevents hMailServer from accepting them. The downside of this option is that the server may reject legitimate email. For example, if an automatic email is generated by
cgi.domain.comdoes not have valid MX records, the email will be deleted.
Blacklists are lists of email servers that are known to send spam. Blacklists are maintained by different organizations or individuals. If you enable blacklists in hMailServer, whenever hMailServer receives an email message it will check the sender's IP address against the blacklists you have chosen to use. If the IP is found to be in any of the blacklists, hMailServer will not accept the email message.
Varying statistics exist, but it is known that blacklists can cut your spam by around 15-25%, simply on the basis of the sender's IP address. Please be aware that blacklisting can block legitimate emails; for example, if a spammer uses a particular ISP's email server and gets it blacklisted, and your friend uses that same ISP, your friend's emails will also be blocked.
SURBLs differ from most other RBLs in that they're used to detect spam based on message body URIs (usually web sites). Unlike most other RBLs, SURBLs are not meant to identify spam senders by their message headers or connection IP addresses. Instead they allow you to identify messages by the spam sites mentioned in their message bodies. This means that when you have enabled SURBL, hMailServer searches the e-mail message for links. If any links are found, hMailServer checks with the SURBL server whether these links normally exists in spam messages.
Grey listing allows you to prevent spam by temporarly rejecting email to your server. Grey listing benefits from the fact that properly configured email servers will try to resend messages later, while spammers normally will give up immediately if your server rejects an email.
When a sender tries to deliver a message for the first time to your server, hMailServer will save the senders IP adderss, the senders email address and the recipient email address. This information is called a triplet. hMailServer will reject the message and kindly ask the sending server to retry later. The next time the sending server tries to deliver an email which matches the triplet, hMailServer will accept the message.
It is possible to turn off hMailServer's spam protection functionality per IP range. For example, one normally does not have to check for spam on one's local network. Consult the IP range documentation for more information on this.
It's possible to use white listing records to disable spam protection for email messages sent from specific email or IP addresses. This is a more flexible solution than to use IP ranges.