*****SPAM***** [Toulouse-pm] Infos hyper-importantes
Philippe 'BooK' Bruhat
Philippe.Bruhat at free.fr
Fri Sep 12 12:21:34 CDT 2003
Le mercredi 10 septembre 2003 à 11:41, Michel Rodriguez écrivait:
> On 10 Sep 2003, Christophe MERTZ wrote:
>
> > Pour info ton mail s'est fait spam-assassin? par le spam assassin du
> > CENA.
>
> Pareil chez moi!
>
> > D'autre part comme le spam devenait critique dans la mailing liste
> > publique zinc que je g?re au CENA, on est pass? au gestionnaire de mail
> > sympa qui est vraiment sympa. Par exemple on peut le configurer pour que
> > le mail recu d'un non-abonn? doivent ?tre confirm? par l'emetteur... les
> > archives sont aussi sympa, elles masquent les adresses mail, tout en
> > permettant (via un formulaire) la r?ponse en priv? ? un abonn? dont on
> > ne connait pas l'adresse mail....
>
> Pour l'instant on est sur le mailman de pm.org, c'est le plus simple, et
> les mails de non-abonnes sont filtres, je fais le tri. En fait on recois 1
> ou 2 spams par jour (contre 90 sur mon compte perso depuis mon dernier
> mail), donc c'est pas trop penible a administrer.
Et mailman, c'est un cauchemar au niveau interface. Pour supprimer les
spam, il faut pointer, cliquer, autant de fois qu'il y a de spam. Au
delà de 5, je fatigue. Lazyness is a virtue, you know. :-)
Je m'occupe d'une ML gérée par mailman, et comme jamais un mail utile
n'est bloqué, j'ai pris le parti de tout détruire régulièrement.
Un script à base de WWW::Mechanize s'occupe de tout ça. Je compte en
faire un jour un vrai script d'admin de mailman, avec un peu plus
d'interactivité, et une UI de la forme "appuie sur <Entrée> pour
supprimer le message ci-dessus".
Exemple d'une session (attention les spam filters !):
[18:44:45] book at rose:~ $ xpoulipo rm
3956 From: "Edwina Jack" <726b9l4pg59l at chinaren.com>
3956 Subject: Boost your confidence with a larger penis shockley
3957 From: "Julie" <w83hnjw_3uh3 at lycos.com>
3957 Subject: re: new smallest digital camera...
3958 From: "Selena Blick" <laindon at alexandria.cc>
3958 Subject: take advantage of low cost drugs in canada
3959 From: stan63 at rocketmail.com
3959 Subject: ouli get Free Epson Cartridges and more
3960 From: "Tyson" <rsvp at blinddatefun.com>
3960 Subject: Invitation
3961 From: "Elva Engle" <ray598106414 at popstar.com>
3961 Subject: G.e.n.e.r.i.c V_I_A_G_R_A - Order On-line - Fast
Delivery! iodj
eyscngtdvqpks x
3962 From: "Marquita Britt" <iulhphqehh at excite.com>
3962 Subject: How BIG Can You Get? n mkd gypk
3963 From: "Timmy Shepard" <flw67042886966 at myself.com>
3963 Subject: V I A G R A - Delivered Tomorrow! gza gpcayhixw w zw
3964 From: "Polly Galindo" <f68vuug at juno.com>
3964 Subject: More powerful intense orgasms j hnrp i
Removed 9 messages
[18:45:10] book at rose:~ $
En attendant, mon script de base est dispo pour qui le veut.
Allez, je ne résiste pas. Le voici :
#!/usr/bin/perl -w
use strict;
use WWW::Mechanize;
use HTTP::Cookies;
use Data::Dumper;
my $url = 'http://www.example.com/mailman/admindb/maliste';
my $pwd = 's3kr3t';
my $bot = WWW::Mechanize->new;
# read the cookies from
$bot->cookie_jar(
HTTP::Cookies->new(
file => "$ENV{HOME}/.mailmanrc",
autosave => 1,
ignore_discard => 1,
)
);
# get the first form
$bot->get( $url );
die "No messages on hold\n" unless scalar @{$bot->forms};
$bot->form(1);
# skip the login page
if( $bot->current_form->find_input( 'adminpw' ) ) {
warn "Revalidating login/cookie\n";
$bot->field( adminpw => $pwd );
$bot->click();
die "No messages on hold\n" unless scalar @{$bot->forms};
$bot->form(1);
}
# the spam page
my $msg = 0;
for ( $bot->current_form->inputs ) {
if ($_->name =~ /^headers-(\d+)$/ ) {
print "$1 ", join "$1 ",
$_->value =~ m!^((?:From|Subject):.*?\n)!img;
print $/;
next;
}
# coche l'effacement des messages
# DEFER => 0, APPROVE => 1, REJECT => 2, DISCARD => 3
$_->value(3), $msg++, next if $_->name =~ /^\d+$/;
}
# final action
if (@ARGV) {
$bot->click;
warn "Removed $msg messages\n";
}
else {
warn "$msg messages on hold\n";
}
__END__
Et pour encore plus d'efficacité, il doit suffire de le mettre dans la crontab
pour qu'il se lance 3 minutes avant les rappels quotidiens de mailman... :-)
Mmm, à relire mon code, je vois qu'il n'y a pas de message d'erreur en cas
de mot de passe foireux. C'est du quick and dirty, hein.
--
Philippe "BooK" Bruhat
When you open a new door, the bad comes in with the good.
(Moral from Groo The Wanderer #102 (Epic))
More information about the Toulouse-pm
mailing list