FacebookTwitterFlickrYoutuberss

Es/3.2/Autoridad de certificacion (CA)

From Zentyal Linux Small Business Server
Jump to: navigation, search


Zentyal integra OpenSSL(4) para la gestión de la Autoridad de Certificación y del ciclo de vida de los certificados expedidos por esta.


Configuración de una Autoridad de Certificación con Zentyal

En Zentyal, el módulo Autoridad de Certificación es autogestionado, lo que quiere decir que no necesita ser habilitado en Estado del Módulo como el resto sino que para comenzar a utilizar este servicio hay que inicializar la CA. Las funcionalidades del módulo no estarán disponibles hasta que no hayamos efectuado esta acción.

Accederemos a Autoridad de Certificación ‣ General y nos encontraremos con el formulario para inicializar la CA. Se requerirá el Nombre de Organización y el número de Días para expirar. Además, también es posible especificar opcionalmente Código del País (acrónimo de dos letras que sigue el estándar ISO-3166-1 (5)), Ciudad y Estado.

Crear Certificado de la Autoridad de Certificación

A la hora de establecer la fecha de expiración hay que tener en cuenta que en ese momento se revocarán todos los certificados expedidos por esta CA, provocando la parada de los servicios que dependan de estos certificados.

Una vez que la CA ha sido inicializada, ya podremos expedir certificados. Los datos necesarios son el Nombre Común del certificado y los Días para Expirar. Este último dato está limitado por el hecho de que ningún certificado puede ser válido durante más tiempo que la CA. En el caso de que estemos usando estos certificados para un servicio como podría ser un servidor web o un servidor de correo, el Nombre Común deberá coincidir con el nombre de dominio del servidor. Por ejemplo, si utilizamos el nombre de dominio zentyal.home.lan para acceder al interfaz de administración web de Zentyal, será necesario un certificado con ese Nombre Común. En el caso de que el certificado sea un certificado de usuario, usaremos normalmente su dirección de correo como Nombre Común.

Opcionalmente se pueden definir Subject Alternative Names(6) para el certificado. Estos sirven para establecer nombres comunes a un certificado: un nombre de dominio o dirección IP para dominio virtual HTTP o una dirección de correo para firmar los mensajes de correo electrónico.

Una vez el certificado haya sido creado, aparecerá en la lista de certificados, estando disponible para el administrador y el resto de módulos. A través de la lista de certificados podemos realizar distintas acciones con ellos:

  • Descargar las claves pública, privada y el certificado.
  • Renovar un certificado.
  • Revocar un certificado.
  • Reexpedir un certificado previamente revocado o caducado.


Listado de certificados

El paquete con las claves descargadas contiene también un archivo PKCS12 que incluye la clave privada y el certificado y que puede instalarse directamente en otros programas como navegadores web, clientes de correo, etc.

Si renovamos un certificado, el actual será revocado y uno nuevo con la nueva fecha de expiración será expedido. Y si se renueva la CA, todos los certificados se renovarán con la nueva CA tratando de mantener la antigua fecha de expiración. Si esto no es posible debido a que es posterior a la fecha de expiración de la CA, entonces se establecerá la fecha de expiración de la CA.

Renovar un certificado

Si revocamos un certificado no podremos utilizarlo más, ya que esta acción es permanente y no se puede deshacer. Opcionalmente podemos seleccionar la razón para revocarlo:

  • unspecified: motivo no especificado,
  • keyCompromise: la clave privada ha sido comprometida,
  • CACompromise: la clave privada de la autoridad de certificación

ha sido comprometida,

  • affilliationChanged: se ha producido un cambio en la afiliación

de la clave pública firmada hacia otra organización,

  • superseded: el certificado ha sido renovado y por tanto

reemplaza al emitido,

  • cessationOfOperation: cese de operaciones de la entidad

certificada,

  • certificateHold: certificado suspendido,
  • removeFromCRL: actualmente sin implementar, da soporte a los

CRL diferenciales, es decir, listas de certificados cuyo estado de revocación ha cambiado.


Revocar un certificado

Cuando un certificado expire, el resto de módulos serán notificados. La fecha de expiración de cada certificado se comprueba una vez al día y cada vez que se accede al listado de certificados.

[6] Para más información sobre los Subject Alternative Names véase

http://www.openssl.org/docs/apps/x509v3_config.html#Subject_Alternative_Name


Certificados de Servicios

En Autoridad de Certificación ‣ Certificados de Servicios podemos encontrar la lista de módulos de Zentyal que usan certificados para su funcionamiento. Cada módulo genera sus certificados autofirmados, pero podemos remplazar estos certificados por otros emitidos por nuestra CA.

Para cada servicio se puede generar un certificado especificando su Nombre Común. Si no existe un certificado con el nombre especificado, la Autoridad de Certificación lo creará automáticamente.

Certificados de Servicios

Una vez activado, tendremos que reiniciar el módulo sobre el que hemos activado el certificado para que lo comience a utilizar, al igual que si renovamos el certificado asociado.

Como hemos comentado anteriormente, para la versión segura de varios protocolos (web, mail, etc.) es importante que el nombre que aparece en el Nombre común del certificado coincida con el nombre que ha solicitado el cliente. Por ejemplo, si nuestro certificado web tiene como Nombre común'host1.ejemplo.com y el cliente teclea https://www.ejemplo.com, su navegador le mostrará una alerta de seguridad y considerará que el certificado no es válido.

Lista de puntos a comprobar para desplegar un certificado:

  • La autoridad de certificación ha sido creada, el módulo del servicio se ha instalado
  • Se ha creado un nombre en el DNS para el servicio (Registro A o CNAME), de tal forma que el cliente lo pueda resolver, por ejemplo 'zentyal.zentyal-domain.lan'
  • Se ha creado un certificado para el servicio específico, por ejemplo, servidor web con un Common Name que coincide con el DNS 'zentyal.zentyal-domain.lan', después de activar el certificado, podremos verlo en Autoridad de Certificación ‣ General
  • Se ha importado el certificado de la CA (no el certificado del servicio específico) en el sistema o en la aplicación del cliente, por ejemplo el navegador web
  • El usuario es capaz de resolver la URL a una dirección IP, el Common Name coincide perfectamente con su petición, y el certificado presentado por el servicio esta firmado por una autoridad confianda
  • La aplicación del usuario es capaz de comenzar una sesión segura sin mostrar ningún aviso de seguridad
Personal tools
Namespaces

Variants
Actions

Zentyal Wiki

Zentyal Doc
Navigation
Toolbox