DNS. Novedades en RouterOS 6.47

Son varias las mejoras que RouterOS incorpora sobre el servicio DNS en la versión 6.47 (actualmente, en modo beta).

Estas mejoras sobre el servicio DNS que MikroTik ha incorporado son: dns

  • Cliente DNS sobre HTTPS (DoH).
  • Envío de consultas DNS a diferentes servidores de nombre.
  • Permite crear varias tipos de entrada DNS para un mismo nombre.

Veamos para qué puede server cada una de estas nuevas funcionalidades.

Cliente DNS sobre HTTPS (DoH)

De forma histórica, el intercambio de información entre servidores de nombres y los clientes que los utilizan, se ha realizado mediante un método basado en consultas y respuestas sobre el protocolo Domain Name Server, en el cual, se transmite la información en texto plano.

Esta situación supone una disminución en la privacidad de las comunicaciones, pues cualquier persona o entidad que pueda capturar el tráfico de esas comunicaciones, podrá comprobar qué nombres de dominio son consultados.

A continuación, mostramos en una imagen una consulta DNS al dominio de Codisa, capturada por la herramienta Sniffer de MikroTik y abierta desde Wireshark:

dns

Para evitar esta brecha se han buscado diferentes soluciones, que pasan por utilizar métodos de cifrado en las consultas y respuestas DNS. Una de estas soluciones utiliza el protocolo HTTPS, es decir, utiliza el puerto TCP443 y cifrado TLS, la cual ha sido implementada por MikroTik en la versión 6.47 de RouterOS.

Concretamente, MikroTik ha implementado un cliente DoH que ya se puede probar en las betas de la versión 6.47, el cual puede ser muy útil para para ser utilizado por un caché DNS local, mediante el cual, toda comunicación DNS entre la red local y el exterior, quedará cifrada entre ésta y el servidor DoH remoto.

Una ventaja de DoH, además del cifrado de las comunicaciones, es el puerto que utiliza, ampliamente utilizado en la navegación https, motivo por el cual, difícilmente será bloqueado por ninguna red, firewall o proveedor, al igual que ocurre con las VPN SSL, tipo SSTP.

Para más información sobre el funcionamiento de las consultas DNS sobre HTTPS, puede consultarse directamente la RFC8484 del IETF.

Y en cuanto a como configurarlo en MikroTik, lo veremos a continuación.

¿Cómo configurar DoH en MikroTik RouterOS?

El cliente DoH en MikroTik ya es accesible a nivel gráfico desde Winbox, por cual, su configuración será tremendamente sencilla. Los pasos a seguir son:

  1. Identificación del servidor DoH, la url de éste para realizar las queries o consultas, y cuando esté disponible, la clave pública del certificado utilizado para el cifrado (cuando se encuentre disponible).
  2. Configuración del cliente desde el menú IP DNS de RouterOS.
  3. Redirigir todas las consultas DNS de la red LAN hacia el equipo RouterOS.

Ejemplo de cliente DoH para el servicio de Google:

DoH MikroTik Google

Controversia:

Como nada es perfecto, este tipo de soluciones tienen ventajas e inconvenientes, los cuales hacen dudar sobre los beneficios de su uso, y de ello se hicieron eco el año pasado en Redes Zone.

Envío de consultas DNS a diferentes servidores de nombre

Esta funcionalidad, que aún no es accesible desde Winbox, requiere de configuración vía CLI.

El uso que puede tener esta configuración puede ser variado, pero a nosotros se nos ocurre, por ejemplo, un entorno LAN en el que se desea que cualquier petición relacionada con un dominio sea atendido por un servidor local, mientras que el resto, por servidores externos.

Y sí, puede ser realmente útil.

A continuación se muestra un pequeño ejemplo, mediante el cual, toda consulta DNS dirigida a un subdominio de codisats.local, sea atendida por el servidor local de la organización (el direccionamiento IP es ficticio).

ip dns static add regexp=».*\\.codisats\\.local» forward-to=10.0.1.53

Creación de distintos tipos de entrada DNS para un mismo nombre

Y por último, hablaremos de la tercera funcionalidad indicada al principio de este artículo. En las próximas versiones, será posible establecer diferentes tipos de entradas DNS en el equipo MikroTik.

Cuando hablamos de tipos de entradas, no referimos a (activas actualmente): A, AAAA, CNAME, FWD, MX, NS, NXDOMAIN, SRV, TXT.

Al igual que el punto anterior, esta configuración solo es posible en la versión beta actual, vía CLI. Veamos un ejemplo:

/ip dns static add name=codisats.es type=A address=10.0.1.100
/ip dns static add name=codisats.es type=MX address=10.0.1.101 mx-preference=20
/ip dns static add name=codisats.es type=MX address=10.0.1.102 mx-preference=30

De esta manera, el equipo MikroTik cada vez más se parece a un servidor DNS, con capacidad para albergar de forma autoritativa un dominio DNS.

Recordatorio sobre seguridad

Aprovechamos estas últimas líneas para hacer un recordatorio sobre la importancia de asegurar debidamente cada uno de los servicios expuestos a Internet por un equipo de comunicaciones, y en particular, por el tema que tratamos, en los equipos RouterOS.

El servicio de resolución de nombres es utilizado para realizar diversos ataques de denegación de servicio, por lo que es una necesidad el aplicar las reglas adecuadas de filtrado firewall, que limiten el acceso al servidor DNS. Es un tema ampliamente tratado en diversos foros, así como en varios de los cursos de formación oficial de MikroTik.