dcc spamassassin qmail how-to
Nell'ultimo periodo nella mia continua lotta contro lo spam mi sono accorto che diversi messaggi ormai riuscivano a passare indenni senza nemmeno essere taggati da spamassassin, non dico respinti direttamente da simscan ma proprio nemmeno taggati.- Si scaricano i sorgenti dentro ad una directory tipo /tmp con il comando
>wget http://www.rhyolite.com/dcc/source/dcc.tar.Z - Si decomprimono i sorgenti:
>tar zxvf dcc.tar.Z - Entriamo nella directory appena creata (notare l'ultima versione rilasciata)
>cd dcc-1.3.102/ - Lanciamo il classico configure disabilitando l'interfaccia per sendmail che non ci serve visto che usiamo qmail
> ./configure --disable-dccm - Lo installiamo con il comando
>make install - Vediamo se può funzionare con il comando:
Tra l'altro qui vediamo subito se ci sono noie con il firewall
>cdcc 'info' - Modifichiamo il file dcc_conf abilitando il demone di interfaccia verso la rete dccifd (in pratica invece di lanciare ogni volta il comando interroghiamo una sorta di server che rigira le nostre richieste ai server pubblici in modo più efficente di quello descritto qui)
>vi /var/dcc/dcc_conf
#DCCIFD_ENABLE=offDCCIFD_ENABLE=on
- Copiamo nella cartella corretta il file di startup ( rc ) di dcc:
>cp /var/dcc/libexec/rcDCC /etc/init.d/dcc - Attiviamo il servizio all'avvio:
>chkconfig --add dcc - Lo avviamo subito per vedere se tutto funziona:
>service dcc start - Verifichiamo che sia partito con:
> ps aux|grep dcc
root 9954 0.0 0.0 3516 300 ? Ss 14:29 0:00 /var/dcc/libexec/dccifd -tREP,20 -tCMN,5, -llog -wwhiteclnt -Uuserdirs -SHELO -Smail_host -SSender -SList-IDroot 9955 0.3 0.4 25512 2264 ? Sl 14:29 0:00 /var/dcc/libexec/dccifd -tREP,20 -tCMN,5, -llog -wwhiteclnt -Uuserdirs -SHELO -Smail_host -SSender -SList-ID - Andiamo quindi ad abilitarlo in spamassassin andando a scommentare la riga
>vi /etc/mail/spamassassin/v310.pre
# DCC - perform DCC message checks.## DCC is disabled here because it is not open source. See the DCC# license for more details.#loadplugin Mail::SpamAssassin::Plugin::DCC ## <<<<<<<<<<<<<<<<<<< - Aggiungiamo poi le seguenti righe a /etc/mail/spamassassin/local.cf
> vi /etc/mail/spamassassin/local.cf
use_dcc 1
add_header all
DCC _DCCB_: _DCCR_
dcc_home /var/dcc
dcc_dccifd_path /var/dcc/dccifd
dcc_options -Rw whiteclnt - Riavviamo il sistema per verificare che tutto parta correttamente all'avvio.
- Testiamo il tutto con il comando:
>qmlog -f spamd
02-12 15:03:25 [3602] info: spamd: result: Y 11 - AWL,BAYES_50,DCC_CHECK,FORGED_MUA_OUTLOOK,FORGED_OUTLOOK_HTML,FORGED_OUTLOOK_TAGS,HTML_IMAGE_ONLY_20,HTML_MESSAGE,HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY,MISSING_HEADERS,MISSING_MID,NORMAL_HTTP_TO_IP,RCVD_IN_SBL,RDNS_NONE scantime=7.5,size=2643,user=clamav,uid=89,required_score=4.0,rhost=localhost.localdomain,raddr=127.0.0.1,rport=32773,mid=(unknown),bayes=0.500000,autolearn=spam - Adesso alcuni messaggi che prima non raggiungevano per poco il limite precedente (attualmente il mio è a 4) e che quindi non venivano taggati adesso superano tale soglia e vengono marcati. Infatti testando un messaggio che prima non veniva taggato con il comando> spamassassin -t -D dcc < /tmp/msg-spam-not-tagget.txtSi ottiene in calce
pts rule name description---- ---------------------- -------------------------------------------------- 0.1 RDNS_NONE Delivered to trusted network by a host with no rDNS 0.0 HTML_MESSAGE BODY: HTML included in message 1.7 MIME_HTML_ONLY BODY: Message only has text/html MIME parts 1.4 DCC_CHECK Listed in DCC (http://rhyolite.com/anti-spam/dcc/) 1.4 AWL AWL: From: address is in the auto white-list
Dove si può vedere che il trucco di cercare l'Auto White List (AWL) perchè il mittente risulta essere affidabile in quanto uguale al destinatario (ultima moda dello spam) non è sufficiente a far raggiungere la soglia di tag che invece viene superata grazie al fatto di essere riconosciuto già dalla rete di dcc
Considerazioni finali:
Riferimenti
- dcc INSTALL
- dcc FAQ: Dove sono presentati anche i tipici problemi che si possono sollevare e relative soluzioni
- dcc con spamassassinNota. in questo documento si usa dcc come un 'comando' -dccproc- lanciandolo ogni volta in maniera meno efficente e più pesante rispetto all'uso di dccifd presentato nell'articolo.
- Script RC Dcc
- Alcune ottimizzazioni per la rete italiana sono disponibili su questo documento pdf del Garr. Attenzione che è un po' datato.
Shinji: Lo so, questo.
Misato: Quello che ancora non sai è che non si tratta solo di fare il primo passo, ma anche di continuare ad avanzare, un passo dopo l'altro.In ogni caso presentati all'incontro fiero e deciso, perché ci sarà anche tua madre.[...] (episodio 15)





Digg/dgrossato
Flickr/dgrossato
Linkedin/dgrossato
YouTube/dgrossato
Del.icio.us/dgrossato
Technorati/dgrossato
MyBlogLog/dgrossato