Bloqueo de publicidad con OpenDNS

tv_sharp

Así era mi ultimo televisor, desde que lo tire a la basura no volví a tener uno, la razón principal fue que descubrí el intenet, en aquel momento sin publicidad que tanto me molestaba en la tele…

El problema es que hace unos años atrás comencé a notar que los banner de publicidad en algunos sitios se tornaron realmente agresivos, popups que saltan al entrar a la portada, animaciones en flash con sonido (numero uno en mi ranking de cosas mas odiadas en la web), avisos que no se pueden cerrar, etc…

En aquel momento ya tenia en producción un servidor con Squid para limitar el ancho de banda y ahorrar en download haciendo uso de su capacidad de cache de contenido estático link a notas relacionadas. Dentro de este proxy tenemos un parámetro que nos sirve para redireccionar todo el trafico hacia una IP o puerto en particular, lo hacemos empleando cache_peer. Con algo como: cache_peer 192.168.0.1 parent 3128 0 no-query no-digest default logramos redireccionar todos los “MISS” o elementos que no tenemos dentro del cache hacia un servicio aparte, es ahí donde me puse a jugar con Bfilter que permite filtrar los elementos no deseados de una manera muy personalizable.

Hoy en dia el proyecto esta desactualizado y se me presento la oportunidad para probar algo diferente. En este caso estaríamos haciendo uso de OpenDNS y sus reglas de filtrado junto con Privoxy que es una alternativa al Bfilter mas que adecuada.
El servicio gratuito de OpenDNS cubre solamente una IP por cuenta y posibilidad de bloquear hasta 25 dominios, no vamos a necesitar mas por lo que nos registramos y agregamos nuestra IP a la lista. Luego de revisar un poco las opciones y marcar las que se refieran a seguridad y filtros generales, en Settings>Manage individual domains podemos agregar los dominios a bloquear, en nuestro caso serian aquellos que nos molestan con publicidad. La ventaja de este método es que nos ahorramos tener que filtrar el contenido que sabemos es de publicidad de antemano. Mi lista personal la voy completando de a poco, aquí esta:

2mdn.net
adnxs.com
adshuffle.com
doubleclick.net
e-planning.net
exoclick.com
freefilmshd.com
googleadservices.com
m2pub.com
notifier.avira.com
sascdn.com
serving-sys.com
smartadserver.com
smartprofitsystem.com
thefreecamsecret.com
vube.com
web.me
yieldmanager.com
yldmgrimg.net

Cuando algún usuario de nuestra red solicita uno de estos dominios para cargar un banner, nos aparece bloqueado ya que el dominio no va a resolver. Simple y ahorra trabajo a los filtros que vienen atrás, luego de configurar todo, vamos monitoreando el resultado a través del log que nos provee el mismo OpenDNS.

Los dominios que alojan contenido publicitario lógicamente van cambiando, pero la idea de bloquearlos de antemano en un DNS es algo que podemos tener en cuenta. Para ir depurando los que desaparecen de la red, podemos usar el log que nos da el Suid, Bfilter, Privoxy, BIND, etc, parseandolo con algún script y viendo si se sigue solicitando. A esta altura tengo una configuración como la siguiente:

Cliente hace la consulta DNS por el dominio, BIND revisa su cache y si no esta, va a solicitar la IP del host a su forward (OpenDNS), Si el dominio esta bloqueado en el, la historia termina ahí. De lo contrario OpenDNS le responde al nuestro servidor con la dirección IP real del dominio solicitado, BIND cachea la respuesta y se la devuelve al cliente.
Muchas veces ocurre que el cliente le pide al Squid el nombre del dominio directamente, sin hacer una consulta el mismo a su DNS. Aun no me queda claro porque sucede, pero veamos que pasara:
Squid consulta al BIND si es que no tiene el contenido (objeto, no respuesta con IP) en su cache>luego OpenDNS>Respuesta y como Squid tiene configurado un “parent”, le pide el objeto a Privoxy, es ahí donde el ultimo lo descarga y analiza, si esta todo limpio>Squid>Cliente (navegador).

Podemos hacer lo mismo sin OpenDNS? Teniendo BIND instalado y configurado debidamente sin problema. Sin el BIND podemos crear reglas de filtrado en el mismo Squid incluso por cada usuario. En el caso de una PYME seguramente es la opción indicada, pero para una instalación mas rápida y practica podemos aplicar la solución mencionada arriba aprovechando que OpenDNS nos ahorra bastante trabajo y protege nuestra red de amenazas mas difundidas.

Deja un comentario

Para proteger el blog de SPAM, le pedimos que complete la tarea:WordPress CAPTCHA