Para que el sistema operativo confíe en un certificado se tiene que cumplir:
CA pública
CA privada o interna
En Windows Server 2008, una CA es un servidor con el rol “AD CS” instalado
Una CA puede emitir certificados, revocarlos, publicar la lista de certificados revocados (CRL) o la lista de información AIA (Authority Information Access) para que los certificados emitidos a usuarios, sistemas o servicios puedan ser validados
En las PKI de WS2K8 caben dos tipos de CA:
CA raíz: dispone de certificado autofirmado y puede emitir certificados para otra CA
CA subordinada: dispone de certificado firmado por otra CA raíz
Pueden estar o no integradas en el Directorio Activo
CA Stand-alone: no requiere Directorio Activo
CA Empresarial: se integra en un Directorio Activo y exige que el servidor forme parte de un Dominio de Directorio Activo
Trabajaremos con dos servidores WS2K8 Enterprise Edition (tienen un rol de PKI más completo que la versión Standard)
La primera maquina se llamara SRV-RootCAseguido del numero de lista
Servidor stand-alone donde se instalará la CA raíz
El servidor está en un grupo de trabajo (GW-PKI)
La segunda maquina se llama DC1 en mi caso, en el vuestro las iniciales de vuestro nombre y apellidos
Controlador de dominio del dominio EMBOSA en vuestro caso ASIR
En él se instalará una CA subordinada e integrada en el Directorio Activo
También se usarán los servicios web de este servidor como rutas para publicar los AIA (Authority Information Access) y los RDP (Revocation List Distribution Point) de las dos CAs
Nota Una vez instalada una CA en un servidor, éste ya yo puede cambiar de nombre
comprobación inicial de nombres NetBIOS
Instalación de los servicios DS CA en SRV-RootCA
Instalación de los servicios web para la inscripción de certificados, lo que requerirá IIS
Comenzamos la configuración de la CA raiz (no está en dominio, sólo podemos elegir Independiente)
Elegimos CA raiz
Creamos una nueva clave privada
Definimos del CSP (Proveedor de Servicios de Cifrado) que utilizamos
Asignamos nombre a la CA raiz
Establece el periodo de validez del certificado de la CA raíz autofirmado
Definimos la ruta de la base de datos de certificados y del registro de emisión
Configuración por defecto propuesta de la instalación de IIS
Por seguridad, asegurar una copia de la clave privada de la CA raiz
Obtención del certificado público de la CA raíz para la distribución: accedemos http://localhost/certsrv
Descargamos el certificado de CA
Deben configurarse las rutas de publicación antes de emitir ningún certificado ya que la información se incluye en los certificados emitidos
Hay que asegurarse de marcar las casillas inferiores de inclusión de certificados
Añadimos el resto de rutas
Ejemplo de ruta CDP:http://dc1.embosa.com/certenroll/<nombre de CA><Sufijo de nombre de lista CRL><Diferencias entre listas CRL permitidas>.crl
Nos qudarán las siguitentes publicaciones
Creación de una CA subordinada e integrada en el directorio activo
Configuramos el DNS para que los sistemas puedan encontrarse por su FQDN
Instalamos el rol de AD CS en el servidor sobre el que crearemos la CA subordinada
Como el servidor está en el dominio podemos elegir “Empresa” y subordinada
Generamos el certificados para esta nueva CA
Elegimos la criptografía y el nombre para la nueva CA
Solicitamos un certificado a la CA raíz
Generamos una solicitud de certificado que luego usaremos para que sea firmado por la CA raíz
Finalizamos el asistente
Nos conectamos a http://srv-rootca/certsrv y solicitamos el certificado para la CA subordinada con solicitud avanzada
Solicitamos el certificado desde el archivo con la petición que generamos anteriormente
Se copia el contenido del fichero en el bloc de notas y lo pegamos en la pagina
Se envia la solicitud
Entonces se genera la solicitud, que queda pendiente en la CA raíz para que podamos aprobarla manualmente
Seguidamente vamos a la CA raíz y aprobamos la solicitud de certificado de la CA subordinada
Para utilizar el certificado es necesario confiar en la CA raíz
Su certificado público debe estar en todos los sistemas que vayan a utilizar los certificados de ambas CA
Se pueden distribuir mediante directivas de grupo del dominio
Una vez importado, el directorio activo se encargará de distribuirlo a todos los sistemas del dominio
Descargamos el certificado de la CA subordinada y repetimos el proceso con el certificado que dejamos sin terminar y que está pendiente
Descargamos el certificado con la opción “Descargar cadena de Certificados”
Habilitamos la CA subordinada utilizando este certificado con la opción “Instalar el certificado de CA”
Ajuste de las rutas AIA y CPD de la CA subordinada
Instalación de un servidor OCSP (Online Certificate Status Protocol)
Los administradores de las CA pueden revocar los certificados
Se deben publicar CRL (Certificate Revocation List) con los certificados revocados Las CRL pueden ser:
WS2K8 implementa el protocolo OCSP que sirve para consultar el estado de un certificado sin necesidad de descargar las listas CRL completas
Habilitar el servicio OCSP
Habilitamos la ruta en donde se encontrará el servidor OCSP
El servicio OCSP se identifica con un certificado específico de OCSP
Localizamos en la lista de plantillas la plantilla de certificado “Firma de Respuesta de OCSP” y hacemos doble clic para acceder a sus propiedades. En la pestaña de Seguridad seleccionamos en la DACL a usuarios autentificados y le asignamos el permiso “Inscribirse”
A continuación cerramos la consola de las plantillas de certificados y desde la herramienta de administración de la CA seleccionamos la plantilla que acabamos de modificar para que el servidor pueda usarla a la hora de generar certificados
Haciendo clic con el botón derecho sobre Plantillas de certificados y usando las opciones de “Nuevo/Plantilla de certificado que se va a emitir”. En la lista seleccionamos nuestra plantilla: Firma de respuesta de OCSP
Si no está instalado, hay que instalar el servicio OCSP desde el Server ManagerArrancamos la consola de Administrador del Servicio de Respuestas en Línea y agregamos una configuración de revocación
Asignamos un nombre descriptivo del servicio
El certificado para el OCSP nos lo emitirá la CA subordinada de empresa
Examinamos los certificados desde el Directorio Activo y permitimos que OCSP automáticamente use el certificado para firmar las respuestas enviadas a los clientes
El servidor OCSP
Un único servidor OCSP puede publicar múltiples CA de la misma o de distinta PKI ya que se trata de un servicio web El servidor OCSP se puede publicar en Internet si se desea que se pueda consultar desde el exterior
Publicación en OCSP de la CA raíz
Seleccionamos el certificado desde local ya que la CA raíz o está en el DA
Seleccionamos el certificado de la CA raíz y permitimos firmar con él las respuestas a los clientes
Para nuestra CA raíz no tendremos un proveedor de listas de revocación y eso lo solucionamos introduciéndolo manualmente
Hacemos clic en aceptar y luego mediante el botón de Proveedor introducimos la ruta a la lista de revocación de nuestra CA raíz
Publicación de la CA raíz
Aunque nosotros asignamos esta ruta en nuestra CA raíz, en realidad la lista de revocación no figura en esa ruta porque nosotros debemos de proveer el mecanismo por el cual el servidor con la CA Raíz pueda escribir en esa carpeta la lista de revocación
Dado que nuestra CA se mantiene off-line, que el servidor no pertenece al dominio y que la cantidad de revocaciones que se van a hacer en este servidor van a ser mínimas lo más adecuado es copiar los archivos de forma manual Para hacerlo seguimos los siguientes pasos:
Si no hubiese contenido en el recurso compartido de la CA Raíz entonces tendremos que crear nuestra primera CRL
Desde el servidor que alberga nuestra CA Raíz arrancamos la herramienta de administración de la CA
Usando el menú contextual del contenedor Certificados Revocados publicamos nuestra primera CRL
Obviamente esta CRL estará vacía a menos que hayamos revocado algún certificado
Cada vez que generemos una nueva lista de revocación debemos copiar el contenido desde el servidor CA Raíz hacia el servidor CA Subordinado
Agente de recuperación de claves KRA (Key Recovery Agent)
Tiene la capacidad de recuperar la clave privada de un certificado desde la base de datos de la CA que lo emitió
Puede solucionar problemas de pérdida o extravío de certificados
Debe asignarse a personas de muy alta confianza
Pasos previos para su implementación:
En la herramienta de administración de la CA abriremos el editor de plantillas usando el menú contextual de la carpeta Plantillas de Certificados
En el administrador de plantillas localizamos la plantilla Agente de recuperación de claves y hacemos doble clic sobre ella para acceder a sus propiedades
En la pestaña Seguridad agregamos al grupo Agentes KRA y le asignamos el permiso de Inscribirse y el de lectura
Para que no sea necesario que un administrador autorice la emisión de estos certificados quitamos la marca que hay en la casilla Aprobación del administrador de certificados de entidad de certificación en la pestaña Requisitos de Emisión.
En entornos de alta seguridad podría ser conveniente dejar esta marca activada para que la emisión de estos certificados estuviese controlada por los administradores
A continuación tenemos que permitir la emisión de esta plantillaPara ello en el menú contextual de la carpeta de certificados elegimos nuevo – Plantilla de certificado que se va a emitir y seleccionamos la plantilla del Agente de Recuperación de Claves
Creación del certificado del KRA
A continuación debemos de solicitar el certificado de KRA para el usuario que le corresponda
Para solicitar el certificado KRA para este usuario vamos a usar la consola MMC
Desde la consola MMC accederemos al menú contextual del contenedor Personal para llegar a la opción de Solicitar un nuevo certificado
En el asistente seleccionaremos el certificado Agente de Recuperación de claves
Preparación de la CA para que almacene las claves privadas
Definición de los tipos de certificados cuya clave privada será respaldada
Se define una plantilla de usuario o varias, dependiendo del uso que se le vaya a dar a cada una de ellas y también debemos de definir en cada una de esas plantillas a cuales les queremos respaldar su clave privada
Para empezar vamos a asignarle un nombre
En este caso usaremos Usuario Corporativo (Clave Archivada)
A continuación en la pestaña Tratamiento de la Solicitud tendremos que activar la casilla: Archivar clave privada de cifrado de sujeto
Esta opción es la que permitirá archivar la clave privada del certificado
Tendremos que modificar sus permisos para que se puedan distribuir los certificados basados en esta plantilla de forma automática mediante Directivas de Grupo. Para ello asignamos al grupo Usuarios Autentificados los permisos de lectura, inscribirse e inscripción automática. También podríamos restringir estos permisos a grupos más reducidos dependiendo de como queremos asignar certificados a nuestros usuarios
A continuación solo resta publicar la plantilla en la CA mediante el menú contextual de la carpeta Plantillas de certificados
Nuestra CA de Empresa debería de tener un aspecto similar al siguiente
En este punto se puede desconcetar la CA raíz
Distribución desde el Directorio Activo
Ya tenemos lista nuestra CA para poder comenzar a distribuir certificados
Abrimos la herramienta de administración de las directivas de grupo dentro de las herramientas administrativas y creamos una GPO a nivel de dominio o al nivel de las OUs donde queremos distribuir certificados
Editamos la directiva que acabamos de crear y nos vamos a: Configuración de Usuario – directivas – Configuración de Windows – Configuración de Seguridad – Directivas de clave pública
Aquí hacemos clic sobre Cliente de Servicios de Certificate Server – Inscripción Automática
Lo habilitamos y activamos las casillas de renovaciones automáticas y actualizaciones de plantillas