Configurar DNS-over-TLS and DNS-over-HTTPS con un DNS Server cualquiera

Configurar DNS-over-TLS and DNS-over-HTTPS con un DNS Server cualquiera
by Janeth Kent Date: 27-12-2018 dns tls htpps server

Los nuevos protocolos DNS-over-TLS (DoT) y DNS-over-HTTPS (DoH) están disponibles para permitir la privacidad y seguridad del usuario final, dado que la mayoría de los clientes DNS utilizan protocolos UDP o TCP que son propensos a la escucha clandestina, vulnerables a los ataques Man-in-the-Middle (MitM) y que son frecuentemente abusados por los ISP en muchos países con censura de Internet.

Los proveedores de DNS públicos como Cloudflare, ya han desplegado estos protocolos y los navegadores web como Mozilla Firefox han incorporado soporte DoH. Sin embargo, la mayoría de los sistemas operativos y aplicaciones no los soportan, pero los usuarios finales pueden seguir utilizando estos protocolos en su ordenador

Ambos protocolos son estándares IETF y son igualmente seguros teniendo en cuenta el hecho de que el propio HTTPS funciona sobre TLS. Sin embargo, ambos protocolos tienen ideas ligeramente diferentes y hay muchos argumentos entre los ingenieros sobre la razón por la que el protocolo DoH existe en primer lugar cuando existe un protocolo DoT superior que implementa las directrices RFC 7766. El argumento de tener DoH es más político ya que las peticiones DNS sobre DoH se parecen al tráfico HTTPS normal sobre el puerto 443 y por lo tanto son difíciles de detener a diferencia de DoT corriendo en el puerto 853. Esto hace que el protocolo DoH sea deseable para los usuarios de países con censura en Internet.

En este post exploraremos la configuración de ambos protocolos para cualquier servidor DNS que ya esté ejecutando en su red. Ambos servicios requieren certificados SSL que pueden obtenerse gratuitamente utilizando la autoridad de certificación Let's Encrypt, en la que confían los principales navegadores web. Puede configurar Certbot para la renovación automática del certificado Let's Encrypt.

DNS-over-TLS (DoT)

El estándar DNS-over-TLS se especifica en el RFC 7858 que es muy sencillo de implementar. Esencialmente, el estándar especifica usar el soporte existente del protocolo DNS-over-TCP, que la mayoría de los servidores DNS ya tienen y añadirle TLS. El soporte DoT puede estar disponible como una característica adicional en su software de servidor DNS o puede utilizar el servidor web de Nginx para habilitarlo.

Nginx soporta la terminación SSL para TCP upstream que usaré para habilitar a DoT a usar con Technitium DNS Server. Estoy usando Ubuntu Server 18.04 LTS para esta configuración pero, debería ser capaz de hacer una configuración similar en cualquier distribución de Linux.

Primero instale el servidor web nginx:

sudo apt-get -y install nginx

Ahora todo lo que necesita para configurar DoT es copiar el siguiente bloque de configuración de stream en su archivo /etc/nginx/nginx.conf y guardar el certificado y los archivos de claves en la ruta dada como en la configuración. No olvide actualizar las direcciones IP del servidor DNS de entrada a sus servidores DNS existentes.

stream {
    upstream dns-servers {
        server    10.10.1.5:53;
        server    10.10.1.6:53;
    }

    server {
        listen 853 ssl;
        proxy_pass dns-servers;

        ssl_certificate            /etc/nginx/ssl/dot-server.crt;
        ssl_certificate_key        /etc/nginx/ssl/dot-server.key;

        ssl_protocols        TLSv1.2;
        ssl_ciphers          HIGH:!aNULL:!MD5;
        
        ssl_handshake_timeout    10s;
        ssl_session_cache        shared:SSL:20m;
        ssl_session_timeout      4h;
    }
}

Una vez hecho esto, recargue el servidor web de nginx para terminar la configuración:

sudo service nginx reload

DNS-over-HTTPS (DoH)

El estándar DNS-over-HTTPS está especificado en el RFC 8484 y es un poco diferente de implementar ya que utiliza el protocolo HTTP. Las consultas DNS se envían en formato de cable como un método HTTP POST o como un parámetro HTTP GET con codificación base64. El uso del método GET permite el almacenamiento en caché de la respuesta, lo que puede no ser deseable si se tiene en cuenta que el protocolo DNS controla la caducidad utilizando valores TTL que pueden ser anulados por un servidor de caché basado en HTTP.

 

 
by Janeth Kent Date: 27-12-2018 dns tls htpps server visitas : 8966  
 
Janeth Kent

Janeth Kent

Licenciada en Bellas Artes y programadora por pasión. Cuando tengo un rato retoco fotos, edito vídeos y diseño cosas. El resto del tiempo escribo en MA-NO WEB DESIGN AND DEVELOPMENT.

 
 
 

Artículos relacionados

Cómo cambiar o configurar los DNS en Windows 10

Que son las DNS? Cuando tienes acceso a Internet para el hogar o la empresa, el proveedor de servicios de Internet (ISP) también proporciona la configuración de red necesaria, incluidas las…

Como configurar de forma correcta SPF y DKIM en DNS para que los mails de tu servidor no acaben en SPAM

Cómo establecer el Marco de Políticas de Remitentes (SPF) Sobre el registro de SPF Un registro SPF es un tipo de registro de Servicio de Nombres de Dominio (DNS) que identifica qué…

Como funciona el nuevo servicio DNS 1.1.1.1 de Cloudflare

El proveedor de DNS gratuito Cloudflare ha lanzado recientemente una nueva aplicación para iOS y Android, "1.1.1.1.1", que hace increíblemente fácil enrutar todas las solicitudes de DNS de su dispositivo…

Que son y como funcionan los DNS

La mayoría de nosotros estamos muy familiarizados con el DNS osea el Domain Name System. El DNS puede ser pensado como un registro de asistencia de varios sitios web presentes…