Category: 

How do I Choose the Best Linux&Reg; Spam Filter?

Article Details
  • Written By: Keith Koons
  • Edited By: Lauren Fritsky
  • Last Modified Date: 24 August 2016
  • Copyright Protected:
    2003-2016
    Conjecture Corporation
  • Print this Article
Free Widgets for your Site/Blog
Roughly one-fifth of the world's stock of gold - worth over $200 billion USD - is stored under the streets of London.  more...

September 30 ,  1949 :  The Berlin Air Lift ended.  more...

Linux® platforms, the result of the open source movement, have a wide variety of spam filters to choose from. In order to pick the best Linux® spam filter, it is important to know a little bit about how the different types work. An aggressive, but almost completely accurate, method of eliminating spam is employing a white-list or verification filters. For users who find the white-list method too inflexible, distributive adaptive blacklists are a versatile and widely available solution. More sophisticated anti-spam techniques employ Bayesian trigram filters or similar word-analyzing algorithms as the primary Linux® spam filter.

White-lists or verification filters work on a very simple, but efficient, principle; they only let mail from designated senders into the customer’s inbox. A popular Linux® spam filter that employs this technique is TDMA. When a user initially configures TDMA, a list of trusted recipients is defined and all subsequent mail is checked against this list. If a recipient is not present on this list, a challenge email is sent to establish whether the sender is a legitimate source. The challenge email is designed to be answerable only by humans, so if a successful response is received, the sender’s email address is added to the white-list.

Ad

The problem with the white-list technique as a primary Linux® spam filter is that it places an unnecessary burden on senders, even if they are legitimate. Distributive adaptive blacklists operate on the reverse of this principle, but in a far more flexible manner. In this technique, messages from certain email addresses known to belong to spammers are blocked based on a centralized database. If enough users flag a certain email address as spam, those email addresses are updated to the centralized blacklist. An example of a Linux® spam filter that uses this method of spam protection is Razor.

Both the white-list verification method and the distributive adaptive blacklist method analyze the email address, checking them against databases to determine whether they are potentially unsafe. Bayesian trigram filters are employed by some spam filters, like the popular Linux® spam filter SpamAssassin, to analyze the structure of emails themselves. These filters use sophisticated algorithms to scrutinize the text of emails and determine if they exhibit patterns of sentence construction and word usage that are typically used by spammers. By eliminating the need for user-generated databases, this technique allows for a great deal more adaptability. Quite a few Linux® spam filter developers are implementing this method of spam detection in their programs.

Ad

You might also Like

Recommended

Discuss this Article

Terrificli
Post 2

How do you pick the best Linux spam filter? That's pretty simple. Just choose the most popular Linux distribution made for servers and use the one that comes with it.

Quite often, going with what is popular is the best move to make. The problem with spam filters is that they are either too restrictive or not restrictive enough. Popular filters have found the right balance between those two extremes and are usually the best programs to use.

Vincenzo
Post 1

There is a big problem with the TDMA system. Think about it. Let's say you send an email then get one in return asking you to verify that you are a human before the email can be delivered. How likely are you to bother with answering that email? Probably not very good.

I worked for a company that tried that method and it was a dismal failure. People were sending emails but we weren't getting them because of the verification. Much of the time, it wasn't because those people didn't want to communicate with us. They were just swimming in the amount of emails they were receiving daily (most of it junk, too) and were missing the verification.

We resorted to one that simply used an adaptive filter and simply blocked junk emails before we saw them. It worked a lot better.

Post your comments

exception 'Exception' with message 'error writing captcha: Duplicate entry '2147483647' for key 'PRIMARY'' in /ssd/www/wisegeek/public_html/_core/classes/public/Captcha.php:44
Stack trace:
#0 /ssd/www/wisegeek/public_html/_core/controls/public/ControlDiscussionPostBox.php(324): Captcha->createCaptcha()
#1 /ssd/www/wisegeek/public_html/framework/classes/Control.php(104): ControlDiscussionPostBox->preRender(false)
#2 /ssd/www/wisegeek/public_html/framework/classes/Control.php(149): Control->render()
#3 /ssd/www/wisegeek/public_html/tpl/default-nocustom-lu/pages/public/article/article.htm(526): Control->__toString()
#4 /ssd/www/wisegeek/public_html/framework/classes/Control.php(300): require('/ssd/www/wisege...')
#5 /ssd/www/wisegeek/public_html/framework/classes/Control.php(309): Control->requireTpl('pages/public/ar...', Object(PageArticleCom), true)
#6 /ssd/www/wisegeek/public_html/framework/classes/Control.php(131): Control->renderTpl('pages/public/ar...', Object(PageArticleCom))
#7 /ssd/www/wisegeek/public_html/framework/classes/FormDataControl.php(87): Control->renderTemplate()
#8 /ssd/www/wisegeek/public_html/framework/classes/Control.php(109): FormDataControl->renderTemplate()
#9 /ssd/www/wisegeek/public_html/framework/classes/ScriptPage.php(50): Control->render(false)
#10 /ssd/www/wisegeek/public_html/framework/classes/Control.php(149): ScriptPage->render()
#11 /ssd/www/wisegeek/public_html/framework/classes/Page.php(97): Control->__toString()
#12 /ssd/www/wisegeek/public_html/_core/classes/public/PublicFrontController.php(443): Page->processRequest()
#13 /ssd/www/wisegeek/public_html/_core/classes/public/PublicFrontController.php(7): PublicFrontController->renderPage()
#14 /ssd/www/wisegeek/public_html/index.php(11): PublicFrontController::run()
#15 {main}