On Thu, 19 Jul 2001, Yann Forget wrote:
> Marc, comment filtres-tu le spam ?
Principes g�n�raux de l'anti-spam sur ALPHANET, cf
http://www-internal.alphanet.ch/anti-spam.html
Sinon, petite description techniques:
1. infrastructure de courrier �lectronique:
MTA:
sendmail 8.11.x
MDA:
procmail
MUA:
pine
autres:
nf-popd
lecture par POP, mot de passe diff�rents de ceux du syst�me
daemon tr�s simple audit� en 1994
UUCP
FTN/ifmail
BSMTP-Exchange
Courrier �lectronique sous forme de batches SMTP compress�s
�chang�s pour un domaine complet.
trucs moches:
le syst�me de mail consiste en fait de deux daemons sendmail,
un 8.11.x pour SMTP, un 8.9.x pour le trafic `interne'. Cela
pour des raisons historiques qui n'ont plus lieu d'�tre.
Ni d'ailleurs vulcan, machine qui date de 1995 et qui pourrait
�tre avantageusement remplac�e.
2. syst�me anti-spam
0. les tests de base d'anti-relaying: seuls les domaines g�r�s
par mon syst�me de mails peuvent �tre utilis�s comme To:,
sinon le mail est rejet�, sauf pour les adresses internes qui
utiliseraient SMTP (dans mon cas il n'y a que quelques personnes
acc�dant par modem et PPP le syst�me), et bien s�r UUCP/BSMTP/FTN
et les clients locaux qui font ce qu'ils veulent.
1. premier niveau: le mail n'est *pas* transf�r�.
Le refus est bas� sur l'adresse IP d'�mission, via un syst�me
bas� sur un DNS que l'on a l�g�rement abus�, mais bon il
adore �a ce vicieux.
DUL
Les listes d'adresses en dialup
RBL/et les autres
Listes d'adresses de spammers connus ou de relais ouverts.
cf http://www.mail-abuse.org
Exemple:
Jul 18 00:20:42 vulcan sendmail[22668]: f6HMKa122668:
ruleset=check_relay,arg1=emelgur.com.ec, arg2=200.41.3.82,
relay=emelgur.com.ec [200.41.3.82], reject=553
5.3.0 Rejected 200.41.3.82 see http://mail-abuse.org
Environ 400 mails par jour sont refus�s sur ALPHANET par ce
biais.
Support� par les r�gles standards de sendmail et de plein
d'autres MTAs.
2. deuxi�me niveau: les adresses d'enveloppe (MAIL FROM: SMTP)
manifestement invalides (non r�solvables) sont rejet�es.
Environ une vingtaine par jour, dont probablement 95% de
personnes avec des syst�mes de mail mal configur�s (genre
deux serveurs DNS dont un qui ne sait pas qu'il est secondaire).
3. troisi�me niveau: une fois le mail TRANSFERE par le syst�me de
mail, le mail, sauf s'il correspond � des crit�res d�termin�s,
est pass� � travers une moulinette de regexp Perl, via
l'interface libmilter de sendmail. Chaque mail prend environ
10 secondes pour �tre contr�l�, en moyenne.
Les mails sont rejet�s avec l'erreur distincte:
SPAM REJECTED
*puis stock�s quand m�me dans un fichier sur le serveur*. Ce
fichier est consult� par mes soins assez r�guli�rement, pour
d�tecter des erreurs manifestes des filtres.
Environ une centaine par jour sont rejet�s par ce syst�me, qui
a environ 2-3 erreurs par jour, en g�n�ral en rafale, p.ex.
d� � une phrase cl� cit�e dans une mailing-list p.ex.
4. quatri�me niveau: une fois le mail re�u par l'utilisateur final,
si celui-ci est un spam, l'utilisateur peut envoyer le message
et tous les headers � [EMAIL PROTECTED], qui va tout
d'abord passer le message � un filtre procmail/junkfilter.
Les messages qui activent junkfilter sont les premiers � �tre
manuellement consult�s pour am�lioration des r�gles de filtrage.
Donc c'est un syst�me assez complexe qui me prend environ 10 minutes par
jour pour le peaufiner. Mais bon, auparavant je recevais environ 10
� 20 spams dans ma bo�te-aux-lettres personne par jour, maintenant plut�t
2-3.
Il manque encore pour que je sois content:
- un syst�me de lecture rapide des spams (p.ex. par interface WWW)
permettant de grouper les mails par similitudes et faire des group
kills ou group unkills.
- et pourquoi pas licencier le gars qui lit la mailbox d'announce-spam
(moi) et remplacer par un r�seau de neuronnes, hein :)
Mauvaise nouvelle: d'ici la fin du mois le service MAPS sera d�sactiv� (le
premier niveau ci-dessus), cf les URLs pr�c�demments indiqu�s et:
http://www-internal.alphanet.ch/cgi-bin/ticket-system/ttview?view=20010716-1
A mon avis cela ne va pas augmenter le nombre de spams re�us (� cause du
niveau 3) mais cela va augmenter la charge de vulcan et le boulot de tri
des spams / messages non spams (false hits).
--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se d�sabonner aussi.