Wot no spam?

Not so long ago almost half of all the email I received was spam. The real effect was actually worse as I am also subscribed to a few high-traffic mailing lists which skew the statistics. I now receive virtually *zero* spam, so how has this been achieved?

Previously I was relying on a combination of SpamAssassin and Clam AntiVirus, deployed through amavisd-new. This was moderately successful, but still the spam kept leaking through.

The additional of a Greylisting solution and two Sorbs lists has eradicated spam, with no false positives.

Greylisting works by passing through recognised email instantly and artificially delaying inbound deliveries when it encounters unrecognised email. A recognised email is one that the mail server has seen attempted previously, from the same mail relay and with the same sender and recipient. The trick here is that as nearly all spammers use a bulk send-and-hope approach, they don’t attempt any retries. They have to do this as their lists are so long and databases often inaccurate, so a significant percentage of their list will not be delivered. They simply don’t have the time or inclination to post-process and retry long lists of failed deliveries.

A standard email server will queue a deferred email for a subsequent retry and it is at this point that a legitimate email will pass through the Greylisting and be successfully delivered to the intended recipient. The thresholds for delay and recognition can be fine tuned to ensure that email is not delayed unacceptably (who ever said that email was supposed to be instant?)

To augment the defence I also use Sendmail’s DNSBL feature with two of Spam and Open Relay Blocking System’s public lists:

  • dul.dnsbl.sorbs.net – Dynamic IP Address ranges
  • web.dnsbl.sorbs.net – Web servers which have spammer abusable vulnerabilities (e.g. FormMail scripts)

These checks take place before Greylisting so help to reduce unnecessary database activity.

Take these steps and you too can be spam free 🙂

Save Our Server!

After a break of five months, I have recovered my databases and this blog is up and running again.The cause of the downtime was a total failure of the server hosting the web site and database, which gave up in the extraordinary London heat after 782 days of continuous uptime.

When I eventually collected the deceased server (a Gigabyte GS-SR101T) and investigated further, it turns out that it was the cheapest of all components that was to blame. Two out of four disk fans and both CPU blower fans had failed, causing the onboard monitoring to shut down the machine in the interests of self-preservation.

bd50151

Unfortunately unless I can source the precise replacement parts which are required to squeeze into the slim 1U case, the £1,500 server will remain in pieces forever. Despite much web searching and many emails to suppliers, I have been unable to find the spare parts.

So I am making a desperate plea for either Y.S.Tech BD1250159B-2F or Sunon GB1205PHVX-8AY 50x50x15mm 12V blower fans (pictured below). Can you please help to save our server?