Naponta 28 milliárd SPAM e-mailt küldenek. Ez az összes e-mail forgalom nagy részét teszi ki, és alig van olyan e-mail fiók, amelyik megmenekülne a kéretlen levélszeméttől. Eddig az egyetlen módja annak, hogy megvédje tőlük a postafiókját, egy jó és működő spamszűrő. A SpamAssassin is egy ilyen spamszűrő, de ami miatt különleges szoftver, az a szó szerint kézzel kiválasztott algoritmusa és a nagyfokú rugalmassága.
Rövid áttekintés
Bár ma már egy egész csapat dolgozik a szoftveren, a SpamAssassin alapkövét Justin Mason rakta le, aki korábban a filter.plx nevű hasonló programért volt felelős. 2001-ben a programrészeket átdolgozták és újraírták, és átnevezték egy új projektre, "Spamassassin". 2004 óta az Apache Software Foundation tagja és nyílt forráskódú. A nyílt forráskód mellett létezik egy licencelés is, amely szabad szoftverré teszi a programot, amelynek magán- és kereskedelmi felhasználása, például egy másik fizetős szoftver moduljaként, teljesen ingyenes.
A szoftver nagy előnye a nagyfokú rugalmasság a felhasználási szint tekintetében, mivel a SpamAssassin használható akár saját alkalmazásként, akár egy másik szoftver alprogramjaként (moduljaként), akár egy levelező démon kliensprogramjaként, akár egy MDA (Mail Delivery Agent), például a Procmail hívásaként. Fontos: Még akkor is, ha a szoftver különböző példányai szerepelnek a terjesztési láncban, a jelző nem jelenti azt, hogy a szoftver nem kerül felhasználásra. E-mail kétszer elemzik, ami megakadályozza a folyamatok redundanciáját és csökkenti az erőforrás-kihasználtságot.
Így működik a válogatás
A SpamAssassin egy pontrendszer szerint működik. Minden bejövő e-mailt bizonyos kritériumok alapján elemezünk, és pontokat rendelünk hozzá, amelyek azt jelzik, hogy mennyire valószínű, hogy az e-mail Spam cselekmények. A felhasználó által beállítható küszöbérték határozza meg azt a pontot, amelynél az e-mailt spamként kezeli és kiválogatja. A lehető legpontosabb pontszám elérése érdekében a programnak számos különböző módszer áll rendelkezésére, például:
- DNS-alapú fehér- és feketelista
- Nyílt forráskódú és kereskedelmi gyártók ellenőrzőszűrői, mint a DCC vagy a Vipul's Razor
- Kifejezés szűrő alapján Kulcsszavak vagy kulcskifejezések
- A Hashcash rendszer (Proof-of-Work)
- DIM és SPF
- URL listák, ahogyan az olyan nyomkövetők, mint az uribl.com kimeneti listái kikerülnek
Bayes-szűrő
A többé-kevésbé statikus szűrőrendszerek mellett a SpamAssassin egy Bayes-szűrő algoritmussal is rendelkezik, amely képes bizonyos heurisztikákat, azaz ismétlődő, jellegzetes elemeket "megtanulni" a már elküldött spam e-mailekből, és így alkalmazkodik a felhasználó viselkedéséhez. A rendszer a Byssian-féle valószínűségi fogalmon alapul, de gyakran kritizálták, mert a nem tanult szűrőrendszer gyakran hamis pozitív eredményeket produkál.
Ennek megelőzése érdekében először a spamnek minősített e-mailek részletesebb ellenőrzése ajánlott. A Bayes-szűrő tartalmaz egy, a sa-learn parancssoron keresztül hívható eszközt, amelynek segítségével akár egyes e-mailek, akár egész postafiókok heurisztikái kereshetők. Ha ezt a folyamatot néhányszor elvégezték, a hamis pozitív eredmények előfordulása jelentősen csökken.
Jelenlegi fejlesztés
A 3.3-as és 3.4-es verzió legutóbbi frissítései során a SpamAssassin egy jelentős új funkciót kapott, amely állítólag hatással lesz az erőforrás-használatra. Bár már korábban is volt néhány teljesítményoptimalizálás, az újdonság az, hogy a program mostantól úgy viselkedik, mint egy determinisztikus véges automata. Alapvetően a hardver jobban tud alkalmazkodni a DEA-khoz, mivel a lehetséges állapotok mindig determinisztikusan, azaz előre meghatározottan futnak. Egy megfelelően programozott rendszer - mint például a mai szerverhardverek - így képes az erőforrásokat időkritikus módon lefoglalni és felszabadítani.
Programtámogatás
Mint már említettük, a programkód nagyfokú rugalmassága egyedülálló értékesítési szempont, de a SpamAssassin sikeres API-val is rendelkezik, amely lehetővé teszi az adatcserét számos más programmal. A nyílt forráskódú projektek esetében ezek közé tartoznak a gyakran használt e-mail kliensek, a Mozilla Thunderbird, a KMail, valamint a Novell Evolution vagy az olyan egzotikus programok, mint a Citadel vagy a Claws Mail. A kereskedelmi termékekben a SpamAssassin már beépült a programkódba. Ez a helyzet például az Icewarp szerver, a McAfee SpamKiller, a Mac OS X szerver vagy a Sophos PureMessage esetében.