GNU/Linux >> Tutoriales Linux >  >> Linux

Prácticas recomendadas de DNS para seguridad y rendimiento

El Sistema de nombres de dominio (DNS) hace posible todas las comunicaciones en red. El DNS puede parecer una fuerza o entidad invisible, hasta que algo sale mal, entonces es evidente:si el servicio DNS falla, entonces nada funciona.

Este artículo describirá las mejores prácticas y las medidas de seguridad más importantes para mantener su infraestructura de DNS saludable. Asegúrese de tener en cuenta los puntos enumerados a continuación para crear un DNS seguro y sólido.

Prácticas recomendadas de rendimiento de DNS

Garantizar redundancia DNS y alta disponibilidad

Dado que el DNS es el pilar de las aplicaciones de red, la infraestructura de DNS debe tener una alta disponibilidad. Para lograr la redundancia esencial, debe tener al menos los servidores DNS primario y secundario en su organización.

Para mantener los servicios críticos para el negocio en funcionamiento, tener al menos dos servidores DNS internos es un deber. Todos los servicios de directorio activo, uso compartido de archivos y correo electrónico se basan en el funcionamiento adecuado del DNS. Sin servidores DNS internos sanos y funcionales, los dispositivos internos no pueden comunicarse.

Si un servidor DNS tiene un problema, el otro se hace cargo de inmediato. Los administradores configuran las máquinas para usar el DNS secundario automáticamente si el principal no responde. Una IP de un servidor DNS interno puede ser cualquier dirección dentro de un rango de IP de red privada.

Al hacer que los servidores DNS sean redundantes, puede lograr una alta disponibilidad de la infraestructura DNS. La replicación continua de los servidores primarios a los secundarios mantendrá sus registros DNS sincronizados y a salvo de fallas. Puede estar seguro de que nunca llegará un momento en que no haya servicios disponibles para un usuario final.

Ocultar servidores DNS e información DNS

No todos los servidores DNS y cada pieza de información deben estar disponibles para todos los usuarios.

Primero, haga accesibles solo los servidores y los datos necesarios para las personas que utilizan estos servidores. Esto es especialmente importante si sus nombres de dominio deben ser visibles para el público.

En segundo lugar, oculte su servidor DNS principal . Los servidores principales no deben ser visible para los usuarios externos. Los registros de estos servidores no deben estar disponibles en ninguna base de datos de servidores de nombres de acceso público. Solo los servidores DNS secundarios deben atender las solicitudes de los usuarios finales.

Si se puede acceder a un servidor DNS desde fuera de su red, ese servidor debe ser un servidor DNS autorizado solamente. No es necesario que los usuarios externos consulten sus servidores DNS recursivos. Responder solo a consultas iterativas para las zonas respectivas para las que un servidor tiene autoridad es una configuración de alto rendimiento.

Finalmente, solo los administradores del sistema y el personal de TI deben tener acceso a los servidores principales dentro de su organización. Si deja los servidores DNS primarios visibles para todos los usuarios internos, eso puede convertirse en un problema de seguridad importante. Como regla general, oculte los servidores DNS y los datos de los usuarios que no necesitan tener acceso a ellos.

¿Debo usar un servidor DNS externo o interno?

La respuesta a esta pregunta depende de la configuración interna.

Para permitir que los dispositivos de un dominio se comuniquen entre sí, debe dirigirlos a un servidor DNS interno. Los servidores DNS externos no pueden resolver los nombres de host de los dispositivos internos.

Por ejemplo, cuando una computadora DESKTOP1 envía una consulta de DNS para office-printer o un servidor hr- 1, solo un DNS interno puede proporcionar un registro de recursos. Si configura un dispositivo para usar un DNS externo, como el 8.8.8.8 de Google , no podrá utilizar los recursos internos.

En entornos internos, debe configurar tanto el DNS primario como el secundario en un servidor de nombres interno . Incluso cuando falla el servidor DNS principal, no habrá problemas de conectividad. El servidor DNS secundario contiene todos los registros y actúa como respaldo. En caso de que surja un problema, este servidor responde a todas las consultas hasta que el servidor principal vuelva a funcionar.

Usar el servidor DNS local o más cercano

Las grandes organizaciones suelen tener oficinas en todo el mundo. Si la infraestructura lo permite, debe configurar un servidor DNS local en cada oficina.

La razón es que un servidor local reduce los tiempos de respuesta para las solicitudes de DNS. Cuando una consulta viaja a través de la WAN a un servidor de nombres remoto, el usuario obtiene tiempos de carga más prolongados.

Con una gran cantidad de clientes, la cantidad de consultas de DNS crece. Un conjunto centralizado de servidores DNS puede manejar todas las solicitudes, pero con más latencia. Al apuntar las máquinas de los usuarios a un servidor de nombres local o más cercano, los tiempos de respuesta se reducen al mínimo.

En este caso, la latencia no supera los 50ms. Además, el número suele estar muy por debajo de ese valor. El uso del servidor DNS más cercano mejora los tiempos de carga para todas las máquinas. De esta forma, también se quita la carga del servidor remoto en la sede y mejora su rendimiento. La recomendación de tener al menos dos servidores DNS sigue vigente aquí también.

Prácticas recomendadas de seguridad de DNS

Los servidores DNS son un objetivo frecuente de los ciberataques. Proteger la infraestructura de DNS es un paso crucial para evitar infracciones en su organización. Para evitar un impacto importante en la configuración de su DNS, asegúrese de emplear las medidas de seguridad que se describen a continuación.

Habilitar el registro de DNS

El registro de DNS es la forma más eficiente de monitorear la actividad de DNS. Los registros le permiten saber si alguien se está entrometiendo con sus servidores DNS. Además de la actividad del cliente, los registros de depuración le informan cuando hay problemas con las consultas o actualizaciones de DNS.

Los registros de DNS también muestran los rastros de envenenamiento de caché. En este caso, un atacante cambia los datos almacenados en el caché y desvía a los clientes. Por ejemplo, una dirección IP de www.youtube.com podría cambiarse a una dirección IP de un sitio malicioso. Cuando un cliente envía una consulta a DNS para youtube.com, el servidor ahora devuelve la IP incorrecta. Luego, los usuarios visitan sitios web que no querían visitar y se convierten en el objetivo de los piratas informáticos.

Aunque el registro de depuración de DNS eleva la seguridad a un nivel superior, algunos administradores de sistemas deciden desactivarlo. La razón principal es aumentar el rendimiento. Supervisar la actividad de la red puede ayudarlo a detectar algunos ataques, como DDoS, pero no el envenenamiento de caché. Por lo tanto, recomendamos habilitar los registros de depuración de DNS .

Bloquear caché de DNS

Cada vez que hay una consulta de un cliente, DNS encuentra la información y la almacena en el caché para uso futuro. Este proceso permite que el servidor responda más rápido a las mismas consultas. Los atacantes pueden explotar esta función alterando la información almacenada.

Un paso más allá de habilitar los registros de depuración de DNS es bloquear la memoria caché de DNS . Esta característica determina cuándo se pueden cambiar los datos almacenados en caché. El servidor mantiene la información de búsqueda durante el tiempo definido por el TTL (tiempo de vida). Si el bloqueo de caché está deshabilitado, la información se puede sobrescribir antes de que caduque el TTL. Esto deja espacio para ataques de envenenamiento de caché.

Dependiendo del sistema operativo, el bloqueo de caché puede estar habilitado de forma predeterminada. La escala de bloqueo de caché sube al 100 por ciento. Cuando el valor se establece en 70, no es posible sobrescribir los datos para el 70 % del TTL. Al definir el bloqueo de caché en 100, se bloquea el cambio de la información almacenada en caché hasta que expire el TTL.

Filtrar solicitudes de DNS para bloquear dominios maliciosos

El filtrado de DNS es una forma efectiva de evitar que los usuarios accedan a un sitio web o a un dominio. La razón principal para bloquear la resolución de nombres para un dominio es si se sabe que ese dominio es malicioso. Cuando un cliente envía una consulta de un sitio web bloqueado, un servidor DNS detiene cualquier comunicación entre ellos.

El filtrado de DNS masivamente reduce las posibilidades de virus y malware llegar a su red. Cuando un cliente no puede acceder a una página maliciosa, la cantidad de amenazas que pueden rastrearse dentro de su infraestructura es mínima. De esta manera, su personal de TI no tiene que trabajar día y noche para limpiar los virus.

Además de la seguridad, las organizaciones pueden querer bloquear un dominio debido a una política comercial o por razones de productividad. La lista de dominios bloqueados puede incluir redes sociales, juegos de apuestas, pornografía, páginas de transmisión de video o cualquier otro sitio web. El DNS puede filtrar las solicitudes de un usuario, un grupo o bloquear el acceso para todos los usuarios.

Las modernas soluciones de firewall y seguridad de software incluyen el filtrado de DNS como estándar. Algunos de estos dispositivos proporcionan listas actualizadas periódicamente de dominios defectuosos. Al emplear una solución de software lista para usar, puede automatizar el filtrado de DNS y evitar agregar nuevas entradas manualmente.

Valide la integridad de los datos DNS con DNSSEC

Las extensiones de seguridad del sistema de nombres de dominio (DNSSEC) garantizan que los clientes reciban respuestas válidas a sus consultas. La integridad de los datos se logra mediante la firma digital DNSSEC de los datos DNS proporcionados a los servidores de nombres. Cuando un usuario final envía una consulta, un servidor DNS proporciona una firma digital con la respuesta. Por lo tanto, los clientes saben que recibieron información válida para la solicitud que enviaron.

Esta capa adicional de seguridad ayuda a combatir los ataques del protocolo DNS. Dado que DNSSEC ofrece integridad de datos y autoridad de origen, los ataques de suplantación de DNS y el envenenamiento de caché se evitan con éxito . Los clientes entonces están seguros de que están visitando las páginas que pretendían visitar.

Configurar listas de control de acceso

Las listas de control de acceso (ACL) son otra forma de proteger los servidores DNS contra el acceso no autorizado. y ataques de suplantación de identidad . Solo los administradores de TI y los administradores del sistema deben tener acceso a su DNS principal. La configuración de ACL para permitir conexiones entrantes a un servidor de nombres desde hosts específicos garantiza que solo el personal previsto pueda comunicarse con sus servidores.

Además, las ACL deben definir qué servidores pueden realizar transferencias de zona. Los atacantes pueden intentar determinar la configuración de su zona enviando solicitudes de transferencia de zona a través de servidores DNS secundarios. Si bloquea todas las solicitudes de transferencia de zona en servidores secundarios, un atacante no puede obtener información de la zona. Esta configuración evita que terceros obtengan información sobre cómo ha organizado la red interna.


Linux
  1. Prácticas recomendadas de seguridad de OpenSSH

  2. ¿Cómo habilitar el registro del servidor BIND DNS para monitorear consultas y solucionar problemas?

  3. Mejores prácticas de seguridad del servidor Linux

  4. Mejores prácticas de seguridad del servidor de Windows

  5. Seguridad NFS básica:NFS, no_root_squash y SUID

Los 10 mejores cachés web de Linux para un mejor rendimiento

Fail2ban en Linux:una herramienta de utilidad y seguridad de Internet para la administración del servidor

Configuración del servidor Ubuntu:mejores prácticas de seguridad

Instale PostgreSQL en un servidor Ubuntu para configuraciones de seguridad

Cómo instalar y configurar el servidor DNS en Linux

Los 8 mejores teléfonos Linux seguros para privacidad y seguridad