¿Hay alguna forma de deshabilitar las consultas recursivas del DNS alojado en el servidor y al mismo tiempo permitir que funcionen las consultas DNS que se originan en el servidor?
No con el servidor DNS de Microsoft, no lo hay.
Con el servidor DNS de ISC, BIND, uno podría organizar cosas con vistas. El servidor DNS de Microsoft no tiene dicho mecanismo. Entonces, para cualquier instancia dada del servidor DNS de Microsoft, uno tiene que elegir si es un servidor DNS de contenido público o un servidor DNS proxy local . No puede organizar cosas y pretender ser diferentes tipos de servidores para diferentes clientes DNS.
El servicio / herramienta de prueba de seguridad es bastante correcto. Es una buena práctica no proporcionar el servicio de proxy, ningún tipo de servicio de proxy: ya sea el servicio de proxy HTTP, el servicio de proxy DNS o el servicio de envío SMTP, al resto de Internet fuera del propio sitio. Gracias debe tener servidores separados : un servidor DNS contenido de la publicación de sus datos DNS público, acerca de sus nombres de dominio que se han registrado, a todo el mundo en Internet; y un servidor DNS proxy local, que realiza el trabajo de resolución de consultas en nombre de las computadoras de su LAN / organización, al que solo pueden acceder las máquinas de su organización / LAN. Con el servidor DNS de Microsoft, esto no es particularmente fácil.
Sería especialmente difícil si su máquina fuera también un controlador de dominio. Usted declara que esta máquina es directamente accesible desde toda Internet. Si dicha máquina es un controlador de dominio, entonces debería repensar su organización de red ahora . Expondrías una gran cantidad de servicios internos al público, no solo el servicio de proxy DNS. Así que trabajemos bajo la presunción de que este no es un controlador de dominio.
Dado que no es un controlador de dominio, y es simplemente un servidor miembro , no tiene el requisito de que el cliente DNS en la máquina use el servidor DNS de la máquina (o, inicialmente, el servidor DNS de otro controlador de dominio) para proxy Servicio DNS, ese es el caso de los controladores de dominio. Si lo hubiera hecho, no podría desactivar el servicio de proxy DNS en el servidor DNS de la máquina. Afortunadamente, no es un controlador de dominio, y su cliente DNS puede usar alguna otra máquina para el servicio DNS proxy, no por sí mismo.
Sin embargo, el cliente DNS en la máquina del servidor miembro todavía tiene que usar un servidor DNS proxy interno . No puede simplemente apuntarlo a un servidor DNS externo como los proporcionados por su ISP, Google o cualquier otra parte que no conozca todos los datos DNS que Active Directory está utilizando en su LAN . Sin embargo, puede apuntar el cliente DNS de la máquina al servidor DNS en uno o más de sus controladores de dominio. Esto es bastante simple y, después de todo, es lo que está haciendo en todas sus estaciones de trabajo en su LAN. El cliente DNS en su servidor miembro simplemente debe configurarse como lo están los clientes DNS en todas sus estaciones de trabajo .
Dado que el cliente DNS de su máquina no está utilizando el servidor DNS que se ejecuta en la máquina para el servicio DNS proxy, simplemente configura el servidor DNS de Microsoft para que no proporcione el servicio DNS proxy de ninguna forma a nadie.
Otras lecturas
Como dijo Evan en su respuesta, sus aplicaciones deben usar el componente de cliente DNS en el servidor, que es totalmente independiente del componente del servidor DNS. El componente del servidor DNS se puede configurar para que no realice recursividad, lo que le permite responder consultas enviadas solo para las zonas DNS para las que tiene autoridad.
Las aplicaciones pueden usar los servidores DNS configurados en las propiedades TCP / IP de la NIC relevante, que se puede configurar para usar cualquier servidor DNS que realice recursividad (como los servidores DNS de Google). Los servidores DNS configurados en las propiedades TCP / IP de la NIC relevante no necesitan apuntar al servidor DNS que se ejecuta en ese mismo servidor.
fuente
Recientemente tuve el mismo problema y nuestro servidor DNS estaba siendo utilizado para ataques de amplificación. Pero necesito mantener la recursividad en nuestros otros servidores internos.
Si tiene un enrutador Cisco, aquí hay una posible solución. Moví nuestro DNS externo a un enrutador Cisco 7200VXR y lo configuré para responder solo a zonas DNS específicas. Consultará los servidores DNS internos para que no tenga que ingresar todo en dos lugares.
Aquí hay un fragmento de la configuración de Cisco que utilicé:
Además, no olvide permitir que los paquetes DNS ingresen al enrutador con una lista de acceso, como:
fuente