Configurando CrossForest Autoenrollment
En el videotutorial hemos visto como realizar las diferentes configuraciones para habilitar el enrolamiento automático de certificados entre diferentes bosques, en nuestro ejemplo, de Adatum a Tailspintoys.
La finalidad de este post es profundizar en el funcionamiento de la solución y detallar las configuraciones que se han aplicado.
Configuraciones previas
Para empezar quiero indicar que para que todo proceso funcione correctamente, es necesario tener configurada una relación de confianza entre los bosques, la relación tiene que ser forest way de dos vías, respecto a la autenticación podríamos configurarla como selectiva, siempre y cuando posteriormente configuremos correctamente los permisos de autenticación para las maquinas.
Igualmente, es necesaroo que las maquinas de los bosques de origen y destino (adatum y tailspintoys) tengan conectividad tanto IP como resolución de nombres entre ellas. La CRL (certificate revocation list) de la CA en adatum, ha de ser accesible desde Tailspintoys.
Funcionamiento
En el siguiente diagrama podemos ver cual es el proceso de petición de certificados entre bosques usando el certificate enrollment Policy y certificate enrollment web service.
A la izquierda del diagrama tenemos la autoridad certificadora (CA) en el bosque Adatum , en medio, tenemos la máquina que tiene instalados los roles de Certificate Enrollment Web Service (CES) y Certificate Enrollment Policy Web Service (CEP). En ultimo lugar tenemos a la máquina en el bosque de tailspintoys la cual va a solicitar los certificados a la CA en adatum.
Conectando con el Certificate Enrollment Policy
Por defecto cuando una máquina va a solicitar un certificado, busca una CA en su dominio. Si queremos que nuestras máquinas soliciten certificados a la CA de otro bosque tenemos que configurar la conexión con el Certificate Enrollmente Policy (CEP) en nuestro caso LON-RTR.
Una vez que hemos autenticado contra el servidor CEP, este va a remitir nuestras credenciales a la autoridad certificadora a la que sirve. Esto se realizando utilizando el Certificate Enrollment Service (CES)
Usando este servicio, nuestras credenciales van a ser entregadas a la CA y en base a ellas, se nos devolverán los certificados que tenemos disponibles. Por esto es muy importante configurar en la consola de IIS las identity pool para que usen nuestro usuario creado para el web enrollment.
Habilitando el service principal name
Para que el usuario con el que configuramos CEP Y CES pueda autenticar a los usuarios del bosque remoto ante la CA , es necesario que deleguemos los servicos de HOST y RPCSS de la máquina donde está la CA. Para poder delegar servicios necesitamos crear un service principal name para el usuario.
Una vez creado el SPN, ya tenemos disponible en el perfil de usuario la pestaña delegación. Indicamos la máquina y que servicios vamos a delegar.
Ya podríamos conectarnos al CEP, una vez conectados, el servicio CES validaría nuestras credenciales contra la CA y nos remitiría un listado de los certificados disponibles.
Habilitando LDAP referrals
Como ultimo paso, a la hora de enrolarnos en el certificado, terminaría fallando ¿por qué?
Por el error que hemos visto en el vídeo, por defecto la CA rechaza la entrega de certificados a «requesters» que no están en su bosque. Concretamente, el error indica lo siguiente «The requester’s Active Directory Object is not in the current Forest. Cross Forest Enrollment is not Enabled»
Para habilitar el cross forest enrollment en la CA, abrimos una consola y vía certutil ejecutamos siguiente comando.
Una vez habilitado el LDAP referrals en la CA, tras haber reiniciado el servicio, la entrega de certificados entre bosques ya funcionaría.
——————————————————————————————————————————————
Autor: Daniel Rodríguez Pajares
Curso: Microsoft MCSA Windows Server + Microsoft MCSE Cloud Platform & Infrastructure
Centro: Tajamar
Año académico: 2018-2019