After being an usenet junky for a long time the time came that I switched from being a regular poster to a lurker. I still followed a lot of groups for many years until I realised that I only was syncing my newsspool for at least 12 to 18 months without any reading. After some catching up on some groups I saw that I wasn’t the only person. A lot of groups in the nl-tree are just empty or mostly abandoned or they contained mostly spam. Other trees like the comp-tree has more posters, but also a lot more spam and I mean really a lot more.
I still think usenet is a good platform and that it has served it’s purpose. Due to it’s openness as a platform it also lead to a lot of people abusing it and it is unforgiving. One thing that companies like Microsoft, but also XS4ALL are switching to privately hosted forums where they can control the posters and the content. This leaves certain mailinglists for me to follow, but even that number has been reduced as most of them have the Eternal September feeling. So everyone thanks for all the time and discussions on Usenet and hopefully we meet again.
Afgelopen woensdag was het World IPv6 Day en in navolging daarvan werden een aantal maildomeinen voorzien een AAAA-record in DNS naast het gebruikelijke A-records. Hiermee wordt zowel een IPv6 als IPv4 adres geadverteerd om mail op af te leveren. Als eerste zijn de spamtrap-domeinen om gegaan afgelopen woensdag en afgelopen zaterdag zijn enkele andere kleine domeinen omgezet. Nu de time-to-live op de oude records is verlopen komt vandaag langzaam de e-mailstroom over IPv6 op gang.
Voorlopig lijken spammers IPv6 links te laten liggen, maar hoe lang dat zo zal blijven is de vraag. Hiermee komt ook gelijk de vraag of een DNSBL voor mail over IPv6 opzetten nog wel zinvol is. Een computer met IPv6 Privacy Extensions enabled wisselt om de zoveel uur van IPv6-adres en zou dus eigenlijk eigenlijk afdwingen om op network-niveau te gaan blacklisten en misschien ook wel om te gaan whitelisten en greylisten. Hiermee komt eigenlijk ook de vraag hoe valide Spamhaus nog is en wat voor impact dit gaat hebben op de Bayesian filtering opstelling die nu zijn werk doet.
Na meer dan een jaar na het op de automatische piloot zetten van een bayesian filtering oplossing voor alle inkomende e-mail begint het langzaam aan tijd te worden om de balans op te maken. Dus eerst even wat grafiekjes en eerste laat de hoeveelheid tokens in de database.
De tweede grafiek laat het aantal geleerde berichten zien en dit zijn zowel berichten die via spamtraps en hamtraps binnen zijn gekomen.
Hier komt ook gelijk het opvallende punt. Het aantal berichten blijft gelijkmatig oplopen op de kleine sprong in april na, want toen waren de spamtraps als test niet voorzien van DNSBL-filtering. Voorlopig lijkt hiermee opzet redelijk stabiel te zijn en met een plugin voor Roundcube kunnen gebruikers nu ook fouten netjes zelf melden en worden die verwerkt in de database.
Over de effectiviteit zijn op dit moment geen harde cijfers en de vraag is dan ook hoe die te meten zijn. Dus wat is er nog te verbeteren aan de opstelling? Op dit moment worden performance gegevens over hoeveelheid berichten die worden geweigerd of aangenomen nog niet verwerkt, maar ook niet hoeveel berichten als spam worden gemarkeerd en wat de gemiddelde doorloop tijd is om een bericht te verwerken. Binnenkort dus maar eens een blik werpen op een aantal logfiles om te kijken of dit mogelijk is om zo beter inzicht te krijgen.
In september ging een posting over het migreren van IMAP en afgelopen weekend was het zover. Dovecot 1.0.15 werd upgrade naar 1.2.9 waardoor oa een bug in de delivery agent werd geholpen en bewust werd van namespace prefixen. Maar ook werd Sieve-ondersteuning verbetert en redelijk veel performance verbeteringen.
Een van de belangrijkste reden van de migratie was niet om Dovecot te upgraden, maar om mailbox-layout op een dermate manier te wijzigen dat Dovecot zoveel mogelijk out-of-the-box gebruikt kon worden. De INBOX-prefix moest dus verdwijnen en na veel testen met oa Evolution, Roundcube, Thunderbird en Microsoft Outlook 2007 kwam de volgende layout eruit rollen.
Trash
Drafts
INBOX.Test
Junk
Sent
INBOX
Een van de keuzes was om dubbele algemene mappen aan te maken, maar gezien het feit hoe makkelijk vele clients de nieuwe layout oppakte zijn de algemene mappen op het hoogste niveau geplaatst. Elke client lijkt hier redelijk goed mee om te gaan. Alleen Evolution behoefte in sommige speciale gevallen een opschoning van de lokale cache, maar in veel gevallen is het niet eens nodig. De keuze gaf ook de mogelijkheid om Dovecot zo in te stellen dat de algemene mappen altijd beschikbaar zijn en door de gebruiker eigenlijk niet weg te gooien zijn. De mappen worden bij het eerst volgende bericht weer automatisch aangemaakt en beschikbaar gesteld.
protocol lda {
mail_plugins = autocreate ...
}
plugin {
autocreate = Trash
autocreate2 = Junk
autocreate3 = Drafts
autosubscribe = Trash
autosubscribe2 = Junk
autosubscribe3 = Drafts
}
Door de vaste locatie en het automatisch beschikbaar stellen van mappen is het vooraf wegfilteren van Spam wel een optie geworden. En hoewel dit natuurlijk wel een heikel punt is, want de gebruiker heeft ineens geen invloed meer of spam opzij wordt gezet. Dit is misschien het belangrijkste punt wat van XS4ALL te leren is en dat is om niet te veel keuzes te geven, maar een veilige oplossing aan te bieden.
protocol lda {
mail_plugins = sieve ...
}
plugin {
sieve_before = /etc/dovecot/sieve/discard-junk.sieve
}
Door tegen de Sieve-plugin te vertellen dat hij voor elke lokale delivery van een mailbericht het discard-junk.sieve script moet afwerken. Nu zijn er vele voorbeelden in omloop met wildcard en dat men de wildcards telt, maar waarom niet gewoon de beslissing in bijvoorbeeld Amavisd-new laten maken en zoeken naar de juiste header.
require ["fileinto"];
# rule:[spamfilter]
if anyof (header :contains "X-Spam-Flag" "YES")
{
fileinto "Junk";
}
Wat nu eigenlijk nog overblijft is om het Sieve-script met de hand te compileren.
$ sudo sievec /etc/dovecot/sieve/discard-junk.sieve
Er zijn nog veel meer wijzigingen geweest, maar die komen binnenkort vanzelf aan de orde.
DKIM aka DomainKeys Identified Mail is een alternatief op SPF aka Sender Policy Framework en hoewel het lastiger is op te zetten aan de verzenderkant is het wel goed te gebruiken als ontvanger. Zeker omdat oa grote partijen zoals Google en Yahoo het ook gebruiken om hun e-mail te versturen. Gelukkig zijn er ook steeds meer kleinere partijen die DKIM gebruiken.
Op Debian kan door het installeren van Mail::DKIM het oa worden gebruikt door SpamAssassin en Amavisd-new.
$ sudo apt-get install libmail-dkim-perl
Voor SpamAssassin om gebruik te maken van DKIM hoeft in het bestand /etc/spamassassin/v312.pre de volgende regel staan zonder #-teken ervoor.
loadplugin Mail::SpamAssassin::Plugin::DKIM
Je kan los een DKIM-proxy installeren om een header te laten toevoegen of de DKIM-signature voldoet, maar als je al al gebruikt maakt van Amavisd-new dan kan het al automatisch worden gedaan door Amavisd-new. Zorg dat in het bestand /etc/amavis/conf.d/50-user de volgende regel staan en herstart de daemon.
$enable_dkim_verification = 1;
Je zal nu zien dat de volgende regels zien verschijnen in /var/log/mail.log:
Dec 29 20:36:45 server amavis[7162]: Module Mail::DKIM 0.32
Dec 29 20:36:45 server amavis[7162]: DKIM code loaded
Als je bijvoorbeeld RoundCube gebruikt dat kan je met DKIM verification plugin de status automatisch laten weergegeven als de gebruiker zijn e-mail leest. Het zal je ook opvallen waar het voorlopig niet verstandig is om e-mail te rejecten op basis van een invalide DKIM signature. Bij sommige mailinglisten worden extra regels aan de body van de e-mail toegevoegd waardoor het signature niet meer valide is.
Recent Comments