comment filtrer le spam (sur un exim4, serveur virtuel, domaine personnels)
Le
Basile Starynkevitch
Bonjour
J'ai un (en fait quelques) domaines DNS personnels, et notamment
starynkevitch.net (et d'autres domaines utilisés "professionnellement"
comme gcc-melt.org; tous sur le même serveur DPS).
Les utilisateurs (notamment mél) de ce domaine sont tous des proches
(càd mon épouse, et nos 4 enfants dont 3 sont majeurs). Ils sont sens=
és
être raisonnables (donc ne spamment pas), et certains ont des pages web
personnelles.
J'ai un serveur virtuel privé [VPS] chez PHPNUX qui gère le web
(protocole HTTP) et le mail (protocole SMTP) pour ce domaine. Ce
serveur est sous Debian/Testing.
Le service web est fait par ocsigen (un serveur HTTP écrit en ocaml,
voir http://ocsigen.org pour les détails. Si absoluement nécessaire je
peux passer en lighttpd) et le service mail est fait par exim4.
Je ne tiens pas trop à faire de ce VPS un serveur POP3 ou IMAP
(principalement pour ne pas remplir le disque du VPS, limité à 20Go en
tout et pour tout), mais je prefère rediriger les méls vers d'autres
boites aux lettres. Et je voulais aussi éviter une solution type webmail
dessus.
Je voudrais filtrer le spam sur ce serveur exim4 (sachant qu'il ne fait
que SMTP, pas POP ou IMAP, autrement dit qu'il n'y a pas de boites au
lettres pérennes dessus).
Il existe des paquets debian en rapport, par exemple spamassassin,
spamoracle, maildrop, mais en général ils supposent des boites aux
lettres locales. Et en particulier, ils classent généralement les spams
dans des boites locales.
En particulier, la redirection vers des boites chez @free.fr ne
fonctionnent pas, car Free exige le filtrage préalable du spam.
http://postmaster.free.fr/
Avez vous d'autres solutions à me suggérer? J'envisage sans
enthousiasme de devoir
0. utiliser un filtre bayesien comme spamoracle et une liste blanche
1. configurer exim4 pour qu'il rejete activement les messages
classifiés comme spam en renvoyant à leur émetteur un message compora=
nt
une URL ad hoc à consulter pour débloquer un message.
2. si besoin, développer en Ocaml les services HTML sous ocsigen manquan=
ts.
J'ai par ailleurs une extrême réticence envers PHP, language que je
connais peu, et que je déteste pour son insécurité. En particulier, je
ne connais pas les bonnes libraries PHP à utiliser, et je sais qu'il
faut sans cesse les mettre à jour, ce qui m'est pénible.
Cordialement.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/20101111221...210.basile@starynkevitch.net
J'ai un (en fait quelques) domaines DNS personnels, et notamment
starynkevitch.net (et d'autres domaines utilisés "professionnellement"
comme gcc-melt.org; tous sur le même serveur DPS).
Les utilisateurs (notamment mél) de ce domaine sont tous des proches
(càd mon épouse, et nos 4 enfants dont 3 sont majeurs). Ils sont sens=
és
être raisonnables (donc ne spamment pas), et certains ont des pages web
personnelles.
J'ai un serveur virtuel privé [VPS] chez PHPNUX qui gère le web
(protocole HTTP) et le mail (protocole SMTP) pour ce domaine. Ce
serveur est sous Debian/Testing.
Le service web est fait par ocsigen (un serveur HTTP écrit en ocaml,
voir http://ocsigen.org pour les détails. Si absoluement nécessaire je
peux passer en lighttpd) et le service mail est fait par exim4.
Je ne tiens pas trop à faire de ce VPS un serveur POP3 ou IMAP
(principalement pour ne pas remplir le disque du VPS, limité à 20Go en
tout et pour tout), mais je prefère rediriger les méls vers d'autres
boites aux lettres. Et je voulais aussi éviter une solution type webmail
dessus.
Je voudrais filtrer le spam sur ce serveur exim4 (sachant qu'il ne fait
que SMTP, pas POP ou IMAP, autrement dit qu'il n'y a pas de boites au
lettres pérennes dessus).
Il existe des paquets debian en rapport, par exemple spamassassin,
spamoracle, maildrop, mais en général ils supposent des boites aux
lettres locales. Et en particulier, ils classent généralement les spams
dans des boites locales.
En particulier, la redirection vers des boites chez @free.fr ne
fonctionnent pas, car Free exige le filtrage préalable du spam.
http://postmaster.free.fr/
Avez vous d'autres solutions à me suggérer? J'envisage sans
enthousiasme de devoir
0. utiliser un filtre bayesien comme spamoracle et une liste blanche
1. configurer exim4 pour qu'il rejete activement les messages
classifiés comme spam en renvoyant à leur émetteur un message compora=
nt
une URL ad hoc à consulter pour débloquer un message.
2. si besoin, développer en Ocaml les services HTML sous ocsigen manquan=
ts.
J'ai par ailleurs une extrême réticence envers PHP, language que je
connais peu, et que je déteste pour son insécurité. En particulier, je
ne connais pas les bonnes libraries PHP à utiliser, et je sais qu'il
faut sans cesse les mettre à jour, ce qui m'est pénible.
Cordialement.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/20101111221...210.basile@starynkevitch.net

Poser une question


Bonjour,
Spamassassin n'est pas un MTA, c'est le rôle d'Exim ou équivalent
d'envoyer les messages vers Free.fr. Je dis ça mais je connais mal
Exim, utilisant Postfix à la place.
Donc d'après moi, il faudrait : messages (fetchmail ?) -> exim ->
spamassassin -> exim -> smtp.Free.fr. On peut aussi y associer procmail
pour la redirection vers Free.fr.
Renvoyer les spams à leur expéditeur n'est pas une bonne idé e et est
habituellement déconseillé. Certains spammeurs n'attendent que ça. Moi
je les envoie dans une boîte perso afin d'y détecter les faux pos itifs
(quelques unités par moi) avant mise à la poubelle. Le destinatai re
peut aussi les filtrer vers un répertoire spécial en se basant sur
les en-têtes.
Quel rapport entre le filtre antispam et le serveur web/php ?
--
Alain Rpnpif
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
On peut aussi les renvoyer à spamcop et à signalspam
Thierry
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Le dimanche 14 novembre 2010, Alain Rpnpif a écrit...
Vois le paquet greylistd (postgrey pour Postfix). N'enlève pas tout (je
ne connais que postgrey), mais en enlève quand même un paquet.
--
jm
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Alain Rpnpif
J'ai finalement conservé exim4.
Non, pas fetchmail pour moi, car je suis en train de configurer le
serveur SMTP mail.starynkevitch.net mentionné en MX dans le DNS du
domaine starynkevitch.net. Il reçoit donc tous les méls vers
@starynkevitch.net en protocole SMTP. Au sens de dpkg-reconfigure
exim4-config ce serveur est un full internet SMTP server, pas un
internet SMTP server with smarthost.
Pour illustrer mon propos, je vais prendre l'exemple fictif d'une boite
qui n'existe évidemment pas pour de vrai.
J'avai cherché plusieurs paquets, et j'avais trouvé dspam mais je n'ai
pas réussi à le faire fonctionner (le paquet dspam existe -ainsi que
dspam-webfrontend etc..), mais il est configuré de manière incompatible
avec la configuration d'exim, et malgré la lecture de plusieurs sites,
notamment
http://blog.edseek.com/archives/200...dspam-on-d ebian-or-ubuntu/
je ne suis pas arrivé à le faire fonctionner correctement. En plus
c'est sur le serveur gérant réellement mon mél (et celui de ma
famille), et donc les mauvaises configuations risquaient de faire
perdre des messages.
Sur le papier, dspam avec dspam-webfrontend répond quasi idéalement à
mes besoins: il filtre, comme spamoracle, le contenu des messages par
des algorithmes bayésiens réputés efficaces. Il intervient dans des
règles de transport et de routage au sens d'exim.
Ces règles d'exim et le programme dspam combinés sont censés se
comporter comme suit:
1. En plus du comportement habituel (rejet de relai ouvert SMTP, et des
adresses de mél inexistantes...) d'exim4 tel que configuré sous Debian,
tout message vers une adresse @starynkevitch.net est d'abord traité par
dspam qui y ajout des entêtes spécifiques du genre de
X-DSPAM-Result: User; result="Spam"; probability=1.0000;
confidence=0.80
(D'ailleurs spamoracle ajoute aussi le résultat du filtrage dans un
entête spécifique). Un message filtré comme spam serait étiquetté par
un entête indiquant Spam.
2. Les messages étiquettés non spam sont transportés (au sens Exim)
sans délai vers leurs destinataires (dans mon cas, forwardés vers les
comptes @gmail ou @free ... de mes enfants, par exemple fictif
)
3. Les messages analysés et étiquettés comme spam sont mis en
quarantaine: si j'ai bien compris, ils sont mises dans une queue
spéciale d'exim4.
4. le paquet dpsam-webfrontend fournit des scripts CGI codés en Perl
(pour un serveur Web comme Apache, Lighttpd, ou même Ocsigen) et on
peut donc consulter [au moins le titre et expéditeur de chaque message
en quarantaine] la queue des spams en quarantaine, et "libérer"
certains qui sont alors redirigés vers linustruc@ ... ou en supprimer
d'autres de la queue.
5. En l'absence d'action via un CGI, un message réputé SPAM est
supprimé au bout d'un certain délai configurable (je crois 24 ou 48h)
de la queue de quarantaine.
6. L'utilisateur peut aussi, soit dans un CGI fourni par
dspam-webfrontend, soit en réexpediant depuis son MUA local (comme
sylpheed ou evolution) un message mal classé comme Spam ou Ham (= bon)
vers ou
Les coefficients bayésiens de dspam
sont ainsi légèrement modifiés par "machine learning" et on peut
espérer améliorer le comportement du filtrage. Il me semble que l'acc ès
à ces boites linustruc-good@ et linustruc-spam@ est limité à certains
expéditeurs (mais je n'ai pas compris comment, je crois que c'est une
configuration exim4 de plus).
Web oui, PHP non. En effet, dspam a une interface web, comme expliquée
ci dessus, qui permet d'intérroger la queue des messages en
quarantaine, qui permet aussi d'afficher des statistiques, d'ajouter
des adresses méls dans des listes blanches (d'expéditeurs à accepter
sans filtrage, etc.), de faire apprendre dspam en redirigeant un mél
vers linustruc-good@ localement, de supprimer un message de la queue de
quarantaine, etc. D'ailleurs, des filtres antispam propriétaires et
windowsiens fonctionnent sur le même principe: à mon boulot, ma boite
@cea.fr a une interface webmail microsoftienne, et on peut libérer les
spams de leur queue via le web
Dspam aurait été très bien pour moi, mais je n'ai pas réussi à le
configurer (et j'ai même failli casser ma config exim4).
J'ai finalement adopté une autre solution, plus légère mais assez
efficace. Le greylisting comme indiqué en
http://www.debian-administration.org/articles/167 en ajoutant le paquet
greylistd de Debian
Le principe est le suivant: lors de la première interaction SMTP (entre
un serveur de mail emetteur ou intermediaire et le mien
mail.starynkevitch.net) exim4 avec laide de greylistd répond par un
rejet temporaire à la première interaction SMTP et greylistd mémorise
l'adresse mél émettrice et son serveur SMTP. Pour les services SMTP
convenablement configurés ca demande de recommencer l'interaction plus
tard (par exemple 10 minutes plus tard). Et à la deuxième interaction
(mentionnant le même expéditeur mél et provenant du même serveur SM TP),
effectuée quelques minutes plus tard, le paquet greylistd a mémorisé et
détécté que c'est les mêmes expéditeur et serveur et exim4 traite le
message correctement.
C'est efficace pour le spam, car la plupart des spams sont émis par des
machines zombies organisées en spambot (souvent des machines
windowsiennes infectés) qu'on peut, parait-il, acheter par dizaines de
milliers dans des marchés noirs à Moscou (ou ailleurs). Ces machines
spammeuses ne respectent pas les règles SMTP et n'implémentent pas le
réenvoi postérieur d'un message temporairement rejeté.
Si un messag émis par un serveur SMTP convenablement configuré n'arrive
pas, son émetteur est sensé être prévenu.
En pratique cette solution exim4 + greylistd est très efficace. Je
recois encore quelques spams (ceux émis par des SMTPs bien configurés,
pas par des spambots achetés dans les caves de Moscou ou d'ailleurs)
mais le taux est supportable. Sans greylistd je recevais quelques spams
par minutes, avec greylistd je recois moins d'un spam par heure.
Le léger inconvenient d'exim4 + greylistd, c'est que le premier message
d'un échange par mél est retardé de dix minutes ou un quart d'heure en
pratique (mais pas les messages suivants), mais c'est tout à fait
supportable.
C'est quand même dommage que je n'ai pas réussi à configurer dspam. L es
docs et exemples ne sont pas à jour par rapport à la config exim4, et
j'ai eu des gros problèmes de permission (car dspam tourne sous
l'utilisateur dspam, pas sous celui d'exim).
Cordialement.
PS. je parle bien de configurer un serveur mail mentionné par MX dans
le DNS, pas une machine personnelle qui recoit le mél en fetchmail!
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Tu peux aussi regarder du coté de DSPAM [0].
Le paquet Debian est en très mauvais état, mais nous travaillons dessus. Tu
peux utiliser les paquets officieux que je mets à disposition [1] pour
lenny. Nous avons besoin de retours de testeurs ;)
DSPAM te permet de faire ce que tu souhaites, et intègre une interface web
permettant aux utilisateurs d'accéder à leur quarantaine.
La configuration est sans doute un peu plus complexe que d'autres antispam,
mais la felxibilité et surtout les résultats sont là.
@+
Julien
[0] http://dspam.sf.net
[1] http://packages.kirya.net
--
Julien Valroff http://www.kirya.net
GPG key: 4096R/258E26B1
E1D8 5796 8214 4687 E416 948C 859F EF67 258E 26B1
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/