Securizando peticiones DNS con TOR

En otro articulo ya vimos como centralizar todas las peticiones DNS, pero al final se accedía a un servidor de terceros, por lo tanto el aumento en seguridad era bajo. Como alternativa tenemos DNSCrypt pero también se acaba empleando un DNS de terceros. Por suerte tenemos otra opción, que es emplear TOR para resolver nombres. Al instalar TOR como servicio es muy sencillo configurar para resolver nombres, pero hay que tener en cuenta que este es muy lento en comparación a un servidor tradicional, pero para eso podemos usar dnsmasq que nos ayudara a cachear las peticiones. Esta vez no usaremos bind9 ya que da problemas para usar un servidor local y acaba haciendo llamadas a DNS externos (cosa que nunca queremos que pase).

Instalación y configuración

Para empezar instalamos TOR y dnsmasq:

Configuramos TOR para actuar como servidor DNS:

Al final del fichero agregamos las siguientes lineas:

Ahora configuramos dnsmasq:

Agregamos las lineas:

Ademas le debemos decir por donde escuchara, debemos agregar la 127.0.0.1 y la IP de la red local, para eso podemos usar este comando:

Debemos cambiar las “X” por la IP del server, mejor si se trata de una IP fija y siempre funcionara.

Con estas 2 sencillas cosas tenemos todo configurado, ahora simplemente (re)iniciamos los servicios y los agregamos al inicio:

Testando

Ya debería de funcionar, ahora podemos hacer unas cuantas pruebas para ver si dnsmasq realmente usa TOR, para ello vamos a usar dig para realizar las peticiones y tcpdump para ver si hay alguna fuga.

Ahora lanzamos en una terminal tcpdump y en otra usaremos dig:

Con dig podemos hacer un par de peticiones para ver que todo funciona correctamente:

Cuando hagamos una petición a nuestro servidor no deberíamos de ver trafico, pero al hacer una petición a un DNS externo si veremos mucho trafico, con esto nos aseguramos que efectivamente es TOR quien nos resuelve los nombres.

Para emplear este DNS por defecto tenemos varias opciones, como configurar el DHCP para que de este como primera opción o lo agregamos manualmente, podemos editar directamente el fichero “/etc/network/interfaces” y agregamos al final:

Cada uno debe cambiar por la propia, en mi caso queda así el fichero:

Bonus

Por suerte dnsmasq hace el uso del fichero “/etc/hosts” para resolver nombres. Hace poco ya hablamos de como bloquear la publicidad empleando este fichero, por lo tanto podemos combinar ambos para tener un potente bloqueador de publicidad y una mayor privacidad con la velocidad de dnsmasq.

Acerca de konqi

Extra Thicc

Visita también

Solución al error de actualizar Discord en ArchLinux, Manjaro, Antergos y derivados por culpa de firma PGP de libc++

Hoy vamos a ver como se soluciona el error de Discord a la hora de …

Deja una respuesta

¡Se el primero en comentar!

Notificarme las
avatar
wpDiscuz