La replicación de Directorio Activo a través de Firewalls

El otro día, en el evento de de le Gira Technet que hicimos en el Centro de Innovación de Movilidad del Parque Tecnológico de Boecillo en Valladolid, un asistente pregunto tras la exposición de Chema Alonso sobre ISA Server 2004 acerca de si era posible controlar los puertos RPC que los controladores de dominio abren de forma dinámica (es decir, que no tienen un numero de puerto fijo predecible) para llevar a cabo la replicación del directorio.

Lo cierto es que mi respuesta fu tal vez demasiado lapidaria. La replicación esta pensada para entornos LAN bien conectados (dentro del mismo Site) o para entornos WAN en los que generalmente el tráfico esta bien controlado desde el punto de vista de la seguridad, pero que no puede ser considerado fiable o "bueno" desde el punto de vista de la conectividad (replicación inter-Site). En estos escenarios no existe típicamente necesidad alguna de tener un Firewall o bien estos implementan site-to-site VPNs mediante túneles L2TP, IPSec o PPTP (ver http://www.microsoft.com/technet/prodtechnol/isa/2004/plan/site_to_site_vpn_ee.mspx)

Por supuesto, existen excepciones. Una de ellas es necesidad de localizar un Controlador de Dominio en la rede perimetral o DMZ. Aunque esta es una práctica en desuso debido los problemas de seguridad que conlleva y que se puede evitar gracias a las crecientes capacidades de publicación y filtrado de los firewalls que actúan a nivel de Aplicación (nivel 7) como ISA Server 2004 (ver http://www.microsoft.com/isaserver/techinfo/guidance/2004/publishing.mspx), existen un par de soluciones al respecto, además de la obvia de abrir el Firewall de par en par para los puertos por encima del 1024.

La primera consiste en fijar los puertos que los Controladores de Dominio usarán para la replicación del directorio y la replicación FRS tal y como está explicado en los siguientes artículos de la Knowledge Base:

224196 Restricting Active Directory replication traffic to a specific port
http://support.microsoft.com/?id=224196

319553 How to restrict FRS replication traffic to a specific static port
http://support.microsoft.com/?id=319553

De este modo, solo tendremos que abrir en los Firewalls los puertos que hayamos especificado, lo cual es lógicamente mucho más conveniente.

La segunda opción consiste en encapsular todo el tráfico RPC asociado a la replicación en túneles IPSec, de manera que solamente necesitaremos abrir en el Firewall los puertos que permiten este tipo de tráfico (http://support.microsoft.com/?id=233256)

Tenéis un estupendo resumen de todo esto, con un paso a paso y las tablas con los puertos TCP y UDP exactos que hay que abrir en los Firewalls para cada caso, en el artículo Active Directory Replication over Firewalls, de Steve Riley, que podéis encontrar en la Web de Microsoft TechNet

Y entre todo esto, nosotros preparando las maletas que nos vamos a Canarias. El Martes 4 de Octubre estaremos en Tenerife y el Jueves 6 en Las Palmas. Lo más seguro es que el Miércoles nos dejemos caer por aquí a ver si nos llevan unos metros por debajo de la superficie del mar.