Una Realtime Block List (RBL) è una lista indirizzi che un fornitore di liste RBL ritiene siano causa di Spam.
Come alternativa a rblsmtpd, per bloccare gli IP di queste liste faremo uso del programma qmail-rblchk di Luca Morettoni.
- Info: http://www.morettoni.net/qmail-rblchk.html
 - Scarica: http://www.morettoni.net/qmail/qmail-rblchk-2.4.1.tar.gz
 - Vedi anche: http://www.spamhaus.org/
 
Per una guida esaustiva sul programma si consiglia la visione del sito dell'autore.
Installazione di qmail-rblchk
Per prima cosa dobbiamo applicare la patch errno, poichè il programma è derivato da djbdns di DJB. La patch è inclusa nei sorgenti di  netqmail.
cd /usr/local/src wget http://www.morettoni.net/qmail/qmail-rblchk-2.4.1.tar.gz tar xzf qmail-rblchk-2.4.1.tar.gz cd qmail-rblchk chown -R root:root . patch < /usr/local/src/netqmail-1.06/other-patches/djbdns-1.05.errno.patch make setup check
Questo installerà qmail-rblchk nella cartella /var/qmail/bin.
Preparazione della cartella log
Se si desidera che il programma registri le sue attività e gli IP bloccati (cosa utile per creare una propria lista in seguito) è necessario creare un cartella per i log e assegnare i privilegi di scrittura all'utente sotto il quale gira qmail-smtpd:
mkdir /usr/local/etc/rbl chown -R vpopmail /usr/local/etc/rbl
Modalità di utilizzo
qmail-rblchk è un filtro che deve essere eseguito prima della consegna del messaggio (delivery). E' necessario installarlo nella prima riga del file .qmail-default.
> /var/qmail/bin/qmail-rblchk -h
qmail-rblchk: usage: qmail-rblchk [opz] [dir]
 options may be:
  -h       this screen
  -s       add X-Spam header into the incoming mail (work only with delivery ``dir'')
  -c       turn on condredirect compatibility mode
  -i NUM   ignore first ``NUM'' IPs found in the header
  -x IP    do not check ``IP'', try to find other address in header
  -v       verbose (debug) mode
  -V       show program version
  -q       quiet mode (suppress any output)
  -p       don''t check private IP class:
             127.0.0.0   - 127.255.255.255
             10.0.0.0    - 10.255.255.255
             172.16.0.0  - 172.31.255.255
             192.168.0.0 - 192.168.255.255
  -m       check all IPs in email (default: check only first IP)
  -l log   write program action to ``log'' file
  -L data  write blocked IP to ``data'' file
  -r addr  use ``addr'' for RBL checking (if TXT record exist block mail)
  -R addr  use ``addr'' for RBL reverted checking (if TXT record NOT exist block mail)
  -C addr  use ``addr'' for one time RBL checking (if TXT or A record exist don''t block mail)
  -a addr  use ``addr'' for anti-RBL checking (if A record NOT exist block mail)
  -A addr  use ``addr'' for anti-RBL reverted checking (if A record exist block mail)
  -X cdb   check IP from tcpserver-style ``cdb'' file (IP:deny block mail from that IP)
You must specify one or more (max 32) RBL address, example:
 qmail-rblchk -r dnsbl.sorbs.net -r sbl-xbl.spamhaus.org -r relays.ordb.org
You can ignore (-x option) no more than 16 IP address
If ``dir'' is given in command line and it exist all blocked mails are delivered
into Maildir ``dir'' (dir must start with a / or a . and end with a /);
the program run in ``delivery mode''.
The program exit status may be (normal mode):
 0    when the message is not blocked
 100  when the message is blocked
 111  when fails or no checking options was given
In ``delivery mode'':
 0    the message is not blocked (continue .qmail checking)
 99   the blocked message has been wrote to ``dir'' Maildir
 111  same as above
In ``condredirect compatibility mode'':
 0    when the message is blocked
 1    when the message is not blocked
 111  same as above
Questo potente programma può registrare la sua attività, salvare gli IP bloccati, spostare lo spam nella cartella Junk, bypassare i messaggi in arrivo dalla rete interna.
Ecco come lo uso io nei miei file .qmail-default. E' necessario inserire una linea come questa all'inizio del file .qmail-default del dominio dove si vuole abilitare il filtro:
|/var/qmail/bin/qmail-rblchk -r zen.spamhaus.org -r dnsbl.sorbs.net -p -L /usr/local/etc/rbl/rbl.txt -l /usr/local/etc/rbl/qmail-rblchk.log
NB: Se si decide di usare zen.spamhaus.org come suggerito qui, assicurarsi di soddisfare i requisiti delle condizioni d'uso gratuite se non si vuole che l'accesso ai server sia inibito.
Un'altra cosa che si può fare è usare uno script della shell presente nella directory contrib della cartella sorgente per ruotare i log file e avvisare periodicamente l'amministratore del sistema su ciò che sta facendo il programma.
> cp /usr/local/src/qmail-rblchk/contrib/spam-report.sh /usr/local/etc/rbl/qmail-rblchk-report.sh > crontab -e 3 02 * * * /usr/local/etc/rbl/qmail-rblchk-report.sh postmaster@yourdomain.net 5
dove 5 è il numero massimo di file log da lasciare su disco.

