Citrix ADC

Grapado OCSP

La implementación de Citrix ADC de CRL y OCSP informa únicamente del estado de revocación de certificados de cliente. Para comprobar el estado de revocación de un certificado de servidor recibido durante un protocolo de enlace SSL, un cliente debe enviar una solicitud a una entidad emisora de certificados.

Para sitios web con mucho tráfico, muchos clientes reciben el mismo certificado de servidor. Si cada cliente envía una consulta para el estado de revocación del certificado del servidor, la entidad emisora de certificados se inundaría con solicitudes OCSP para comprobar la validez del certificado.

Solución de grapado OCSP

Para evitar la congestión innecesaria, el dispositivo Citrix ADC admite ahora el grapado OCSP. Es decir, el dispositivo ahora puede enviar el estado de revocación de un certificado de servidor a un cliente, en el momento de la conexión SSL, después de validar el estado del certificado desde un respondedor OCSP. El estado de revocación de un certificado de servidor está “grapado” a la respuesta que el dispositivo envía al cliente como parte del protocolo de enlace SSL. Para utilizar la función de grapado OCSP, debe habilitarla en un servidor virtual SSL y agregar un respondedor OCSP al dispositivo.

Nota:

  • Los dispositivos Citrix ADC admiten el grapado OCSP tal como se define en RFC 6066.

  • El grapado OCSP solo se admite en el front-end de los dispositivos Citrix ADC.

Importante:

La compatibilidad con Citrix ADC para el grapado OCSP se limita a los apretones de manos que utilizan el protocolo TLS versión 1.0 o superior.

Almacenamiento en caché de respuesta OCSP de certificados de servidor

Durante el protocolo de enlace SSL, cuando un cliente solicita el estado de revocación del certificado de servidor, el dispositivo comprueba en primer lugar la entrada de este certificado en su caché local. Si se encuentra una entrada válida, se evalúa y el certificado del servidor y su estado se presentan al cliente. Si no se encuentra una entrada de estado de revocación, el dispositivo envía una solicitud para el estado de revocación del certificado de servidor al respondedor de OCSP. Si recibe una respuesta, envía el certificado y el estado de revocación al cliente. Si el siguiente campo de actualización está presente en la respuesta de OCSP, la respuesta se almacena en caché durante el período de tiempo configurado (valor especificado en el campo de tiempo de espera).

Nota: Desde la versión 12.1 compilación 49.x, puede borrar la respuesta almacenada en caché del certificado del servidor del respondedor OCSP incluso antes de que expire el tiempo de espera. Anteriormente, no se podía descartar el estado almacenado en caché en el par de claves de certificado hasta que se hubiera terminado el tiempo de espera configurado.

Para borrar el estado almacenado en caché mediante la CLI, en el símbolo del sistema, escriba:

clear ssl certKey <certkey name> -ocspstaplingCache

Ejemplo:

clear ssl certKey s1 -ocspstaplingCache

Para borrar el estado almacenado en caché mediante la interfaz gráfica de usuario

  1. En la GUI, vaya a Administración del tráfico > SSL > Certificados > Certificadosde CA.
  2. En el panel de detalles, seleccione un certificado.
  3. En la lista Seleccionar acción, seleccione Borrar. Si se le pide que confirme, haga clic en .

Configuración de grapado OCSP

La configuración del grapado OCSP implica habilitar la función y configurar OCSP. Para configurar OCSP, debe agregar un respondedor OCSP, enlazar el respondedor OCSP a un certificado de CA y enlazar el certificado a un servidor virtual SSL.

Nota:

Se admiten respondedores OCSP con solo URL basada en HTTP.

Habilitar el grapado de OCSP mediante la CLI

En el símbolo del sistema, escriba:

set ssl vserver <name> -ocspstapling [ENABLED | DISABLED]

Ejemplo:

set ssl vserver vip1 -ocspStapling ENABLED
Done

sh ssl vserver vip1

     Advanced SSL configuration for VServer vip1:
     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: DISABLED
     SSL Redirect: DISABLED
     Non FIPS Ciphers: DISABLED
     SNI: ENABLED
     OCSP Stapling: ENABLED
     SSLv2: DISABLED SSLv3: DISABLED 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: server_certificate1 Server Certificate

    1) Cipher Name: DEFAULT
     Description: Default cipher list with encryption strength >= 128bit
Done

Habilitar el grapado de OCSP mediante la interfaz gráfica de usuario

  1. Vaya a Administración del tráfico > SSL > Servidor virtual.
  2. Abra un servidor virtual y, en Parámetros SSL, seleccione Grapado OCSP.

Configuración OCSP

Se agrega un respondedor de OCSP de forma dinámica o manual para enviar solicitudes de grapado de OCSP. Un respondedor interno se agrega dinámicamente al agregar un certificado de servidor y su certificado de emisor basado en la dirección URL de OCSP en el certificado de servidor. Se agrega un respondedor OCSP manual desde la CLI o GUI. Para enviar una solicitud OCSP para un certificado de servidor, el dispositivo Citrix ADC selecciona un respondedor OCSP en función de la prioridad que se le asigna al vincularlo a un certificado emisor. Si un respondedor no envía una solicitud de grapado OCSP, se selecciona el respondedor con la prioridad siguiente para enviar la solicitud. Por ejemplo, si solo se configura manualmente un respondedor y falla y existe un respondedor enlazado dinámicamente, se selecciona para enviar la solicitud OCSP.

Si la dirección URL de OCSP es distinta de HTTP, no se crea un respondedor OCSP interno.

Nota

Un respondedor OCSP agregado manualmente tiene prioridad sobre un respondedor agregado dinámicamente.

Diferencia entre un respondedor OCSP creado manualmente y un respondedor OCSP creado internamente

   
Respondedor OCSP creado manualmente Respondedor OCSP creado internamente (dinámicamente)
Creado de forma manual y explícita enlazado al certificado emisor con prioridad. Creado y enlazado de forma predeterminada, al tiempo que agrega un certificado de servidor y su certificado de emisor (certificado de CA). El nombre comienza con “ns_internal_”.
La prioridad entre 1 y 127 está reservada para el respondedor configurado. La prioridad se asigna automáticamente a partir de 128.
URL y profundidad de lotes se pueden cambiar. La URL y la profundidad de lotes no se pueden cambiar.
Eliminado directamente. Se elimina solo cuando se elimina el certificado de servidor o el certificado de CA.
Puede vincularse a cualquier certificado de CA. Encuadernado de forma predeterminada a un certificado de CA. No se puede vincular a ningún otro certificado de CA.
Guardado en la configuración (ns.conf). Los comandos Agregar no se guardan en la configuración; solo se guardan los comandos set.
Si vincula tres respondedores de OCSP al mismo certificado de emisor con las prioridades 1, 2 y 3 respectivamente, y posteriormente desvincula la prioridad 2, las demás prioridades no se verán afectadas. Tres respondedores de OCSP se vinculan automáticamente a un certificado de emisor con las prioridades 128, 129 y 130 respectivamente. Si quita el certificado de servidor que se utilizó para crear un respondedor vinculado con la prioridad 129, se elimina ese respondedor. Además, la prioridad del siguiente respondedor (prioridad 130) se cambia automáticamente a 129.

Ejemplo de manejo de solicitudes:

  1. Agregue un servidor virtual (VIP1).
  2. Agregue el certificado emisor (CA1) y vincularlo a VIP1.
  3. Agregue tres certificados S1, S2 y S3. Los respondedores internos resp1, resp2 y resp3 respectivamente se crean de forma predeterminada.
  4. Enlazar S3 a VIP1.
  5. Una solicitud llega a VIP1. Responder resp3 está seleccionado.

Para crear dinámicamente un respondedor OCSP interno, el dispositivo necesita lo siguiente:

  • Certificado del emisor del certificado de servidor (normalmente el certificado de CA).
  • Par de certificados y claves del certificado de servidor. Este certificado debe contener la dirección URL de OCSP proporcionada por la entidad emisora de certificados. La URL se utiliza como nombre del respondedor interno agregado dinámicamente.

Un respondedor OCSP interno tiene los mismos valores predeterminados que un respondedor configurado manualmente.

Nota:

El almacenamiento en caché está inhabilitado de forma predeterminada en un respondedor interno. Utilice el comando “set ssl ocspResponder” para habilitar el almacenamiento en caché.

Configurar OCSP mediante la CLI

En el símbolo del sistema, escriba los siguientes comandos para configurar OCSP y verificar la configuración:

add ssl certKey <certkeyName> (-cert <string> [-password]) [-key <string> | -fipsKey <string> | -hsmKey <string>] [-inform <inform>] [-expiryMonitor ( ENABLED | DISABLED ) [-notificationPeriod <positive_integer>]] [-bundle ( YES | NO )]

add ssl ocspResponder <name> -url <URL> [-cache ( ENABLED | DISABLED )[-cacheTimeout <positive_integer>]] [-resptimeout <positive_integer>] [-responderCert <string> | -trustResponder] [-producedAtTimeSkew <positive_integer>][-signingCert <string>][-useNonce ( YES | NO )][ -insertClientCert ( YES | NO )]

bind ssl certKey [<certkeyName>] [-ocspResponder <string>] [-priority <positive_integer>]

show ssl ocspResponder [<name>]

Parámetros:

Método HttpTod:

Método HTTP utilizado para enviar solicitudes OCSP. Para las solicitudes de menos de 255 bytes de longitud, puede configurar el método HTTP GET para las consultas a un servidor OCSP. Si especifica el método GET pero la longitud es mayor que 255 bytes, el dispositivo utiliza el método predeterminado (POST).

Valores posibles: GET, POST

Valor predeterminado: POST

ocsPurlResolveTimeout:

Tiempo, en milisegundos, para esperar una resolución de URL OCSP. Una vez transcurrido este tiempo, se selecciona el respondedor con la siguiente prioridad más alta. Si todos los respondedores fallan, aparece un mensaje de error o se elimina la conexión, dependiendo de la configuración del servidor virtual.

Valor mínimo: 100

Valor máximo: 2000

Ejemplo:

add ssl certkey root_ca1 –cert root_cacert.pem
add ssl ocspResponder ocsp_responder1 -url "http:// www.myCA.org:80/ocsp/" -cache ENABLED -cacheTimeout 30  -resptimeout 100 -responderCert responder_cert -producedAtTimeSkew 300 -signingCert sign_cert  -insertClientCert YES
bind ssl certKey root_ca1 -ocspResponder ocsp_responder1 -priority 1
sh ocspResponder ocsp_responder1
    1)Name: ocsp_responder1
    URL: http://www.myCA.org:80/ocsp/, IP: 192.128.22.22
    Caching: Enabled        Timeout: 30 minutes
    Batching: 8 Timeout: 100 mS
    HTTP Request Timeout: 100mS
    Request Signing Certificate: sign_cert
    Response Verification: Full, Certificate: responder_cert
    ProducedAt Time Skew: 300 s
    Nonce Extension: Enabled
     Client Cert Insertion: Enabled
    Done

show certkey root_ca1
    Name: root_ca1     Status: Valid,   Days to expiration:8907
    Version: 3
    …
    1)  OCSP Responder name: ocsp_responder1     Priority: 1
    Done

Modificar OCSP mediante la CLI

No puede modificar el nombre de un respondedor OCSP, pero puede utilizar el comando set ssl OCSPResponder para cambiar cualquiera de los demás parámetros.

En el símbolo del sistema, escriba los siguientes comandos para establecer los parámetros y verificar la configuración:

set ssl ocspResponder <name> [-url <URL>] [-cache ( ENABLED | DISABLED)] [-cacheTimeout <positive_integer>]  [-resptimeout <positive_integer>] [ -responderCert <string> | -trustResponder][-producedAtTimeSkew <positive_integer>][-signingCert <string>] [-useNonce ( YES | NO )]

unbind ssl certKey [<certkeyName>] [-ocspResponder <string>]

bind ssl certKey [<certkeyName>] [-ocspResponder <string>] [-priority <positive_integer>]

show ssl ocspResponder [<name>]

Configurar OCSP mediante la interfaz gráfica de usuario

  1. Vaya a Administración del tráfico > SSL > Respondedor de OCSP y configure un respondedor de OCSP.
  2. Vaya a Administración del tráfico > SSL > Certificados, seleccione un certificado y, en la lista Acción, seleccione Enlaces de OCSP. Enlazar un respondedor OCSP.
  3. Vaya a Administración del tráfico > Equilibrio de carga > Servidores virtuales, abra un servidor virtual y haga clic en la sección Certificados para enlazar un certificado de CA.
  4. Si lo quiere, seleccione OCSP Obligatorio.

Nota:

El parámetro insert client certificate en los comandos “add ssl ocspResponder” y “set ssl ocspResponder” ya no es válido. Es decir, el parámetro se ignora durante la configuración.

Grapado OCSP