Solución al aumento de SPAM de estos últimos días

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:

Continuar leyendo “Solución al aumento de SPAM de estos últimos días”

Saber el top de dominios que envia mas emails en un servidor (Plesk + QMail)

Siempre es útil conocer quienes son los clientes y dominios que dentro de un servidor envian más email y quienes pueden abusar los recursos. Por eso os voy a copypastear los scripts que me encontre en el blog personal de oscar montero:

Por ejemplo para saber  el top de dominios que más envia emails en un servidor (con qmail y plesk) puedes usar:

grep user  /usr/local/psa/var/log/maillog | grep LOGIN | cut -c50-140 | cut -d,
-f 2 | cut -d@ -f 2 |sort|uniq -c|sort -nk 1

Otra forma sería esta:
Continuar leyendo “Saber el top de dominios que envia mas emails en un servidor (Plesk + QMail)”

Buscando al spammer “Nobody”

Probado en Plesk+Qmail en Ensim+Sendmail no logro arrancarlo y dicen que en Cpanel+Exim funciona perfecto.

Cuantas veces quisieramos saber quien esta enviando spam atraves de scripts php o cgi en nuestro server o que sitios estan comprometidos y los usan los spammers para sus cometidos. Si ud mira en su php.ini la funcion mail realiza un llamado directo a /usr/bin/sendmail esto es lo que pretendemos monitorear.

Este sencillo script crea un archivo log donde se almacena la actividad registrada por sendmail. Sirve tambien en caso de que nuestro servidor este comprometido en sus archivos temporales /tmp o /var/tmp o cualquier otro. La idea es intercambiar el binario de sendmail por este sript de perl y monitorear en /var/log/formmail.log toda al actividad de envio de correo.

Instalacion y configuracion.
1) Paramos qmail
service qmail stop
2) Hacemos Backup (Por nada te lo saltes; Respeta el nombre del backup ya que el perl lo usara)
mv /usr/sbin/sendmail /usr/sbin/sendmail.act
3) Crea el script de perl que reemplazara a /usr/sbin/sendmail
pico -w sendmail
4) Le asignanos permisos de ejecucion
chmod +x /usr/sbin/sendmail
5) Creamos el archivo de salida (El Log)
echo > /var/log/formmail.log
6) Le damos permisos al log
chmod 777 /var/log/formmail.log
7) Ya esta A hacer pruebas y a mirar el log


#!/usr/bin/perl

# use strict;

use Env;

my $date = `date`;

chomp $date;

open (INFO, “>>/var/log/formmail.log”) || die “Failed to open file ::$!”;

my $uid = $>;

my @info = getpwuid($uid);

if($REMOTE_ADDR) {

print INFO “$date – $REMOTE_ADDR ran $SCRIPT_NAME at $SERVER_NAME \n”;

}

else {

print INFO “$date – $PWD – @info\n”;

}

my $mailprog = ‘/usr/sbin/sendmail.act’;

foreach (@ARGV) {

$arg=”$arg” . ” $_”;

}

open (MAIL,”|$mailprog $arg”) || die “cannot open $mailprog: $!\n”;

while ( ) {

print MAIL;

}

close (INFO);

close (MAIL);