Credo che chiunque gestisca un mailserver oggigiorno si trovi a dover affrontare il problema della "posta indesiderata" ossia del cosiddetto " spam " ora, anche se non esiste un metodo sicuro al 100% per eliminare tali messaggi , esistono però una serie di accorgimenti che potrebbero aiutare a rimuovere una buona percentuale di tale immondizia evitando così traffico inutile (del resto la "banda" è un bene prezioso ) ed evitando anche l'intasamento delle caselle di posta
Nel caso particolare mi soffermerò su Microsoft Exchange ossia sul MailServer di casa Microsoft; Exchange implementa diversi meccanismi che opportunamente configurati permettono di ridurre drasticamente la mole di spam in ingresso ed il tutto senza doversi fronteggiare con i famigerati "falsi positivi" ossia quei messaggi validi ma erroneamente classificati come spam; l'idea di base è relativamente semplice, ossia, attivare una serie di filtri che applicati in sequenza ai messaggi in arrivo permettano un filtraggio degli stessi eliminando quanto più spam sia possibile ma senza "stringere" troppo le maglie del filtraggio, cosa questa che eviterà appunto i falsi positivi
Prima di tutto, assicuriamoci che exchange NON funga da Open Relay, allo scopo oltre a questo test, sarà opportuno leggere questo e questo articolo della Knowledge Base accertandosi di implementare correttamente quanto descritto ed utilizzando il test già visto per verificare che tutto stia funzionando correttamente e che il nostro Exchange non permetta a chiunque (cani & porci sarebbe il termine tecnico) di inviare messaggi a chiunque altro
Verificato quanto sopra, passiamo al filtraggio dello spam in entrata; iniziamo con l'attivazione del filtraggio basato su " DNSBL " (o RBL) queste ultime sono delle liste aggiornate automaticamente che contengono degli elenchi di indirizzi IP dai quali viene inviato spam; le RBL possono essere divise in due gruppi principali, quelle "aggressive" e quelle "conservative", le prime tendono ad includere anche IP "non confermati" ma che abbiano inviato un certo numero di email indesiderate, le seconde invece includono soltanto IP "conclamati" ossia che sicuramente siano origine di spam
Come credo sia facile capire, l'uso di liste "aggressive" sebbene possa portare ad una maggiore efficacia ha come rovescio della medaglia il rischio di causare dei falsi positivi, ora, dato che uno degli scopi che ci stiamo prefiggendo è proprio quello di evitare i falsi positivi le RBL che utilizzeremo saranno di tipo "conservativo"
Vediamo come impostare le RBL in Exchange; prima di tutto leggiamo questo articolo della Knowledge Base e per chiarezza facciamo anche riferimento a questo documento che illustra con alcune immagini i passi necessari all'inserimento delle varie RBL nel filtro IMF di Exchange; ora che sappiamo come inserire le varie voci relative alle RBL, compiliamo l'elenco inserendo le seguenti liste
zen.spamhaus.org
dul.dnsbl.sorbs.net
bl.spamcop.net
ix.dnsbl.manitu.net
combined.njabl.org
bb.barracudacentral.org
come ho già scritto, le liste di cui sopra sono piuttosto "conservative" ma permetteranno comunque di filtrare una buona percentuale di posta indesiderata, volendo essere un pochino più aggressivi , si potrebbero anche aggiungere le seguenti liste (ma ATTENZIONE, quelle sotto sono veramente AGGRESSIVE )
db.wpbl.info
dnsbl-1.uceprotect.net
ips.backscatterer.org
ma in tal caso si dovrà tenere sotto controllo il mailserver provvedendo al whitelisting degli hosts "buoni" e controllando gli eventuali falsi positivi (ossia i messaggi erroneamente scartati come indesiderati); inoltre, nel caso di " backscatterer " bisognerebbe usare la lista nel cosiddetto " safe mode "; per questo motivo, direi che per il momento le prime liste viste sopra dovrebbero essere sufficienti a ridurre la mole di "immondizia" senza troppo sforzo; in caso di emergenza si potrà valutare se aggiungere anche le altre liste; già che ci siamo ci sarebbero anche queste (non troppo aggressive)
httpbl.abuse.ch
drone.abuse.ch
virbl.dnsbl.bit.nl
si tratta di liste "specializzate", le due di "abuse.ch" permettono di rifiutare connessioni da hosts appartenenti a "botnets" note, mentre quella di "bit.nl" permetterà di rifiutare connessioni da hosts che abbiano recentemente inviato "malware" (virus, worms...) in entrambi i casi, tali liste potrebbero aiutare per tenere fuori "robaccia" dalla propria rete, ma andrebbero comunque utilizzate con un minimo di "testa" dato che, in alcuni casi, potrebbero listare IP di mailservers legittimi che, per un motivo o per un'altro abbiano esibito un comportamento tale da farli includere nella "lista nera"; non che la cosa sia comune, ma tengo a precisarla per evitare di trovarsi di fronte a mail rifiutate senza conoscerne il motivo ah, già che ci siamo, se avete una connessione "FastWeb" (incluse le "business) credo che sarebbe utile aggiungere anche questa lista
v4.fullbogons.cymru.com
la lista in questione contiene gli indirizzi IP "reserved" ossia quegli indirizzi definiti "non routabili" insieme a quelli che IANA definisce riservati e che non possono/debbono essere usati; purtroppo alcuni "geni" (vorrei usare un altro termine ) in "FastWeb" hanno deciso che siccome tali indirizzi non erano allocati... li si poteva usare per le famose (famigerate ?) "MAN" usate da questo provider ... con il bel risultato che, non solo alcuni di tali blocchi IP sono attualmente stati allocati da IANA (ed ovviamente i clienti FW non riusciranno MAI a contattare hosts residenti su tali IP), ma, grazie all'elevato skill tecnico (sic ) gli IP "reserved" girano liberamente all'interno della rete fastweb (incluse le connessioni business) - e non solo, molti dei sistemi allocati su tali IP sono "bots" che cercano in tutti i modi di spedire "immondizia" ... e la soluzione ovviamente è quella di usare la lista di cui sopra per rifiutare qualsiasi cosa arrivi da tali indirizzi
Una nota per i possessori di Exchange 2010; in questa versione Microsoft ha aggiunto la possibilità di utilizzare le cosiddette "DNS whitelists" ossia delle liste di indirizzi IP che funzionano alla stregua delle blacklist ma che, invece di elencare hosts "cattivi", elencano hosts "buoni" ossia da non bloccare; il funzionamento di tali liste in Exchange è piuttosto semplice; all'arrivo di una connessione da un dato IP esterno, Exchange verificherà come prima cosa se tale IP sia inserito in una whitelist ed in tal caso eviterà i controlli "blacklist"; ora, volendo utilizzare tale feature, queste sono le whitelist che consiglio di utilizzare
swl.spamhaus.org
query.bondedsender.org
iadb.isipp.com
In qualsiasi caso, giunti a questo punto dovremo attivare qualche ulteriore contromisura per filtrare anche meglio, al proposito attiviamo il filtro "IMF" di Exchange, per fare ciò basterà seguire le istruzioni reperibili su questa pagina (e magari leggendo anche questo documento ); al proposito, in fase iniziale sarà opportuno configurare IMF in modo da "archiviare" i messaggi marcati come "spam", questo permetterà di tenere sotto controllo il comportamento del filtro, ad esempio utilizzando uno di questi tools (gratuiti), poi, una volta "tarato" il filtro come desiderato si potrà modificare l'opzione da "archive" in "discard" in modo da scartare direttamente la posta indesiderata evitando di intasare le mailbox locali; oltre a questo sarebbe opportuno abilitare anche il controllo "sender id" questo permetterà al filtro di effettuare un'ulteriore verifica sui messaggi in ingresso scartando ove possibile quelli provenienti da mittenti "fasulli" (es. i falsi messaggi provenienti da Microsoft e simili)
Oltre a quanto sopra, potrebbe essere opportuno abilitare una interessante "feature" di Exchange, ossia il cosiddetto " SMTP TarPitting "; in pratica abilitando tale caratteristica ed attivando al contempo il "recipient filtering" di Exchange, alla ricezione di un messaggio indirizzato ad una mailbox inesistente, Exchange rallenterà l'emissione del messaggio di errore per un tempo configurabile (es. 5 secondi); la cosa ha due vantaggi; prima di tutto permette di rallentare un mittente che tenti di inviare "spam" ad indirizzi generati casualmente, in secondo luogo permette di evitare la generazione di NDR (messaggi di mancata consegna), generando in luogo di questi dei ben più consigliabili " reject " diretti ed evitando il " bounce " delle mail, pratica ESTREMAMENTE sconsigliata (il perchè sia sconsigliata/sconsigliabile è spiegato QUI in dettaglio)
Più o meno è tutto, manca soltanto un ultimo "filtro" ossia un buon AntiVirus che si integri direttamente con exchange e che permetta la scansione "al volo" dei messaggi in transito (sia in ingresso che in uscita), non entro in dettaglio relativamente ai vari antivirus dato che ne esistono molti e che ognuno potrà scegliere quello che preferisce ma consiglio caldamente l'installazione di un simile "filtro" dato che oltre a permettere di rinforzare il filtraggio visto sopra permetterà anche di garantire che eventuali messaggi "infetti" non raggiungano le mailboxes degli utenti; assicuratevi soltanto di rifiutare i messaggi "infetti" ed evitate di inviare emails di notifica al mittente o al destinatario dato che il primo spesso è "fasullo" ed il secondo non sa cosa farsene di una email che lo informa che un dato messaggio era infetto (come ho già scritto sopra, evitate i "bounces", vivrete più tranquilli ); se proprio volete inviare tali messaggi, indirizzateli alla vostra casella "postmaster" (avete una casella "postmaster" o un alias, vero ? E, la leggete ANCHE, vero ?) così da avere sotto controllo gli alert senza... disturbare nessuno
Giusto per completezza, aggiungo qui di seguito una serie di links relativi alla configurazione di IMF ed a vari tools e documenti che potrebbero essere utili allo scopo di configurare, gestire e monitorare IMF tali informazioni (e tools) potranno rivelarsi estremamente utili per prendere confidenza con le impostazioni di IMF e per tenerne sotto controllo il comportamento sino a che non si sarà acquisita sufficiente confidenza
* IMFv2 tutorial
* IMFv2 Operations Guide
* Approaches to Fighting Spam in an Exchange Server Environment
* Microsoft Exchange IMF updates
* Updating the IMF filter
* Blocking JavaScript in mail messages
* Archiving SCL rates in IMF
* View and manage IMF archived messages
* Microsoft XMLnotepad 2007
* Exchange 2003 SP2 IMF Keyword Manager
* IMF Companion
Beh.. ora è veramente tutto, se poi qualcuno avesse letto quanto sopra pur non avendo ancora installato un proprio mailserver ed avesse deciso di fare il grande passo, consiglierei a tale scopo la lettura di questo articolo che potrebbe essere di aiuto nel compito di configurare a dovere tutto il necessario; se poi vi servissero ulteriori informazioni credo che potreste dare un'occhiata al Blog di Mitch visto e considerato che il vero esperto di Exchange è lui , io sono solo un hobbysta