Nell' articolo precedente in Postfix abbiamo impostato la direttiva check_policy_service per utilizzare un anche un servizio esterno per le restrizioni. In questo caso vogliamo usare Postgrey che implementa il graylisting. Cos'e' il graylisting ? Molti avranno sicuramente sentito parlare di whitelist (la lista dei buoni) e blacklist (la lista dei cattivi). Con Postgrey si implementa un livello intermedio tra i due, detto appunto greylist (che fantasia :)).
Questo sistema sfrutta un concetto molto semplice: visto l'elevato numero di mail che gli spammers inviano, raramente tentano più di una volta l'invio della posta ad un destinatario.
Con Postgrey il vostro server sfrutta questo fatto respingendo temporaneamente tutte le email provenienti da mittenti sconosciuti segnalando loro che la casella di posta del destinatario non è momentaneamente disponibile e mettendosi in ascolto per il secondo tentativo che un server "ufficiale" fà sempre.
Semplice, efficace ed ingegnoso, non servono filtri bayesiani o altre diavolerie e, ve lo garantisco, per il momento questo sistema spazza via da solo oltre il 95% dello spam !.
Più sotto vedremo in dettaglio il funzionamento.
La configurazione base di Postgrey è molto semplice. Anzi, praticamente nulla. Nelle smtpd_recipient_restrictions di Postfix abbiamo già impostato:
check_policy_service inet:127.0.0.1:10030
sudo /etc/rc.d/postgrey start
DAEMONS=(... ... ... ... ... postgrey postfix ... ... ...)
sudo nano /etc/conf.d/postgrey
Per variare questi parametri bisogna metterli nella variabile POSTGREY_OPTS, e riavviare il servizio.
Ad esempio, per portare il delay a 180 secondi e il max age a 60 giorni :
POSTGREY_OPTS="--delay=180 --max-age=60"
Postgrey memorizza i suoi dati in formato Berkley DB nella cartella :
/var/spool/postfix/postgrey
Possiamo personalizzare le whilelist editando il file dove vengono identificati i domini da non filtrare con greylist :
sudo nano /etc/postfix/postgrey_whitelist_clients
/etc/postfix/postgrey_whitelist_recipients
Con la configurazione di default vediamo a grandi linee cosa succede quando a Postgrey viene chiesta la verifica di una mail da un utente fino ad ora sconosciuto :
Come vediamo la "terna" rimane nella white list di default per 30 giorni, in questo modo chi ci invia regolarmente email non viene più " ritardato" da postgrey ma accettato subito.
Bhe, a parte un ritardo di 5 minuti la prima volta che qualcuno ci scrive sinceramente non ne vedo. Ok, il sistema si appesantisce perchè ogni nuovo messaggio deve essere inviato due volte, ma credetemi che i benefici sono enormi. Ho un semplice caso in cui con Postgrey i messaggi di spam sono passati da circa 8.000 al giorno a qualche decina.
Godiamoci il greylisting finchè funziona, temo che se verrà implementato su larga scala (credo che i grossi provider con alto volume di traffico difficilmente lo faranno) gli spammers cominceranno ad uscire con delle contromisure...
Una guerra infinita.
Alla prossima.
Commenti recenti
3 sec fa
11 ore 46 min fa
23 ore 58 min fa
4 giorni 16 ore fa
5 giorni 10 ore fa
1 settimana 5 ore fa
1 settimana 1 giorno fa
1 settimana 2 giorni fa
1 settimana 5 giorni fa
1 settimana 5 giorni fa