Active Directory: implementar un sistema de niveles (tiering)

Contenido

En este tutorial, os explicaré cómo configurar un sistema de niveles (tiering) en un entorno Active Directory , y más concretamente, cómo configurar las políticas de grupo (GPO).

Este tutorial no es una guía completa para la configuración del «tiering», pero te explica los GPO básicos que debes configurar.

La implantación de un modelo de tres partes es «compleja» y requiere mucho trabajo y adaptación.

¿Qué es el «tiering»?

Antes de entrar en la parte técnica, voy a haceros un pequeño repaso sobre el modelo de tres capas, también conocido como «tiering». En los últimos años, el número de ciberataques ha aumentado considerablemente y la seguridad de los entornos informáticos se ha convertido en un reto fundamental, especialmente en el caso de los entornos de «Active Directory». Para reforzar los entornos de Active Directory, el modelo de tres niveles (tiering) se ha convertido en una referencia.

La idea que subyace a este modelo es dividir el entorno Active Directory en tres niveles de sensibilidad y confianza.

  • Nivel 0: es el más crítico, en el que se incluyen los controladores de dominio y la PKI
  • Nivel 1: que también es fundamental, ya que albergará todos los servidores, como los de archivos, los de aplicaciones, los de bases de datos…
  • Nivel 2: albergará el resto de los equipos, como ordenadores, servidores de escritorio remoto, teléfonos, impresoras…

Algunos ejemplos:

Una vez identificados los elementos que formarán parte de cada nivel, también hay que gestionar los accesos y los flujos; es a partir de ese momento cuando la implementación de la estructura por niveles se vuelve más compleja, ya que las cuentas utilizadas en cada nivel no deben utilizarse en otro nivel, salvo, de forma excepcional, desde un nivel superior a uno inferior. Asimismo, hay que prever máquinas de administración para cada nivel; no se va a administrar el nivel 0 desde una máquina que se encuentre en el nivel 2.

A continuación se muestra una infografía con los posibles flujos:

La implantación de los sistemas de administración implica el uso de varios bastiones y de PAW (estaciones de trabajo de acceso privilegiado).

Por último, también conviene implementar mecanismos de protección como la autenticación de dos factores (MFA), el uso del modo «Restricted Admin» para las conexiones RDP y el uso del grupo «Protected Users»…

Como habréis comprendido, el modelo de tiering es complejo de implementar y, al igual que todas las soluciones complejas, conviene proceder por etapas.

Antes de continuar, os invito a leer la guía de la ANSSI: Recomendaciones para la administración segura de los sistemas de información basados en AD

¿Qué vamos a ver en este tutorial

Como podéis imaginar, en este tutorial, no podemos ver el proceso completo de implementación de una solución de tres niveles, ya que este variará en función de cada entorno; simplemente os mostraré unas políticas de grupo que os permitirán establecer la separación entre el nivel 0 y el nivel 1.

Organización de laActive Directory

Antes de empezar a elaborar las estrategias de grupo, conviene establecer una organización enActive Directory que facilite la puesta en marcha del sistema de niveles.

Empecé creando una unidad organizativa (OU) «Admins» con las subunidades organizativas T0 y T1, que contendrá las cuentas de administrador; como se puede ver en la captura de pantalla, he creado una cuenta llamada «romain.t1», que se utilizará para administrar los servidores de Nivel 1; en este momento, el usuario solo es miembro del grupo «Usuarios del dominio».

A continuación, creé una unidad organizativa (OU) de servidores con las subunidades organizativas T0 y T1, que albergará los servidores en función de su tercia; como se puede ver, el servidor LSRVGEN1 se encuentra en la OU T1.

Los controladores de dominio no se trasladan a la unidad organizativa T0; deben permanecer en la unidad organizativa «Controladores de dominio». En la unidad organizativa T0 se colocarán, por ejemplo, los servidores PKI.

Para organizar los distintos grupos, que permitirán gestionar los derechos de administrador en los servidores, también he creado subgrupos T0 y T1 dentro de una unidad organizativa (OU) denominada «Tiers», que a su vez se encuentra dentro de una OU de grupos. Además, en la captura de pantalla se puede ver que existe un grupo llamado GL-T1-ADM_LSRVGEN1; este grupo permitirá definir los administradores del servidor LSRVGEN1. Una vez creado el grupo, he añadido al usuario romain.t1 al grupo.

Ya lo veremos después de la reunión para decidir el nombre del grupo.

GPO 1: Automatizar los administradores de nivel 1

Para empezar, vamos a crear una política de grupo que nos permitirá añadir automáticamente un grupo, Active Directory, al grupo de administradores locales del servidor en la unidad organizativa T1.

Para «automatizar» este proceso, lo primero que hay que hacer es colocar todos los servidores de nivel 1 en la unidad organizativa (OU) correcta; una vez hecho esto, hay que elegir una convención de nomenclatura para el grupo que se va a añadir al grupo de Administradores locales de los distintos servidores.

Por mi parte, he elegido GL-T1-ADM_NomDuServeur, lo que se puede traducir como GL-T1-ADM_%ComputerName%; el uso de la variable de entorno de Windows %ComputerName% permitirá esta «automatización».

Desde un controlador de dominio, en la consola «Administración de políticas de grupo», haz clic con el botón derecho del ratón en «Objeto de política de grupo» y, a continuación, selecciona «Nuevo1 ».

Asigna el nombre «1 » al objeto de política de grupo y haz clic en el botón «Aceptar» (2 ).

En la lista, haz clic con el botón derecho del ratón sobre el GPO que acabas de crear y selecciona «Modificar» (1 ).

Ve a la siguiente ruta: Configuración del ordenador / Preferencias / Ajustes del Panel de control / Usuarios y grupos locales.

En el área central, haz clic con el botón derecho del ratón, selecciona «Nuevo»1 y haz clic en «Grupo local2 ».

Acción: selecciona «Actualizar» (1 ), «Nombre del grupo», selecciona «Administrador (integrado)» (2 ) y, a continuación, haz clic en el botón «Añadir» (3 ).

En el campo «Nombre», introduce la nomenclatura 1 que se utilizará para la gestión de grupos; en mi caso: GL-T1-ADM_%ComputerName%. A continuación, selecciona la acción «Añadir a este grupo» 2 y haz clic en «Aceptar» 3 .

Una vez añadido el grupo, haz clic en los botones «Aplicar» 1 y «Aceptar» 2 .

Ya tenemos lista nuestra estrategia de grupo; puedes cerrar el editor.

Ahora vamos a vincular nuestra política de grupo a la unidad organizativa (OU); para ello, haz clic con el botón derecho del ratón en la OU T1 y selecciona «Vincular un objeto de política de grupo existente» 1 .

Selecciona el objeto «1 » de la política de grupo que acabas de configurar y haz clic en «Aceptar» 2 .

La GPO está vinculada a la unidad organizativa y se va a aplicar al servidor.

Después de reiniciar mi servidor LSRVGEN1 para aplicar «rápidamente» la política de grupo (GPO), voy a iniciar sesión con mi cuenta en T1.

No pasa nada, he podido iniciar sesión en él y voy a comprobar en la gestión del ordenador si mi GPO se ha aplicado correctamente; si no fuera así, no habría podido iniciar sesión en él.

Como se puede ver, el grupo se ha añadido al grupo «Administradores» del ordenador local.

Con este primer GPO, hemos visto cómo gestionar los derechos de los administradores de nivel 1 sobre el servidor; sin embargo, en este momento, los miembros de los grupos y los administradores del dominio pueden conectarse al servidor.

GPO 2: Permitir únicamente a los administradores de nivel 1 que se conecten al nivel 1

La segunda parte de este tutorial consistirá en bloquear el inicio de sesión de las cuentas de nivel 0, que suelen ser miembros del grupo «Admins» del dominio.

Sin salir de la consola «Administración de políticas de grupo», haz clic con el botón derecho del ratón en «Objetos de política de grupo» y selecciona «Nuevo1 ».

Asigna el nombre «1 » a la GPO y haz clic en «Aceptar» 2 para crear el objeto.

Haz clic con el botón derecho del ratón sobre el objeto que acabas de crear y selecciona «Modificar» 1 .

Ve a la siguiente ubicación: Configuración del ordenador / Ajustes de Windows / Ajustes de seguridad / Políticas locales / Asignación de derechos de usuario.

Vamos a configurar los siguientes parámetros: Prohibir el acceso a este ordenador desde la red, Prohibir el inicio de sesión local, Prohibir el inicio de sesión como servicio, Prohibir el inicio de sesión como tarea y Prohibir el inicio de sesión a través de los servicios de Escritorio remoto, con el fin de que no se pueda utilizar una cuenta miembro del grupo «Admins» del dominio en los servidores de T1.

Abre el primer parámetro, marca la casilla «Definir estos parámetros de política» 1 y, a continuación, haz clic en el botón «Añadir un usuario o un grupo» 2 .

Añade los siguientes grupos1 :

  • Administradores de la empresa
  • Administradores del esquema
  • Administradores del dominio

A continuación, confirma los parámetros haciendo clic en los botones «Aplicar» 2 y «Aceptar» 3 .

Ya se ha configurado el primer parámetro.

Haz lo mismo con los demás parámetros de «Prohibición».

Cierra el editor; la GPO ya está configurada.

Ahora hay que vincular la GPO a la OU para que se aplique; para ello, haz clic con el botón derecho del ratón en la OU T1 y selecciona «Vincular un objeto de política de grupo existente» 1 .

Selecciona el objeto GPO «1 » y haz clic en «Aceptar» (2 ).

El objeto está vinculado a la OU.

En un servidor con conexión T1, ejecuta «gpupdate» para forzar la aplicación de la actualización; como se puede ver en la captura de pantalla que aparece a continuación, la GPO se ha aplicado correctamente.

Ahora vamos a probar la GPO; para ello, tengo una cuenta llamada «romain.t0», que es miembro del grupo «Admins» del dominio, y que voy a utilizar para intentar iniciar sesión de forma local en el servidor.

Para asegurarme de que el bloqueo se debe realmente al sistema Windows y no al cortafuegos, lo he desactivado deliberadamente en el servidor T1.

Para comenzar esta primera prueba, he iniciado sesión con la cuenta de administrador en un controlador de dominio, por lo que formo parte del grupo «Admins» del dominio, y voy a intentar acceder a la carpeta compartida administrativa del servidor C$.

Se puede ver que no puedo conectarme al servidor con mi cuenta, que forma parte del grupo «Admins» del dominio.

La segunda prueba consistirá en conectarme al observador de eventos desde el controlador de dominio de mi servidor en T1.

Aquí tampoco se permite el acceso.

Para terminar, he intentado iniciar sesión de forma local con mi cuenta en T0 en el servidor.

Aquí tampoco se permite la conexión.

En este tutorial hemos visto cómo implementar los primeros elementos del modelo Tiering en un entorno de Active Directory; el objetivo de este artículo no es mostrarte paso a paso cómo hacerlo, sino ofrecerte información que te ayude a comprender su implementación y su funcionamiento.

Para el Nivel 0, se recomienda implementar un silo de autenticación con el fin de garantizar que solo las cuentas de nivel 0 se conecten a los equipos de ese mismo nivel; encontrarás explicaciones detalladas en la guía de la ANSSI.

Para ayudarte con la implementación, también puedes utilizar HardenAD , que permite, mediante un script de PowerShell, implementar todos los grupos y políticas necesarios para configurar un modelo de niveles. Para comprender cómo funciona, te recomiendo encarecidamente que lo pruebes en un entorno de pruebas.

Romain Drouche

Romain Drouche

Arquitecto de sistemas | MCSE: Core Infrastructure

Experto en infraestructuras de TI con más de 15 años de experiencia sobre el terreno. Actualmente, como jefe de proyectos de sistemas y redes y referente en seguridad de los sistemas de información (SSI), pongo mi experiencia al servicio de la fiabilidad y la seguridad de los entornos tecnológicos.

GHinM▶