En estos primeros días de Mayo he notado mucho el aumento considerable de SPAM y hablando con los sysadmins que conozco y demas hemos llegado a la conclusión de usar el siguiente script que usa iptables para bloquear las redes bien conocidas de spammers de las listas de spamhaus y okean.
Spamhaus
http://www.spamhaus.org/drop/drop.lasso
Okean
Es una lista exclusiva de redes de spammers chinos y koreanos.
Son lo mismo pero representado de diferentes formas.
http://www.pettingers.org/media/spamblock.txt
http://www.okean.com/antispam/iptabl…wall.sinokorea
http://www.okean.com/sinokoreacidr.txt
http://www.okean.com/sinokorea.txt
http://www.okean.com/antispam/iptabl…wall.sinokorea
Aqui os dejo el dicho script para bloquear las redes spammers de Spamhaus y Okean:
#!/bin/bash
IPTABLES=»/sbin/iptables»;
SPAM_spamhaus=»http://www.spamhaus.org/drop/drop.lasso»;
SPAM_TABLE_spamhaus=»Spamhaus»;
SPAM_LIST_spamhaus=»/tmp/spam_spamhaus.lst»;SPAM_okean=»http://www.okean.com/sinokoreacidr.txt»;
SPAM_TABLE_okean=»Okean»;
SPAM_LIST_okean=»/tmp/spam_okean.lst»;wget -qc $SPAM_spamhaus -O $SPAM_LIST_spamhaus || exit 1
$IPTABLES -n -L INPUT | grep -q «$SPAM_TABLE_spamhaus»
if [ $? -eq 0 ] ; then
$IPTABLES -F $SPAM_TABLE_spamhaus
else
$IPTABLES -N $SPAM_TABLE_spamhaus
$IPTABLES -A INPUT -j $SPAM_TABLE_spamhaus
fi$IPTABLES -A $SPAM_TABLE_spamhaus -j RETURN
for IP in $( cat $SPAM_LIST_spamhaus | grep -iE «^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}» | awk -F\; ‘{ print $1 }’ ); do
$IPTABLES -I $SPAM_TABLE_spamhaus -p tcp -s $IP -j DROP
donewget -qc $SPAM_okean -O $SPAM_LIST_okean || exit 1
$IPTABLES -n -L INPUT | grep -q «$SPAM_TABLE_okean»
if [ $? -eq 0 ]; then
$IPTABLES -F $SPAM_TABLE_okean
else
$IPTABLES -N $SPAM_TABLE_okean
$IPTABLES -A INPUT -j $SPAM_TABLE_okean
fi$IPTABLES -A $SPAM_TABLE_okean -j RETURN
for IP in $( cat $SPAM_LIST_okean | grep -iE «^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}» | awk ‘{ print $1 }’ ); do
$IPTABLES -I $SPAM_TABLE_okean -p tcp -s $IP -j DROP
doneunlink $SPAM_LIST_spamhaus
unlink $SPAM_LIST_okeanexit 0
NOTA: Este script vale para IPTABLES y para APF, dependiendo del servidor ahy que adaptarlo con las rutas correctas. Si teneis problemas decirlo en los comentarios 😀
ahh y no os olvideis poner el script en un cron diario para que se refresquen las reglas de iptables a la vez que las listas de spamhaus y okean¡¡
Hola. Me ha parecido muy bueno el articulo y el script. Tengo conocimientos basicos sobre el iptables y mi duda es la siguiente. Tengo una dmz donde esta mi servidor de correo con ip publica, entonces las reglas que tendria que modificar serian de Forward con destino la ip publica del servidor de correo, en vez de que fueran input?, en este caso puedes poner un ejemplo?
Gracias.
Tus articulos me han servido de mucha ayuda por no decir que me han salvado la vida.
Para este en concreto se puede crear un archivo que ejecute todas estas lineas ?
claro…. mira es facil. sustituye el wget que se baja el archivo de spamhaus por un archivo tuyo online… y listo
fffff