Razor, Razor v2 of Razor2 zoals Spamassassin deze intern noemt, is een spamfiltering systeem dat gebruik maakt van een centrale database in de cloud. Vergelijkbaar met een database als die van Pyzor, worden spammails door de community aangeleverd en putten anderen uit deze database om te controleren of een bepaalde e-mail al eerder als spam was gemarkeerd. Daar waar Pyzor relatief simpel alleen de body controleert, houdt Pyzor ook rekening met de mate van waarschijnlijkheid waarin een bericht als spam gezien kan worden, bijvoorbeeld vergelijkbaar met Bayes.
Ook dit mechanisme is relatief gemakkelijk te installeren en helemaal gratis.
1. Razor Installeren
Ondanks dat de documentatie suggereert om de meest recente versie te downloaden en Razor zelf te compileren, is de versie in de package manager op de meeste Debian-achtige Linux distributies aardig up to date. Gebruik daarom de standaard package manager om Razor te installeren:
2. Razor testen
In de uiiteindelijke situatie wordt Razor door Spamassassin aangeroepen, maar om zeker te zijn dat alles naar behoren functioneert, kunnen we een e-mail direct aan Razor voeren:
In het resultaat zou ongeveer o.a. de volgende melding moeten staan:
3. Razor in Spamassassin installeren
Om allereerst rechtenproblemen te voorkomen, wordt Razor geconfigureerd in de directory van Spamassassin:
Vervolgens in het bestand /etc/spamassassin/local.cf
: kunnen we Spamassassin aangeven waar we Razor geconfigureerd hebben:
Aan Razor moet expliciet worden aangegeven waar deze haar bestanden moet wegschrijven, dit kan door onderstaande regel aan het bestand /etc/spamassassin/razor/razor-agent.conf
toe te voegen:
Eventueel dient de Razor plugin in Spamassassin ingeschakeld worden, als dat nog niet het geval is in /etc/spamassassin/v310.pre
:
Start als laatste de Spamassassin service opnieuw op, zodat spamd
de nieuwe configuratie gebruikt:
4. Spamassassin met Razor testen
Om vervolgen te testen of alles juist werkt, kun je een e-mail aan Spamassassin in Debugmodus geven:
In de enorme lap aan debuginformatie die dit oplevert zou het resultaat ongeveer als volgt te zien moeten zijn:
De regel met results: spam
geeft hierbij aan of het Razor gelukt is om het bericht te controleren (1 → SPAM, 0 → HAM). Wanneer pyzor het bericht op een of meerdere vlakken als spam markeert, zul je dit terugzien in het spamrapport met de regel RAZOR2_CHECK
(eventueel worden er nog andere regels beginnend met RAZOR2_
toegevoegd):
5. Razor finetunen
Spamassassin heeft meerdere regels voor Razor ingebouwd. Qua finetuning kunnen alleen de scores van deze regels verhoogd of verlaagd worden (een hogere score levert meer spampunten op waardoor een mail sneller als spam wordt gemarkeerd), voeg bijvoorbeeld deze regels toe aan /etc/spamassassin/local.cf
:
/usr/share/spamassassin/25_razor2.cf
en de standaard scores /usr/share/spamassassin/50_scores.cf
.
Perfacilis E-mail
De filters van de Perfacilis E-mail Service maken o.a. gebruik van Razor om SPAM tegen te houden. Onze specifieke configuratie is 100% toegespitst op de Nederlandse Enterprise markt en houd op een hele enkele uitzondering na alle SPAM tegen.
E-mails aan Razor rapporteren optioneel
Deze laatste stap is optioneel en alleen aan te raden als je een betrouwbare lijst van SPAM en of HAM mails hebt en je een steentje wilt bijdragen aan de publieke database. De voorwaarde is dat deze e-mails volgens het RFC 822 formaat zijn opgemaakt en dat je zeer zeker bent dat het niet te betwijfelen valt of jouw berichten wel echt SPAM of HAM zijn. Zoals op de Razor FAQ terug te lezen is, wordt er gebruik gemaakt van het Truth Evaluation System (TeS) dat evalueert of je berichten naar waarheid instuurt, stuur je te vaak bulk-email in, dan wordt jouw toevoeging simpelweg niet meer meegeteld.
SPAM aan Razor rapporteren
Alleen SPAM rapporteer je aan Razor, door middel van het razor-report
commando:
Wanneer je dit periodiek zou scripten, kun je --verbose
weglaten, -conf
is niet optioneel, gezien we een niet-standaard locatie voor de configuratie gebruiken. De -home
schakeloptie kan worden weggelaten, gezien de homedirectory al in het configuratiebestand is opgenomen.
HAM aan Razor rapporteren
HAM rapporteer je aan Razor door middel van de razor-revoke opdracht, eigenlijk wordt het bericht in geval het als spam was gemarkeerd teruggetrokken en vervolgens als HAM gemarkeerd. De syntaxis is vergelijkbaar met bovenstaande:
Ook hierbij is --verbose
optioneel en --conf
verplicht.
Conclusie
Wanneer we een bericht rapporteren als spam en vervolgens nog een keer controleren, wordt de score meteen verhoogd op basis van de RAZOR2_CHECK
regel. Omdat deze informatie beschikbaar is in een publieke database, kun je deze in theorie misbruiken door goede mails te markeren. Uiteraard heeft Pyzor hiervoor het Truth Evaluation System (TeS), maar hiermee worden kwaadwillenden slechts vertraagd geblokkeerd. Het is onduidelijk of bij een blokkade alleen de identiteit waarmee je geregistreerd bent of het IP-adres van jouw server wordt geblokkeerd. In het eerste geval zou je opnieuw razor-admin -register
kunnen uitvoeren om dit te omzeilen. Over rapporteren/revoken van spam is niet bekend of— en in welke mate het TeS hierop van toepassing is.
Desalniettemin is het een extra filtering die gemakkelijk toe te voegen is aan Spamassassin waarmee nog meer spam tegengehouden zou kunnen worden. Zeker in combinatie met wat goede Custom Rules en het Pyzor systeem maakt dit een sterke filtering mogelijk.
Bronnen
- Documentatie Razor2:
http://razor.sourceforge.net/docs/ - Single User installatie handleiding van Spamassassin:
https://wiki.apache.org/spamassassin/SingleUserUnixInstall - Side wide installatie handleiding van Spamassassin:
https://wiki.apache.org/spamassassin/RazorSiteWide