Crear un certificado

Una entidad emisora de certificados (CA) es una entidad que emite certificados digitales para su uso en criptografía de clave pública. Las aplicaciones, como los exploradores web, que llevan a cabo transacciones SSL, confían automáticamente en los certificados emitidos o firmados por una CA. Estas aplicaciones mantienen una lista de las CA en las que confían. Si el certificado que se utiliza para la transacción segura está firmado por cualquiera de las CA de confianza, la aplicación continúa con la transacción.

Para obtener un certificado SSL de una CA autorizada, debe crear una clave privada, utilizarla para crear una solicitud de firma de certificado (CSR) y enviar la CSR a la CA. Los únicos caracteres especiales permitidos en los nombres de archivo son guión bajo y punto.

Para importar un certificado y una clave existentes, consulte Importar un certificado.

Crear una clave privada

La clave privada es la parte más importante de un certificado digital. Por definición, esta clave no debe compartirse con nadie y debe conservarse de forma segura en el dispositivo Citrix ADC. Los datos cifrados con la clave pública solo se pueden descifrar mediante la clave privada.

El dispositivo admite dos algoritmos de cifrado, RSA y DSA, para crear claves privadas. Puede enviar cualquier tipo de clave privada a la entidad emisora de certificados. El certificado que recibe de la entidad emisora de certificados solo es válido con la clave privada utilizada para crear la CSR, y la clave es necesaria para agregar el certificado al dispositivo Citrix ADC.

Precaución: Asegúrese de limitar el acceso a su clave privada. Cualquier persona que tenga acceso a su clave privada puede descifrar sus datos SSL.

Nota:

  • Desde la versión 12.1 compilación 49.x, puede utilizar el algoritmo AES256 con formato de clave PEM para cifrar una clave privada en el dispositivo. AES con clave de 256 bits es más eficiente matemáticamente y segura en comparación con la clave de 56 bits de DES.

  • Desde la versión 12.1 compilación 50.x, puede crear una clave RSA o DSA en formato PKCS #8.

Todos los certificados y claves SSL se almacenan en la carpeta /nsconfig/ssl del dispositivo. Para mayor seguridad, puede utilizar el algoritmo Estándar de cifrado de datos (DES) o triple DES (3DES) para cifrar la clave privada almacenada en el dispositivo.

Nota:

La longitud del nombre de clave SSL permitido incluye la longitud del nombre de ruta absoluta si la ruta está incluida en el nombre de clave.

Crear una clave privada RSA mediante la CLI

En el símbolo del sistema, escriba:

create ssl rsakey <keyFile> <bits> [-exponent ( 3 | F4 )] [-keyform (DER | PEM )] [-des | -des3 | -aes256] {-password } [-pkcs8]

Ejemplo:

create rsakey testkey 2048 -aes256 -password 123456 -pkcs8

Crear una clave privada RSA mediante la interfaz gráfica de usuario

Vaya a Administración de tráfico > SSL y, en el grupo Claves SSL, seleccione Crear clave RSA y cree una clave RSA.

Para seleccionar el algoritmo de codificación AES256 en una clave RSA mediante la GUI:

  1. Vaya a Administración de tráfico > SSL > Archivos SSL > Crear clave RSA.

  2. En Formato de clave, seleccione PEM.

  3. En el algoritmo de codificación PEM, seleccione AES256.

  4. Seleccione PKCS8.

Crear una clave privada DSA mediante la CLI

En el símbolo del sistema, escriba:

create ssl dsakey <keyfile> <bits> [-keyform (DER | PEM)] [-pkcs8]

Ejemplo:

create ssl dsakey Key-DSA-1 2048 -keyform PEM

Cree una clave privada DSA mediante la interfaz gráfica de usuario

  1. Vaya a Administración de tráfico > SSL y, en el grupo Claves SSL, seleccione Crear clave DSA y cree una clave DSA.
  2. Para crear una clave en formato PKCS #8, seleccione PKCS8.

Soporte para el algoritmo resumen SHA 256 en una solicitud de firma de certificados

La solicitud de firma de certificados (CSR) es una colección de información, incluido el nombre de dominio, otros detalles importantes de la empresa y la clave privada que se utilizará para crear el certificado. Para evitar generar un certificado no válido, asegúrese de que los detalles que proporcione sean exactos.

El dispositivo Citrix ADC admite la creación de una CSR firmada con el algoritmo resumen SHA1 de forma predeterminada. En versiones anteriores, para crear una CSR firmada con el algoritmo de resumen SHA256, tenía que usar OpenSSL.

El dispositivo admite la creación de una CSR firmada con el algoritmo resumen SHA256. El algoritmo hash de cifrado utilizado en SHA256 lo hace más fuerte que SHA1.

Crear una solicitud de firma de certificado mediante la CLI

En el símbolo del sistema, escriba:

create ssl certreq <reqFile> -keyFile <input_filename> | -fipsKeyName <string>) [-keyForm (DER | PEM) {-PEMPassPhrase }] -countryName <string> -stateName <string> -organizationName <string> -organizationUnitName <string> -localityName <string> -commonName <string> -emailAddress <string> {-challengePassword } -companyName <string> -digestMethod ( SHA1 | SHA256 )

Ejemplo:

create ssl certreq priv_csr_sha256 -keyfile priv_2048_2 -keyform PEM -countryName IN -stateName Karnataka -localityName Bangalore -organizationName Citrix -organizationUnitName NS -digestMethod SHA256

Crear una solicitud de firma de certificado mediante la interfaz gráfica de usuario

  1. Vaya a Administración de tráfico > SSL.
  2. En Certificado SSL, haga clic en Crear solicitud de firma de certificado (CSR).
  3. En Método de resumen, seleccione SHA256.

Compatibilidad con el nombre alternativo del sujeto en una solicitud de firma de certificado

El campo de nombre alternativo del sujeto (SAN) de un certificado le permite asociar varios valores, como nombres de dominio y direcciones IP, con un único certificado. En otras palabras, puede proteger varios dominios, como www.example.com, www.example1.com, www.example2.com, con un solo certificado.

Algunos exploradores, como Google Chrome, ya no admiten nombres comunes en una solicitud de firma de certificados (CSR). Imponen SAN en todos los certificados de confianza pública.

El dispositivo Citrix ADC admite la adición de valores SAN al crear una CSR. Puede enviar una CSR con una entrada SAN a una entidad emisora de certificados para obtener un certificado firmado con la entrada SAN. Cuando el dispositivo recibe una solicitud, comprueba si hay un nombre de dominio coincidente en las entradas SAN del certificado del servidor. Si se encuentra una coincidencia, envía el certificado al cliente y completa el protocolo de enlace SSL. Puede usar la CLI o la GUI para crear una CSR con valores SAN.

Nota:

El dispositivo Citrix ADC procesa solo valores de SAN basados en DNS.

Cree una CSR con el nombre alternativo del sujeto mediante la CLI

create ssl certReq <reqFile> (-keyFile <input_filename> | -fipsKeyName <string>) [-subjectAltName <string>] [-keyform ( DER | PEM )  {-PEMPassPhrase }] -countryName <string> -stateName <string> -organizationName <string> [-organizationUnitName <string>] [-localityName <string>] [-commonName <string>] [-emailAddress <string>] {-challengePassword } [-companyName <string>] [-digestMethod ( SHA1 | SHA256 )]

Parámetros:

SubjetAltName: El nombre alternativo del sujeto (SAN) es una extensión a X.509 que permite asociar varios valores a un certificado de seguridad mediante un campo SubjetAltName. Estos valores se denominan “Nombres alternativos del sujeto” (SAN). Los nombres incluyen:

  1. Direcciones IP (Prefijo con “IP:” Ejemplo: IP:198.51.10.5 IP:192.0.2.100)

  2. Nombres DNS (Prefijo con “DNS:” Ejemplo: DNS:www.example.com DNS:www.example.org DNS:www.example.net)

En la CLI, introduzca valores entre comillas. Separe dos valores con un espacio. Las comillas no son necesarias en la GUI. Longitud máxima: 127

Ejemplo:

create certReq test1.csr -keyFile test1.ky -countryName IN -stateName Kar -organizationName citrix -commonName ctx.com -subjectAltName "DNS:*.example.com DNS:www.example.org DNS:www.example.net"

Nota:

En un dispositivo FIPS, debe reemplazar el nombre del archivo de clave por el nombre de clave FIPS si crea la clave FIPS directamente en el dispositivo.

create certReq <csrname> -fipsKeyName fipskey.ky -countryName IN -stateName Kar -organizationName citrix -commonName ctx.com -subjectAltName "DNS:www.example.com DNS:www.example.org DNS:www.example.net"

Crear una CSR mediante la interfaz gráfica de usuario

  1. Vaya a Administración de tráfico > SSL> Archivos SSL.
  2. En la ficha CSR, haga clic en Crear solicitud de firma de certificados (CSR).
  3. Introduzca los valores y haga clic en Crear.

Limitaciones

Para usar SAN al crear un certificado SSL, debe especificar explícitamente los valores de SAN. Los valores no se leen automáticamente desde el archivo CSR.

Enviar la CSR a la CA

La mayoría de los CA aceptan envíos de certificados por correo electrónico. La CA devolverá un certificado válido a la dirección de correo electrónico desde la que envíe el CSR.

Generar un certificado de prueba

Nota:

Para generar un certificado de prueba de servidor, consulte Generación de un certificado de prueba de servidor.

El dispositivo Citrix ADC tiene un conjunto de herramientas de CA integrado que puede utilizar para crear certificados autofirmados con fines de prueba.

Precaución: Dado que estos certificados están firmados por el propio dispositivo Citrix ADC, no por una CA real, no debe usarlos en un entorno de producción. Si intenta utilizar un certificado autofirmado en un entorno de producción, los usuarios reciben una advertencia de “certificado no válido” cada vez que se accede al servidor virtual.

El dispositivo admite la creación de los siguientes tipos de certificados

  • Certificados CA raíz
  • Certificados de CA intermedia
  • Certificados de usuario final
    • certificados de servidor
    • certificados de cliente

Antes de generar un certificado, cree una clave privada y úselo para crear una solicitud de firma de certificado (CSR) en el dispositivo. A continuación, en lugar de enviar la CSR a una CA, utilice las herramientas de CA de Citrix ADC para generar un certificado.

Crear un certificado mediante un asistente

  1. Vaya a Administración de tráfico > SSL.
  2. En el panel de detalles, en Introducción, seleccione el asistente para el tipo de certificado que desea crear.
  3. Siga las instrucciones que aparecen en pantalla.

Crear un certificado Root-CA mediante la CLI

En el símbolo del sistema, escriba el siguiente comando:

create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days <positive_integer>]

En el ejemplo siguiente, csreq1 es la CSR y rsa1 es la clave privada creada anteriormente.

Ejemplo:

create ssl cert cert1 csreq1 ROOT_CERT -keyFile rsa1 -keyForm PEM -days 365

  Done

Crear un certificado de CA intermedia mediante la CLI

create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days <positive_integer>] [-certForm ( DER | PEM )] [-CAcert <input_filename>] [-CAcertForm ( DER | PEM )] [-CAkey <input_filename>] [-CAkeyForm ( DER | PEM )] [-CAserial <output_filename>]

En el ejemplo siguiente, csr1 es la CSR creada anteriormente. Cert1 y rsakey1 son el certificado y la clave correspondiente del certificado autofirmado (Root-CA), y pvtkey1 es la clave privada del certificado Intermediate-CA.

Ejemplo:

create ssl cert certsy csr1 INTM_CERT -CAcert cert1 -CAkey rsakey1 -CAserial 23
Done

create ssl rsakey pvtkey1 2048 -exponent F4 -keyform PEM
Done

Cree un certificado Root-CA mediante la interfaz gráfica de usuario

Vaya a Administración del tráfico > SSL y, en el grupo Introducción, seleccione Asistente para certificados de CA raíz y configure un certificado de CA raíz.

Crear un certificado de CA intermedio mediante la interfaz gráfica de usuario

Vaya a Administración de tráfico > SSL y, en el grupo Introducción, seleccione Asistente para certificados de CA intermedia y configure un certificado de CA intermedio.

Crear un certificado de usuario final

Un certificado de usuario final puede ser un certificado de cliente o un certificado de servidor. Para crear un certificado de usuario final de prueba, especifique el certificado de CA intermedia o el certificado de CA raíz autofirmado.

Nota:

Para crear un certificado de usuario final para uso de producción, especifique un certificado de CA de confianza y envíe el CSR a una entidad emisora de certificados (CA).

Crear un certificado de usuario final de prueba mediante la interfaz de línea de comandos

create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days<positive_integer>] [-certForm ( DER | PEM )] [-CAcert <input_filename>] [-CAcertForm ( DER | PEM )] [-CAkey<input_filename>] [-CAkeyForm ( DER | PEM )] [-CAserial <output_filename>]

Si no hay ningún certificado intermedio, utilice los valores de certificado (cert1) y clave privada (rsakey1) del certificado Root-CA en Cacert y CaKey.

Ejemplo:

create ssl cert cert12 csr1 SRVR_CERT -CAcert cert1 -CAkey rsakey1 -CAserial 23

Done

Si hay un certificado intermedio, utilice los valores de certificado (certsy) y clave privada (pvtkey1) del certificado intermedio en Cacert y CaKey.

Ejemplo:

create ssl cert cert12 csr1 SRVR_CERT -CAcert certsy -CAkey pvtkey1 -CAserial 23

Done