Data Domain: Generación de CSR fuera de DD
Summary: En este artículo de la base de conocimientos, se explica cómo usar un sistema externo para crear una solicitud de firma de certificado y crear un certificado firmado por una CA externa, de modo que el certificado resultante se pueda importar en Data Domain para su uso en HTTP (GUI de DD mediante SSL) ...
Instructions
En la mayoría de los casos, es conveniente utilizar este artículo de la base de conocimientos para generar la CSR y para importar los certificados:
Data Domain: administración de certificados de host para HTTP y HTTPS
En raras ocasiones, este artículo de la base de conocimientos se utiliza cuando no se puede generar la CSR en el propio DD.
La importación de un certificado firmado por una CA permite el acceso HTTPS a Data Domain System Manager sin tener que omitir las comprobaciones del navegador para los certificados no firmados por un tercero de confianza. Una vez que se establece la primera conexión SSL a la GUI de DD, el tráfico está protegido por igual contra la interceptación mediante un certificado firmado externamente o autofirmado. La empresa puede requerir que todos los hosts con acceso SSL tengan certificados firmados por la CA interna o una CA externa, para generar confianza.
Para crear este certificado firmado externamente, existen varios enfoques. Lo que recomendamos con DD OS 6.2.0.35 y versiones posteriores es aprovechar el comando "adminaccess certificate cert-signing-request generate" de la CLI de DD para crear una solicitud de firma de certificado (CSR), que se enviará a la CA elegida para la firma. A continuación, el certificado firmado se importa en DD para HTTPS. Todos los detalles se ven en el artículo de la base de conocimientos Data Domain: Cómo generar una solicitud de firma de certificado y usar certificados firmados externamente
El otro enfoque sería usar un host independiente en la red con un conjunto reciente de bibliotecas y archivos binarios de OpenSSL instalados para generar la CSR que se firmará. Una vez que se obtiene el certificado firmado, el bit del certificado firmado y la clave privada asociada del certificado se transfieren e importan manualmente a DD. Este proceso es el siguiente:
-
Inicie sesión en Linux, UNIX u otro servidor con OpenSSL instalado y genere primero un par de claves pública/privada. DD genera claves de 2048 bits de manera predeterminada, no se recomiendan claves de 1024 bits y las claves de 4096 bits son quizás demasiado:
# openssl genrsa -out hostkey.pem 2048 Generating RSA private key, 2048 bit long modulus ........+++ ...+++ e is 65537 (0x10001)
-
Genere una solicitud de firma de certificado (CSR) mediante la clave privada generada en el primer paso y proporcione detalles en la CSR que se va a firmar, como nombre común, dirección de correo electrónico, país y ciudad, etc.
# openssl req -new -sha256 -key hostkey.pem -out host_csr.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:US State or Province Name (full name) [Some-State]:California Locality Name (eg, city) []:San Francisco Organization Name (eg, company) [Internet Widgits Pty Ltd]:Example Inc. Organizational Unit Name (eg, section) []:IT Department Common Name (e.g. server FQDN or YOUR name) []:www.example.com Email Address []:webmaster@example.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:
Tenga en cuenta que, en la mayoría de las instalaciones de OpenSSL , la extensión "subjectAltName", que es un requisito obligatorio según RFC 3280, no se agrega a la CSR ni se solicita. Es posible que algunas CA públicas y privadas se nieguen a procesar la CSR debido a la falta de esta extensión. En el caso de un certificado de DD utilizado para la GUI, el "subjectAltName" debe ser el nombre de dominio calificado para DD cuando se accede desde el navegador.
Para especificar un "subjetAltName" al crear la CSR, si utiliza OpenSSL 1.1.1, esto se puede hacer desde la misma línea de comandos "OpenSSL". De lo contrario, esto implica cambiar /etc/ssl/openssl.cnf, lo cual está fuera del alcance de este documento. Si utiliza OpenSSL 1.1.1 o posterior:
# openssl version OpenSSL 1.1.1 11 Sep 2018 # openssl req -new -sha256 -key hostkey.pem -out host_csr.csr -addext "subjectAltName = DNS:www.example.com" You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:US State or Province Name (full name) [Some-State]:California Locality Name (eg, city) []:San Francisco Organization Name (eg, company) [Internet Widgits Pty Ltd]:Example Inc. Organizational Unit Name (eg, section) []:IT Department Common Name (e.g. server FQDN or YOUR name) []:www.example.com Email Address []:webmaster@example.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:
-
Obtenga el archivo CSR "host_csr.csr" y cárguelo en la CA correspondiente para su firma. Si la CA es interna, entréguesela al administrador de la CA o fírmela a través del proceso normal (que necesitaría usar una línea de comandos como la que se muestra a continuación):
# openssl x509 -req -in host_csr.csr -CA CA/cacert.pem -CAkey CA/cakey.pem -out host_cert.pem -CAcreateserial Signature ok subject=/C=CH/ST=California/L=San Francisco/O=Example Inc./OU=IT Department/CN=www.example.com/emailAddress=webmaster@example.com Getting CA Private Key
# openssl x509 -in host_cert.pem -text -noout | grep -A1 "Subject Alternative Name" X509v3 Subject Alternative Name: DNS:www.example.com
- En cualquier caso, el resultado suele ser un archivo de certificado codificado en .pem o .cer ("host_cert.pem" en el ejemplo). Para que el certificado se importe en DD, se debe incluir en un formato PKCS#12 junto con la clave (privada) generada en el primer paso. Desde el mismo host donde se ejecutó el primer paso:
# openssl.exe pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -out host.p12 -inkey hostkey.pem -in host_cert.pem Enter Export Password: Verifying - Enter Export Password:
Es fundamental establecer una contraseña para el archivo PKCS#12; de lo contrario, la importación del certificado fallará en Data Domain. La contraseña no se solicitará cuando se utilice Data Domain normalmente después de que se haya instalado la certificación. Los argumentos '-keypbe PBE-SHA1-3DES' y '-certpbe PBE-SHA1-3DES' son para garantizar que se utilice el algoritmo compatible de "PBE-SHA1-3DES" cuando se modifica la CA. Esto evitará que el usuario final reciba un error cuando intente importar su certificado firmado.
-
Copie el archivo de certificado "host.p12" resultante en el directorio "/ddr/var/certificates/" en Data Domain (por ejemplo, mediante SCP en DD).
- Antes de importar el certificado generado y firmado externamente a Data Domain, confirme que Data Domain no tenga una CSR existente. Data Domain intentará hacer coincidir el certificado importado con cualquier CSR del sistema y, si existe, no coincidirá y se negará a cargar el certificado importado con el siguiente mensaje de error:
Imported host certificate does not match the generated CSR
Verifique si hay una CSR existente en el sistema:
# adminaccess certificate cert-signing-request show
Si hay una CSR existente, proceda a eliminarla antes de continuar o, de lo contrario, la importación del certificado fallará:
# adminaccess certificate cert-signing-request delete
-
Importe el nuevo certificado desde la CLI. Proporcione la contraseña utilizada para crear PKCS#12 en el paso anterior y utilice "application https" a fin de utilizar el certificado importado para la GUI de DD System Manager o DDMC:
# adminaccess certificate import host application https file host.p12 Enter password: ** Importing the certificate will restart the http/https services and currently active http/https user sessions will be terminated. Do you want to import this certificate? (yes|no) [yes]: yes Host certificate imported for applications(s) : "https".
Nota: "adminaccess certificate show" ahora debería indicar un certificado de host importado para HTTPS. El certificado autofirmado predeterminado para https se marcará como No se está utilizando.
Additional Information
| https://downloads.dell.com/TranslatedPDF/PT-BR_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/ZH-CN_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/ES_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/DE_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/FR_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/IT_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/JA_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/NL_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/KO_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/RU_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/PT_KB533409.pdf |
| https://downloads.dell.com/TranslatedPDF/SV_KB533409.pdf |