Redirigir tráfico dns a través de tor con Dnsmasq

índice

Cuando utilizamos tor uno de los problemas mas comunes es que el tráfico dns no viaja a través de este debido a que tor solo acepta tráfico TCP, para solucionar esto los desarrolladores de tor integraron una función que permite hacer peticiones dns sobre TCP (El servidor debe soportar este tipo de peticiones, en este caso se utiliza OpenDNS)

Si usted es un usuario que utiliza tor solo en algunas ocasiones el cambio en las configuraciones de su dns puede llegar a ser molesto, para evitar esto utilizaremos dnsmasq ya que muchos derivados de Debian lo traen instalado por defecto lo cual facilita bastante la configuración.

dns_logoPara instalar tor y dnsmasq solo debemos ejecutar los siguientes comandos (al final de la entrada encontrara enlaces donde se explica la instalación de tor de forma mas detallada).

# echo "deb http://deb.torproject.org/torproject.org/ sid main" > /etc/apt/sources.list.d/tor.list
# echo "deb-src http://deb.torproject.org/torproject.org/ sid main" >> /etc/apt/sources.list.d/tor.list
# gpg --keyserver http-keys.gnupg.net --recv 886DDD89
# gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add -
# apt update
# apt install deb.torproject.org-keyring
# apt update
# apt install tor tor-arm dnsmasq
# mkdir -p /var/lib/tor
# mkdir -p /var/log/tor
# adduser --system --no-create-home debian-tor debian-tor
# chown debian-tor:debian-tor /var/log/tor /var/lib/tor
# chmod 600 /var/lib/tor /var/log/tor
# chmod u+x /var/lib/tor /var/log/tor
# chgrp debian-tor /etc/tor/ /etc/tor/*
# chmod g+rw /etc/tor/ /etc/tor/*
# rm -f /usr/share/tor/tor-service-defaults-torrc
# ln -sv /etc/tor/torrc /usr/share/tor/tor-service-defaults-torrc

Luego de instalar abrimos el archivo de configuración de tor.

# nano /etc/tor/torrc

Y agregamos lo siguiente al final del archivo:

DNSPort 9053

Esto le dice a tor que utilice el puerto 9053 para su propio dns, se utiliza un puerto diferente para no colisionar con el puerto dns estándar.

Ahora debemos realizar las modificaciones correspondientes a dnsmasq.

# nano /etc/dnsmasq.conf

Y  agregamos lo siguiente al final del archivo:

cache-size=2048
neg-ttl=3600
no-resolv
server=127.0.0.1#9053
server=208.67.222.222

Como se puede observar con estas modificaciones se le indica a dnsmasq que no utilice los valores asignados por resolv y en cambio utilice los valores asignados aquí, el orden es importante ya que se intentara utilizar primero el que esta arriba y luego el que esta abajo.

Dnsmasq intentará siempre utilizar a tor para resolver peticiones dns y en caso de que tor no se este ejecutando simplemente intentara con el siguiente de la lista; No se deben agregar mas de dos valores (incluyendo a tor) ya que la tercera sera asignada automáticamente por su isp.

Mas información:

ACTUALIZACIÓN: Puede utilizar el script tor-strong para automatizar el proceso de instalación de tor + polipo + privoxy + dnsmasq.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s