Levantando tú propia lista negra de email

Levantando tú propia lista negra de email

Y como poner en jaque a los spammers montando esto en Internet por menos de lo que cuesta un completo y una bebida cada mes

A muchos de nosotros nos parece que el uso y abuso del spam supera todo limite razonable, y nos gustaría tener nuestra propia lista negra, pues eso no solo es posible también es fácil!

Paso 1: Descarga la RBL DNS Daemon

Utilizamos rbldnsd, en la página del autor hay algunos manuales que pueden ser de utilidad

Descargar el servidor rbldns:

Paso 2: Desactivar cualquier servidor DNS existente

Asegúrese de que no tiene otro servicio DNS ejecutándose. utilice

service named stop

para detenerlo, puede además usar chkconfig para que named no vuelva a arrancar cuando se reinicie el sistema.

Paso 3: Instalar el RPM

Cree al usuario

useradd rbldns

Instale el RPM

rpm -Uvh rbldnsd*.rpm

Paso 4: Crear una tabla de MySQL

Asegúrese de que el servidor MySQL está en funcionamiento. Ingrese a MySQL, cree una base de datos, asigne los permisos de insert y delete, y cree la siguiente tabla:

CREATE TABLE `ips` (
  `ipaddress` varchar(40) NOT NULL default '',
  `dateadded` datetime NOT NULL default '0000-00-00 00:00:00',
  `reportedby` varchar(40) default NULL,
  `updated` datetime default NULL,
  `attacknotes` text,
  `b_or_w` char(1) NOT NULL default 'b',
  PRIMARY KEY  (`ipaddress`),
  KEY `dateadded` (`dateadded`),
  KEY `b_or_w` (`b_or_w`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='spammer list';

Paso 5: Descarga el script en Perl que vuelve a generar el archivo plano a partir de una base de datos MySQL

El software de DNSRBL que instalamos no tiene soporte de base de datos, para hacerlo compatible volcaremos los datos de la base sobre un archivo de configuración cada cierto tiempo

rebuild_rbldns.pl script

Ponga el script en /usr/local/bin

wget -O /usr/local/bin/rebuild_rbldns.pl http://www.blue-quartz.com/rbl/rebuild_rbldns.txt
chmod 750 /usr/local/bin/rebuild_rbldns.pl

Tendrás que poner esto en el cron como root y ejecutar cada 5 minutos (puedes configurar otro lapso de tiempo si lo deseas)

crontab -e
*/5    *       *       *       *       /usr/local/bin/rebuild_rbldns.pl

Por favor, modifique las líneas 25-27 de este script en Perl para cambiar su usuario y contraseña de MySQL.

Paso 6: Editar el archivo de configuración /etc/sysconfig/rbldnsd

# My boot rbldnsd options
# -----------------------------------------
# TTL 35m, check files every 60s for changes, -f = smooth reloads
# -l logfilepath
# Please change 101.102.103.104 to your real public IP that you want the dns daemon to listen on
# Please change mydomain.com to your real domain name.
#
RBLDNSD="dsbl -l /var/lib/rbldns/log/rbl.log -f -r/var/lib/rbldns/dsbl -b 101.102.103.104 \
   rbl.mydomain.com:ip4set:spammerlist,whitelist \
   rbl.mydomain.com:generic:forward
"

Paso 7: Crear la estructura de directorios de archivo plano

mkdir /var/lib/rbldns/dsbl
touch /var/lib/rbldns/dsbl/forward
touch /var/lib/rbldns/dsbl/spammerlist
touch /var/lib/rbldns/dsbl/whitelist

touch /var/lib/rbldns/dsbl/rbl.log chown -R rbldns:rbldns dsbl

Paso 8: Agregar algunos registros a la base de datos MySQL que tiene de spammers conocidos

INSERT INTO ips SET 
ipaddress='123.456.789.1', 
reportedby='101.102.103.104', 
attacknotes='dictionary attack from badboy.com', 
b_or_w='b', 
dateadded=now(), 
updated=now();

Para ayudar en el diagnóstico de problemas, añadir estas entradas en el archivo "/var/lib/rbldns/dsbl/forward":

@ A 1.2.3.4
test A 1.2.3.4

Y por favor reemplazar 1.2.3.4 con la dirección IP de su servidor RBL.

Paso 9: Ejecutar la secuencia de comandos para construir el archivo plano

Ejecuta

/usr/local/bin/rebuild_rbldns.pl

y si quieres ver si realmente se crea el tipo de archivo siguiente:

cat /var/lib/rbldns/dsbl/spammerlist

Paso 10: Iniciar el servicio rbldns

service rbldnsd start

Paso 11: Crear una zona DNS para el subdominio rbl.mydomain.com

Debe crear una zona DNS (subdominio) en su servidor DNS principal para rbl.mydomain.com y el punto a su servidor rbldnsd.

; subdomain delegation
rbl.mydomain.com.  in ns rbl.mydomain.com.
rbl.mydomain.com.  in a 101.102.103.104

Paso 12: búsquedas de prueba rbl.mydomain.com

Si una dirección IP en la lista negra está en su base de datos RBL que se "existe" en el sistema DNS.
Por ejemplo:
si la lista negra de IP 89.40.1.32
a continuación, hacer una búsqueda de DNS regular de la siguiente manera:

nslookup test.rbl.mydomain.com
nslookup 32.1.40.89.rbl.mydomain.com

debe resultar en una coincidencia para 1.2.3.4 (su dirección IP pública del servidor RBL). Si esto funciona, entonces el archivo /var/lib/rbldns/dsbl/forward está trabajando.

Cada entrada en la base de datos RBL devolverá un registro 127.0.0.2

Si una dirección IP no está en su base de datos, el RBL no será capaz de encontrar una entrada. Así es como los servidores de correo saben cómo bloquear las IP de origen de los correos electrónicos de los spammers conocidos.

Paso 13: Tener sus servidores de correo utilizan esta base de datos RBL

visita http://ñu.cl/usar_lista_dnsbl/


Muy bien, y la parte en que todo esto era barato?

Pues muy fácil, este software requiere muy poco poder de computo, por lo que una pequeña maquina virtual bastará para cubrir todas sus necesidades, acá hay una lista de ejemplo donde se puede alojar este servicio por unos pocos USD por mes

  • https://www.atlantic.net/cloud-hosting/pricing/ desde poco menos de $USD 5 por mes
  • https://www.opencloud.cl/ desde $CLP 2500 por mes
  • Buscar mas en Google

Cada vez los servidores privados virtuales son más poderosos y baratos. Además de que muchas de estas ofertas se encuentran en distintos países, por lo que es posible construir soluciones replicadas por el mundo a un precio bajisimo.


Referencias

Creador del software RBLDNSD http://www.corpit.ru/mjt/rbldnsd.html

Autor del post original http://www.blue-quartz.com/rbl/

Contactanos