Før jeg begynder på RSA authorisation og IP tabeller, som bliver næste emne - var jeg bl.a. inde på tidligere at et godt værktøj til at lukke for SSHd forsøg - der jo er så umådeligt populært idag blandt slamperter - var Denyhosts. Denyhosts er også rigtig godt, men efter at have testet et par uger, er det min mening at Blockhosts er langt bedre, eller ihvertfald indeholder flere ting til kampen.

Til forskel fra Denyhosts er Blockhosts "født" med at kunne blokke de populære services fra starten af. Dvs både sshd, proftpd osv. Når en give IP forsøger sig på en af dine services, et antal gange, bliver pågældende IP blokket udfra et antal mulige metoder. Enten sker dette vha. /etc/hosts.allow for services der supporterer TCP_WRAPPERS, eller ved eksekvering af IP route kommandoer for opsæt af null-routing eller en helt tredie mulighed er vha. IPtables hvor man opsætter pakke filtre således at man kan droppe pakker fra en given host.

Igen kan scriptet, som ved Denyhosts, f.eks køres fra CRON og kravet er du har Python 2.3 installeret på din unix (det er også et krav).

*/5 * * * * /usr/bin/blockhosts.py --verbose > /var/log/blockhosts.log 2>&1

Men istedet for at ligge den i CRON kan følgende fremgangsmåde også benyttes. Editer din hosts.allow fil. 

sshd : en_eller_anden_ip_du_stoler_på : allow

#---- BlockHosts Additions

#bh: logfile: /var/log/auth.log
#bh: offset: 0
#bh: first line:

#---- BlockHosts Additions
sshd : ALL : spawn (/usr/bin/blockhosts.py )
sshd : ALL : allow