Closed Abelardo-Hernandez-C closed 6 months ago
sube al repositorio el escenario completo con la configuración del dns para que pueda replicarlo yo en mi máquina.
Acabo de subir el sistema en la carpeta proyecto_final de mi rama, a excepción de DNSDIST que lo instalé en caliente y solo tengo el archivo de configuración
https://github.com/MUIT-RdDC-UAH-University/Lab_CDN-2023-24-Grupo-p3/tree/rama_abi
@diegoLopezP esta con ello y ahora os responderá. De todas manera un anticipo: estáis configurando el TLS con la sintáxis de BIND9 y tenéis que hacerlo con la de PowerDNS. El backend de BIN9 es solo para la gestión de zonas y registros, pero NO para la parte de TLS. Está en la documentación de PowerDNS y/o dnsdist
Hola Abelardo,
Para hacer funcionar DNS over TLS con powerDNS te hace falta dnsdist. Como configuración básica, para probar que funciona puedes hacer lo siguiente: En el contenedor del servidor DNS primario instalas dnsdist y lo configuras con estas dos directrices:
Aquí encontrarás más información:
De esta forma, las peticiones DNS over TLS que vayan al puerto 853 serán procesadas por DNSdist y redirigidas al puerto 53 del DNS primario, que devolverá la consulta a dnsdist y este, a su vez, al cliente.
Deja la configuración de PowerDNS en la que resuelve el dominio grupo3.com. Después, instala dnsdist y lo configuras.
Prueba y nos cuentas.
PD: Yo lo tengo funcionando con los datos que has proporcionado de vuestro repositorio.
Te adjunto la configuración del fichero dnsdist que he implementado, el resultado por el lado del cliente y el contenido de la carpeta dnsdist
Las líneas que puedes ver comentadas en dnsdist.conf son por pruebas que he realizado
Con las dos líneas que tienes en el fichero de configuración de dnsdist debería funcionar, pero hay que afinarlas.
Por si acaso, al inicio del fichero de configuración añade la siguiente directiva: setSecurityPollSuffix(""). Esto no debería afectar al funcionamiento de dnsdist, pero con esta directiva evitamos que dndist realice sondeos de seguridad de versiones de código.
Por supuesto, cuando arranques el DNS comprueba que tanto los servicios pdns como dnsdist están ejecutándose.
Cuando funcione, avisa en el hilo para poder cerrarlo.
Acabo de subir las modificaciones realizadas, pero sigo obteniendo el mismo problema al hacer kdig +tls grupo3.com, que es el siguiente: kdig +tls grupo3.com ;; WARNING: TLS, peer has closed the connection ;; WARNING: can't receive reply from 192.168.3.10@853(TCP) ;; ERROR: failed to query server 192.168.3.10@853(TCP) ;; WARNING: can't connect to 192.168.3.11@853(TCP) ;; ERROR: failed to query server 192.168.3.11@853(TCP) los certificados a los que hace mención el archivos dnsdist.conf están correctamente copiados a la carpeta correspondiente, sin embargo, el sistema no se levanta correctamente, no hay ningun error en los logs de systemctl (instalado en caliente)
Que no responda, no significa que no levante. Dentro del contenedor de powerdns, que ocurre si ejecutas netstat -an, los puertos 53 y 853 están abiertos en escucha (listen)?. Entiendo que el 53 si, pero que pasa con el 853. No es lo mismo que levante y no conteste a que ni siquiera levante.
Netstat -an me dice que el sistema está escuchando por 192.168.10.3:53 y por 0.0.0.0:853
Enviado desde Outlook para Androidhttps://aka.ms/AAb9ysg
From: Isaías Martínez Yelmo @.> Sent: Tuesday, May 21, 2024 3:36:05 PM To: MUIT-RdDC-UAH-University/Ejemplo-2023-2024 @.> Cc: Hernández Cortizo Abelardo @.>; Author @.> Subject: Re: [MUIT-RdDC-UAH-University/Ejemplo-2023-2024] Fallo al tratar de configurar el servicio DNS over TLS (Issue #3)
ATENCIÓN: Este correo electrónico se envió desde fuera de la UAH. No haga clic en enlaces ni abra archivos adjuntos a menos que reconozca al remitente y sepa que el contenido es seguro.
Que no responda, no significa que no levante. Dentro del contenedor de powerdns, que ocurre si ejecutas netstat -an, los puertos 53 y 853 están abiertos en escucha (listen)?. Entiendo que el 53 si, pero que pasa con el 853. No es lo mismo que levante y no conteste a que ni siquiera levante.
— Reply to this email directly, view it on GitHubhttps://github.com/MUIT-RdDC-UAH-University/Ejemplo-2023-2024/issues/3#issuecomment-2122655814, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3FFG6GX74QTEJJ4KHZOJWLZDNEULAVCNFSM6AAAAABH7OGKV2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRSGY2TKOBRGQ. You are receiving this because you authored the thread.Message ID: @.***>
Primero prueba que está funcionando el servicio DNS por el puerto habitual, haciendo una petición DNS normal (kdig grupo3.com). Eso debería funcionar y responder con la resolución del dominio. Si no funciona, es que hay algún problema en la configuración de la zona. Una vez que el servicio funciona en el puerto 53, levantas dnsdist y haces la petición con tls. Si todo va bien, debería responder correctamente con la configuración que tienes.
De todas formas, en el fichero pdns.conf, comenta la línea en la que expones el puerto 53, y cambia la directriz allow-axfr-ips por: allow-axfr-ips=0.0.0.0/0. Añade también la directriz query-local-address=0.0.0.0
Estos son los resultados que obtengo y las configuraciones realizadas:
Pdns.conf
launch=bind bind-config=/etc/powerdns/named.conf local-address=192.168.3.10
master=yes allow-axfr-ips=0.0.0.0/0 query-local-address=0.0.0.0
Named.conf
zone "grupo3.com" { type master; file "/etc/powerdns/zones/grupo3.com.zone"; allow-transfer { 192.168.3.11; }; };
Dnsdist.conf
setSecurityPollSuffix("")
-- DIRECCION IP Y PUERTO TLS addTLSLocal('0.0.0.0:853', "/etc/dnsdist/server.crt", "/etc/dnsdist/server.key")
-- ACLs PARA SOLICITUDES DE ACCESO addACL("192.168.3.0/24")
-- SERVIDOR DE BACKEND PARA RESPONDER LAS SOLICITUDES DNSoTLS newServer({address="192.168.3.10", name="DNS_primario", validateCertificates=false})
-- REGLAS DE BALANCEO DE CARGA addAction(AllRule(), PoolAction("DNS_primario"))
Respuesta del cliente:
kdig grupo3.com ;; ->>HEADER<<- opcode: QUERY; status: NOERROR; id: 30483 ;; Flags: qr aa rd; QUERY: 1; ANSWER: 2; AUTHORITY: 0; ADDITIONAL: 0
;; QUESTION SECTION: ;; grupo3.com. IN A
;; ANSWER SECTION: grupo3.com. 3600 IN A 192.168.3.12 grupo3.com. 3600 IN A 192.168.3.13
;; Received 60 B ;; Time 2024-05-21 18:05:04 CEST ;; From @.***(UDP) in 0.8 ms
kdig +tls grupo3.com ;; WARNING: TLS, peer has closed the connection ;; WARNING: can't receive reply from @.(TCP) ;; ERROR: failed to query server @.(TCP) ;; WARNING: can't connect to @.(TCP) ;; ERROR: failed to query server @.(TCP)
Enviado desde Outlook para Androidhttps://aka.ms/AAb9ysg
From: Diego @.> Sent: Tuesday, May 21, 2024 3:46:04 PM To: MUIT-RdDC-UAH-University/Ejemplo-2023-2024 @.> Cc: Hernández Cortizo Abelardo @.>; Author @.> Subject: Re: [MUIT-RdDC-UAH-University/Ejemplo-2023-2024] Fallo al tratar de configurar el servicio DNS over TLS (Issue #3)
ATENCIÓN: Este correo electrónico se envió desde fuera de la UAH. No haga clic en enlaces ni abra archivos adjuntos a menos que reconozca al remitente y sepa que el contenido es seguro.
Primero prueba que está funcionando el servicio DNS por el puerto habitual, haciendo una petición DNS normal (kdig grupo3.com). Eso debería funcionar y responder con la resolución del dominio. Si no funciona, es que hay algún problema en la configuración de la zona. Una vez que el servicio funciona en el puerto 53, levantas dnsdist y haces la petición con tls. Si todo va bien, debería responder correctamente con la configuración que tienes.
De todas formas, en el fichero pdns.conf, comenta la línea en la que expones el puerto 53, y cambia la directriz allow-axfr-ips por: allow-axfr-ips=0.0.0.0/0. Añade también la directriz query-local-address=0.0.0.0
— Reply to this email directly, view it on GitHubhttps://github.com/MUIT-RdDC-UAH-University/Ejemplo-2023-2024/issues/3#issuecomment-2122676285, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A3FFG6FIIWABFZWPKH747P3ZDNFZZAVCNFSM6AAAAABH7OGKV2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRSGY3TMMRYGU. You are receiving this because you authored the thread.Message ID: @.***>
En la configuración de dnsdist, quita la regla de ACL y de la de balanceo de carga. Además, utiliza los certificados cuyo fichero tiene extensión .pem, en lugar de las extensiones .crt y .key. Ambos certificados los tienes ya generados en la carpeta certificados. autocert.pem es el equivalente al .crt, y autokey.pem es el equivalente al .key
Lo más seguro es que sean los certificados, porque en la página de la configuración de dnsdist, aparecen los certificados con extensión .pem (https://dnsdist.org/guides/dns-over-tls.html)
Si el problema persiste, abrid la issue en vuestro propio repositorio
Buenos dias.
Este fin de semana se ha desprendido de implantar el servicio DNS sobre TLS, pero no ha conseguido que se haya hecho.
Información que puede util:
Los procedimientos que ha intentado son los siguientes:
named.conf.txt
pdns.conf.txt
dnsdist.conf.txt
Quedo a la espera de una posible solución