giovedì, febbraio 12, 2009

dcc spamassassin qmail how-to

- post<li> - Permalink

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.

Così ho deciso di provare dcc, un sistema di hashing condiviso (HashSharingSystem), dove in pratica esiste una rete di server pubblici che si passano tra di loro le informazioni relative allo spam in modo da essere più veloci nel riconoscerlo.

Altri sistemi simili sono Razor e Pyzor.

Io avevo già provato quest'ultimo ma non mi aveva dato molte soddisfazioni e così ho deciso di provare dcc appunto perchè mi sembrava più promettente solo che non riuscivo a trovare indicazioni complete e suprattutto aggiornate su come integrarlo con qmailtoaster e così me le sono scritte! :D

Ecco quindi questo sintetico How-to su come integrare dcc con qmailtoaster o meglio con spamassassin

  1. Si scaricano i sorgenti dentro ad una directory tipo /tmp con il comando



    >wget http://www.rhyolite.com/dcc/source/dcc.tar.Z

  2. Si decomprimono i sorgenti:



    >tar zxvf dcc.tar.Z

  3. Entriamo nella directory appena creata (notare l'ultima versione rilasciata)



    >cd dcc-1.3.102/

  4. Lanciamo il classico configure disabilitando l'interfaccia per sendmail che non ci serve visto che usiamo qmail



    > ./configure --disable-dccm

  5. Lo installiamo con il comando



    >make install

  6. Vediamo se può funzionare con il comando:



    >cdcc 'info'
    Tra l'altro qui vediamo subito se ci sono noie con il firewall
  7. 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

  8. Copiamo nella cartella corretta il file di startup ( rc ) di dcc:



    >cp /var/dcc/libexec/rcDCC /etc/init.d/dcc

  9. Attiviamo il servizio all'avvio:



    >chkconfig --add dcc

  10. Lo avviamo subito per vedere se tutto funziona:



    >service dcc start

  11. 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

  12. 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 ## <<<<<<<<<<<<<<<<<<<

  13. 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

  14. Riavviamo il sistema per verificare che tutto parta correttamente all'avvio.
  15. 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

  16. 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:
Il software ovviamente non è la soluzione definitiva, ma le prime impressioni sono positive. Dovrebbe abbassare il tasso di falsi negativi del 3% secondo il documento del Garr. Non so provatelo e poi fatemi sapere la vostra impressione qui nei commenti.

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.

Misato: [...] Hai paura... di incontrarti da solo con tuo padre?...Non puoi e non devi sempre fuggire. Se non ti sforzerai tu di fare il passo in avanti, non cambierà mai nulla da sé.
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)

venerdì, febbraio 06, 2009

I pirati sono clienti insoddisfatti? Io non sono un pirata - ma sono un cliente insoddisfatto!

- post<li> - Permalink


Lo so che sarebbe più "giusto" riportare una citazione nel mio microblog Dgrossato - Life, però questa mi gira così e la riporto qui.

La tavoletta narrava appunto che, crescendo il numero degli spettacoli dei leoni, si era selezionata una sottovariante dei cristiani che correvano molto veloci; i felini, ingrassati durante gli spettacoli precedenti, non riuscivano più a prenderli e questo fatto rischiava di mettere in crisi il settore fino ad allora florido dei giochi circensi.

Con una brillante intuizione fu costituito presso il Senato Romano un apposito "Comitato per la lotta agli affamatori dei grandi felini", che aveva lo scopo di supportare il settore dello spettacolo mediando tra il diritto dei cristiani di cercar di scappare e quello dei carnivori detentori di grossi canini di poter esercitare i loro legittimi diritti di predazione.


Va da se che condivido in pieno la previsione e attendo con ansia il salto della barricata, perchè accontentarmi di simulacri di prodotti solo perchè gli originali costano troppo mi ha un po' stufato soprattutto per quanto riguarda musica e film.

Per il software sto vivendo serenamente grazie agli ottimi prodotti free e quelli opensource.

Vi faccio un esempio, sono stufo di pagare € 3.50 per vedere una volta un film da blockbuster che magari poi non mi piace e il costo mi sembra ancora più esoso, ma d'altra parte non ho voglia nè il tempo di mettermi li ogni settimana a scaricare, masterizzare riprodurre i film che mi piacerebbe vedere...

Quasi quasi mi faccio un abbonamento ADSL flat a 10€ al mese e mi guardo i film che scelgo in streaming ... aspettando che qualcuno salti la barricata ... :D
 

Voi che ne pensate?



Wolverine: Ma chi è questo?
Nightcrawler: Kurt Wagner. Al circo di Monaco ero noto come l'incredibile Nightcrawler.
Wolverine: Ah, ti prego...

martedì, febbraio 03, 2009

Spooler di stampa non è in esecuzione - Panasonic Driver

- post<li> - Permalink

Il problema:
In ufficio abbiamo una Fotocopiatrice Panasonic DP 4510 che usiamo come stampante via rete, ma molti miei colleghi si lamentavano che non riuscivano a stampare perchè andava in tilt il servizio "spooler di stampa".

L'errore windows generato è come al solito molto indicativo "Lo Spooler di stampa non è in esecuzione". Immaginatevi i colleghi che leggevano una cosa del genere.
Io non avevo problemi a stampare fino a quando non ho dovuto formattare il pc (fisiologico) e reinstallare il driver della Panasonic. Allora il problema è diventato anche il mio e ho dovuto approfondire :D
Analisi:
Anche riavviando a manina il servizio "Spooler di stampa" il problema si ripresentava.

Nel registro degli eventi ho trovato eventi tipo questo:
Tipo evento: Errore
Origine evento: Application Error
Categoria evento: (100)
ID evento: 1000
Data:  03/02/2009
Ora:  11.13.33
Utente:  N/D
Computer: DG
Descrizione:
Applicazione che ha provocato l'errore spoolsv.exe, versione 5.1.2600.5512, 
modulo che ha provocato l'errore CODEC32.DLL, versione 4.0.0.0, 
indirizzo errore 0x00015000.

Per ulteriori informazioni, consultare la Guida in linea e supporto tecnico 
all'indirizzo http://go.microsoft.com/fwlink/events.asp.
Dati:
0000: 41 70 70 6c 69 63 61 74   Applicat
0008: 69 6f 6e 20 46 61 69 6c   ion Fail
0010: 75 72 65 20 20 73 70 6f   ure  spo
0018: 6f 6c 73 76 2e 65 78 65   olsv.exe
0020: 20 35 2e 31 2e 32 36 30    5.1.260
0028: 30 2e 35 35 31 32 20 69   0.5512 i
0030: 6e 20 43 4f 44 45 43 33   n CODEC3
0038: 32 2e 44 4c 4c 20 34 2e   2.DLL 4.
0040: 30 2e 30 2e 30 20 61 74   0.0.0 at
0048: 20 6f 66 66 73 65 74 20    offset 
0050: 30 30 30 31 35 30 30 30   00015000
e googlando con l'errore mi tornava questo unico risultato dove una altro utente solleva lo stesso problema e un MVP gli suggerisce di installare l'ultima versione dei driver o di riregistrare la DLL in questione CODEC32.DLL.
Io ho provato a cercare i driver, ma a parte trovare siti farabutti dove ti chiedevano una serie di soldi per scaricare i driver della serie Panasonic DP, oltreutto tale driver era della stessa versione che ho avevo installato io.
Ho provato allora a, prima fare un trova per vedere in che carterlla si trovasse CODEC32.DLL e poi lanciare il comando
C:\WINDOWS\system32\spool\drivers\w32x86\3>regsvr32 CODEC32.DLL
Ma anche questo mi sollevava un errore dicendomi che il file CODEC32.DLL non era un file .DLL :D.
Probabilmente il problema era proprio questo file corrotto.
Soluzione del problema: 

Non so come, ripeto, non so come sono (comunque non grazie ad una ricerca diretta di google) riuscito a trovare un sito ufficiale della Panasonic da cui scaricare i driver ufficiali, gratuiti e aggiornati

In particolare sotto ho scelto il mio modello Panasonic DP-3510, 4510, 6010 e ho scaricato l'ultima versione disponibile. 

In queste pagine tra l'altro sono disponibili anche tutti i relativi manuali d'installazione. 

Ho controllato, in questa versione il file CODEC32.DLL è alla versione 4.1 e non 4.0 come nella versione precedente. 

Tutto finora funziona, speriamo resista. :D 


Byez

Cindy, c'è il telegiornale! Un'altra bambina bianca è caduta in un pozzo! Oggi la polizia ha pestato 50 neri, ma il mondo intero si ferma per una ragazzina bianca caduta in un pozzo!