Listas de revocación de certificados
Un certificado emitido por una CA normalmente sigue siendo válido hasta su fecha de caducidad. Sin embargo, en algunas circunstancias, la CA podría revocar el certificado emitido antes de la fecha de caducidad. Por ejemplo, cuando la clave privada de un propietario se ve comprometida, el nombre de una empresa o una persona cambia o la asociación entre el sujeto y la CA cambia.
Una lista de revocación de certificados (CRL) identifica los certificados no válidos por número de serie y emisor.
Las autoridades certificadoras emiten CRL con regularidad. Puede configurar el dispositivo NetScaler para que utilice una CRL para bloquear las solicitudes de los clientes que presenten certificados no válidos.
Si ya tiene un archivo CRL de una CA, agréguelo al dispositivo NetScaler. Puede configurar las opciones de actualización. También puede configurar NetScaler para que sincronice el archivo CRL automáticamente en un intervalo especificado, desde una ubicación web o una ubicación LDAP. El dispositivo admite CRL en formato de archivo PEM o DER. Asegúrese de especificar el formato de archivo del archivo CRL que se va a agregar al dispositivo NetScaler.
Si ha utilizado el ADC como CA para crear certificados que se utilizan en las implementaciones de SSL, también puede crear una CRL para revocar un certificado en particular. Esta función se puede utilizar, por ejemplo, para garantizar que los certificados autofirmados que se crean en NetScaler no se utilicen en un entorno de producción ni después de una fecha determinada.
Nota:
De forma predeterminada, las CRL se almacenan en el directorio /var/netscaler/ssl del dispositivo NetScaler.
Cree una CRL en el dispositivo ADC
Como puede utilizar el dispositivo ADC para actuar como CA y crear certificados autofirmados, también puede revocar los siguientes certificados:
- Certificados que ha creado.
- Certificados cuyo certificado de CA es de su propiedad.
El dispositivo debe revocar los certificados no válidos antes de crear una CRL para esos certificados. El dispositivo almacena los números de serie de los certificados revocados en un archivo de índice y actualiza el archivo cada vez que revoca un certificado. El archivo de índice se crea automáticamente la primera vez que se revoca un certificado.
Revocar un certificado o crear una CRL mediante la CLI
En el símbolo del sistema, escriba el siguiente comando:
create ssl crl <CAcertFile> <CAkeyFile> <indexFile> (-revoke <input_filename> | -genCRL <output_filename>)
<!--NeedCopy-->
Ejemplo:
create ssl crl Cert-CA-1 Key-CA-1 File-Index-1 -revoke Invalid-1
create ssl crl Cert-CA-1 Key-CA-1 File-Index-1 -genCRL CRL-1
<!--NeedCopy-->
Revocar un certificado o crear una CRL mediante la interfaz gráfica de usuario
- Vaya a Administración del tráfico > SSL y, en el grupo Introducción, seleccione Administración de CRL.
- Introduzca los detalles del certificado y, en la lista Elegir operación, seleccione Revocar certificadoo Generar CRL.
Agregar una CRL existente al ADC
Antes de configurar la CRL en el dispositivo NetScaler, asegúrese de que el archivo CRL esté almacenado localmente en el dispositivo NetScaler. En una configuración de HA, el archivo CRL debe estar presente en ambos dispositivos ADC y la ruta del directorio al archivo debe ser la misma en ambos dispositivos.
Agregue una CRL en NetScaler mediante la CLI
En la línea de comandos, escriba los siguientes comandos para agregar una CRL en NetScaler y comprobar la configuración:
add ssl crl <crlName> <crlPath> [-inform (DER | PEM)]
show ssl crl [<crlName>]
<!--NeedCopy-->
Ejemplo:
> add ssl crl crl-one /var/netscaler/ssl/CRL-one -inform PEM
Done
> show ssl crl crl-one
Name: crl-one Status: Valid, Days to expiration: 29
CRL Path: /var/netscaler/ssl/CRL-one
Format: PEM CAcert: samplecertkey
Refresh: DISABLED
Version: 1
Signature Algorithm: sha1WithRSAEncryption
Issuer: C=US,ST=California,L=Santa Clara,O=NetScaler Inc.,OU=SSL Acceleration,CN=www.ns.com/emailAddress=support@NetScaler appliance.com
Last_update:Jun 15 10:53:53 2010 GMT
Next_update:Jul 15 10:53:53 2010 GMT
1) Serial Number: 00
Revocation Date:Jun 15 10:51:16 2010 GMT
Done
<!--NeedCopy-->
Agregue una CRL en NetScaler mediante la interfaz gráfica de usuario
Vaya a Administración del tráfico > SSL > CRLy añada una CRL.
Configurar los parámetros de actualización de CRL
Una autoridad de certificación genera y publica una CRL periódicamente o, a veces, inmediatamente después de revocar un certificado en particular. Citrix recomienda actualizar las CRL del dispositivo NetScaler con regularidad para evitar que los clientes intenten conectarse con certificados que no son válidos.
El dispositivo NetScaler puede actualizar las CRL desde una ubicación web o un directorio LDAP. Cuando especifique parámetros de actualización y una ubicación web o un servidor LDAP, la CRL no tiene que estar presente en la unidad de disco duro local en el momento de ejecutar el comando. La primera actualización almacena una copia en la unidad de disco duro local, en la ruta especificada por el parámetro Archivo CRL. La ruta predeterminada para almacenar la CRL es /var/netscaler/ssl.
Nota: En la versión 10.0 y versiones posteriores, el método para actualizar una CRL no se incluye de forma predeterminada. Especifique un método HTTP o LDAP. Si va a actualizar desde una versión anterior a la versión 10.0 o posterior, debe agregar un método y volver a ejecutar el comando.
Configurar la actualización automática de CRL mediante la CLI
En la línea de comandos, escriba los siguientes comandos para configurar la actualización automática de CRL y comprobar la configuración:
set ssl crl <crlName> [-refresh ( ENABLED | DISABLED )] [-CAcert <string>] [-server <ip_addr|ipv6_addr|*> | -url <URL>] [-method ( HTTP | LDAP )] [-port <port>] [-baseDN <string>] [-scope ( Base | One )] [-interval <interval>] [-day <positive_integer>] [-time <HH:MM>][-bindDN <string>] {-password } [-binary ( YES | NO )]
show ssl crl [<crlName>]
<!--NeedCopy-->
Ejemplo:
set CRL crl1 -refresh enabled -method ldap -inform DER -CAcert ca1 -server 10.102.192.192 -port 389 -scope base -baseDN "cn=clnt_rsa4_multicert_der,ou=eng,o=ns,c=in" -time 00:01
set ssl crl crl1 -refresh enabled -method http -cacert ca1 -port 80 -time 00:10 -url http://10.102.192.192/crl/ca1.crl
> sh crl
1) Name: crl1 Status: Valid, Days to expiration: 355
CRL Path: /var/netscaler/ssl/crl1
Format: PEM CAcert: ca1
Refresh: ENABLED Method: HTTP
URL: http://10.102.192.192/crl/ca1.crl Port:80
Refresh Time: 00:10
Last Update: Successful, Date:Tue Jul 6 14:38:13 2010
Done
<!--NeedCopy-->
Configure la actualización automática de CRL mediante LDAP o HTTP mediante la interfaz gráfica de usuario
- Vaya a Administración del tráfico > SSL > CRL.
- Abra una CRL y seleccione Habilitar actualización automática de CRL.
Nota:
Si la nueva CRL se ha actualizado en el repositorio externo antes de la hora de actualización real, tal como se especifica en el campo Hora de última actualización de la CRL, debe hacer lo siguiente: Actualizar
inmediatamente la CRL del dispositivo NetScaler.
Para ver la hora de la última actualización, seleccione la CRL y haga clic en Detalles.
Sincronizar las CRL
El dispositivo NetScaler utiliza la CRL distribuida más recientemente para evitar que los clientes con certificados revocados accedan a recursos seguros.
Si las CRL se actualizan con frecuencia, el dispositivo NetScaler necesita un mecanismo automatizado para obtener las CRL más recientes del repositorio. Puede configurar el dispositivo para que actualice las CRL automáticamente en un intervalo de actualización especificado.
El dispositivo mantiene una lista interna de CRL que deben actualizarse a intervalos regulares. En estos intervalos especificados, el dispositivo analiza la lista en busca de CRL que deban actualizarse. A continuación, se conecta al servidor LDAP o HTTP remoto, recupera las CRL más recientes y, a continuación, actualiza la lista de CRL local con las nuevas CRL.
Nota:
Si la comprobación de CRL se establece como obligatoria cuando el certificado de CA está enlazado al servidor virtual y se produce un error en la actualización inicial de la CRL, se realiza la siguiente acción para las conexiones:
todas las conexiones de autenticación de cliente con el mismo emisor que la CRL se rechazan como REVOCADAS hasta que la CRL se actualice correctamente.
Puede especificar el intervalo en el que debe realizarse la actualización de la CRL. También puede especificar la hora exacta.
Sincronice la actualización automática de CRL mediante la CLI
En el símbolo del sistema, escriba el siguiente comando:
set ssl crl <crlName> [-interval <interval>] [-day <integer>] [-time <HH:MM>]
<!--NeedCopy-->
Ejemplo:
set ssl crl CRL-1 -refresh ENABLE -interval MONTHLY -days 10 -time 12:00
<!--NeedCopy-->
Sincronice la actualización de CRL mediante la interfaz gráfica
- Vaya a Administración del tráfico > SSL > CRL.
- Abra una CRL, seleccione habilitar la actualización automática de CRLy especifique el intervalo.
Realice la autenticación del cliente mediante una lista de revocación de certificados
Si hay una lista de revocación de certificados (CRL) en un dispositivo NetScaler, se realiza una comprobación de CRL independientemente de si la comprobación de CRL está configurada como obligatoria u opcional.
El éxito o el fracaso de un apretón de manos depende de una combinación de los siguientes factores:
- Regla para la comprobación de CRL
- Regla para la comprobación del certificado de cliente
- Estado de la CRL configurada para el certificado de CA
La siguiente tabla muestra los resultados de las posibles combinaciones de un protocolo de enlace que incluya un certificado revocado.
Tabla 1. Resultado de un apretón de manos con un cliente que utiliza un certificado revocado
Regla para la verificación de CRL | Regla para la comprobación de certificados de clientes | Estado de la CRL configurada para el certificado de CA | Resultado de un apretón de manos con un certificado revocado |
---|---|---|---|
Opcional | Opcional | Falta | Operación correctamente realizada. |
Opcional | Mandatory (Obligatorio) | Falta | Operación correctamente realizada. |
Opcional | Obligatorio | Presente | Fracaso |
Mandatory (Obligatorio) | Opcional | Falta | Operación correctamente realizada. |
Mandatory (Obligatorio) | Mandatory (Obligatorio) | Falta | Fracaso |
Mandatory (Obligatorio) | Opcional | Presente | Operación correctamente realizada. |
Mandatory (Obligatorio) | Mandatory (Obligatorio) | Presente | Fracaso |
Opcional/Obligatorio | Opcional | Expirado | Correcto |
Opcional/Obligatorio | Mandatory (Obligatorio) | Expirado | Fracaso |
Nota:
La comprobación de CRL es opcional de forma predeterminada. Para cambiar de opcional a obligatorio o viceversa, primero debe desvincular el certificado del servidor virtual SSL y, a continuación, volver a vincularlo después de cambiar la opción.
En el resultado del comando
sh ssl vserver
, OCSP check: optional implica que la comprobación de CRL también es opcional. La configuración de la comprobación de CRL se muestra en el resultado del comandosh ssl vserver
solo si la comprobación de CRL está configurada como obligatoria. Si la comprobación CRL está configurada como opcional, los detalles de la comprobación CRL no aparecen.
Para configurar la comprobación de CRL mediante la CLI
En el símbolo del sistema, escriba el siguiente comando:
bind ssl vserver <vServerName> -certkeyName <string> [(-CA -crlCheck ( Mandatory | Optional ))]
sh ssl vserver
<!--NeedCopy-->
Ejemplo:
bind ssl vs v1 -certkeyName ca -CA -crlCheck mandatory
> sh ssl vs v1
Advanced SSL configuration for VServer v1:
DH: DISABLED
DH Private-Key Exponent Size Limit: DISABLED
Ephemeral RSA: ENABLED Refresh Count: 0
Session Reuse: ENABLED Timeout: 120 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Client Auth: ENABLED Client Cert Required: Mandatory
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
OCSP Stapling: DISABLED
HSTS: DISABLED
HSTS IncludeSubDomains: NO
HSTS Max-Age: 0
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED
Push Encryption Trigger: Always
Send Close-Notify: YES
ECC Curve: P_256, P_384, P_224, P_521
1) CertKey Name: ca CA Certificate CRLCheck: Mandatory CA_Name Sent
1) Cipher Name: DEFAULT
Description: Predefined Cipher Alias
Done
<!--NeedCopy-->
Configure la comprobación de CRL mediante la interfaz gráfica de usuario
- Vaya a Administración del tráfico > Equilibrio de carga > Servidores virtualesy abra un servidor virtual SSL.
- Haga clic en la sección Certificados .
- Seleccione un certificado y, en la lista de verificación de OCSP y CRL, seleccione CRLobligatoria.
Resultado de un apretón de manos con un certificado revocado o válido
Regla para la comprobación de CRL | Regla para la comprobación del certificado de cliente | Estado de la CRL configurada para el certificado de CA | Resultado de un apretón de manos con un certificado revocado | Resultado de un apretón de manos con un certificado válido |
---|---|---|---|---|
Mandatory (Obligatorio) | Mandatory (Obligatorio) | Presente | Fracaso | Correcto |
Mandatory (Obligatorio) | Mandatory (Obligatorio) | Expirado | Fracaso | Fracaso |
Mandatory (Obligatorio) | Mandatory (Obligatorio) | Falta | Fracaso | Fracaso |
Mandatory (Obligatorio) | Mandatory (Obligatorio) | Indefinido | Fracaso | Fracaso |
Opcional | Obligatorio | Presente | Fracaso | Correcto |
Opcional | Mandatory (Obligatorio) | Expirado | Correcto | Correcto |
Opcional | Mandatory (Obligatorio) | Falta | Correcto | Correcto |
Opcional | Mandatory (Obligatorio) | Indefinido | Correcto | Correcto |
Mandatory (Obligatorio) | Opcional | Presente | Operación correctamente realizada. | Correcto |
Mandatory (Obligatorio) | Opcional | Expirado | Correcto | Correcto |
Mandatory (Obligatorio) | Opcional | Falta | Correcto | Correcto |
Mandatory (Obligatorio) | Opcional | Indefinido | Correcto | Correcto |
Opcional | Opcional | Presente | Operación correctamente realizada. | Correcto |
Opcional | Opcional | Expirado | Correcto | Correcto |
Opcional | Opcional | Falta | Correcto | Correcto |
Opcional | Opcional | Indefinido | Correcto | Operación correctamente realizada. |