Genere el certificado SSL personalizado (de propia firma)
Genere el certificado de firma propia mediante PowerShell de Windows
Genere un certificado SSL personalizado, e impórtelo a los almacenes imprescindibles en Windows Server 2012 R2.
1.Abra Windows PowerShell.
2.Ejecute los siguientes comandos:
a.$customcertificate = New-SelfSignedCertificate -DnsName "<FQDN>" -CertStoreLocation "cert:\localmachine\my"
En el comando anterior, reemplace <FQDN> por la versión del nombre de asunto correspondiente que se muestra en ESA Web Console en Components > Invitations > Server access.
Si define múltiples DnsNames, por ejemplo:
-DnsName "my.esa.installation.com", "my.authentication.server", "twofactor.auth"
La primera entrada ("my.esa.installation.com" en el ejemplo anterior) se utilizará en el campo Subject y las entradas posteriores se utilizan en el campo Subject Alternative Name del certificado.
b.$exportpassword = ConvertTo-SecureString -String '<password>' -Force -AsPlainText
En el comando anterior, reemplace la <password> por la contraseña que elija.
c.$certPath = 'cert:\localMachine\my\' + $customcertificate.thumbprint
d.Export-PfxCertificate -cert $certPath -FilePath $env:USERPROFILE\Desktop\ESAcustomCertificate.pfx -Password $exportpassword
Este comando final colocará al certificado ESAcustomCertificate.pfx en su escritorio.
3. Presione la tecla Windows + R para abrir el diálogo Ejecutar.
4.Agregue la extensión del certificado:
a.Escriba mmc y presione Enter.
b.Haga clic en Archivo -> Agregar/Eliminar extensión
c.Seleccione Certificados > Agregar.
d.Seleccione Cuenta de equipo, haga clic en Siguiente y luego en Finalizar. Haga clic en Aceptar para cerrar la ventana Agregar o eliminar extensión.
5.Importar el certificado aplicable:
a.En el panel izquierdo de MMC, expanda Certificates (Local Computer) > Personal, y haga clic con el botón secundario en Certificates.
b.Seleccione All Tasks > Import.
c.En el Asistente de importación, haga clic en Siguiente, luego en Explorar. En el menú desplegable de extensiones de archivos, seleccione Intercambio de información personal (*.pfx, *.p12), ubique el archivo del certificado exportado, haga clic en Abrir y luego en Siguiente.
d.Ingrese la contraseña utilizada en el segundo comando anterior y haga clic en Siguiente.
e.Seleccione Colocar todos los certificados en el siguiente almacén y coloque el nombre de almacén "Personal". Haga clic en Siguiente y luego en Finalizar.
6.En el panel izquierdo de la MMC expanda Certificados (equipo local) > Autoridades de certificación raíz de confianza y haga clic con el botón derecho en Certificados.
7.Seleccione All Tasks > Import, y repita los pasos 6a a 6c.
8.Haga doble clic en el certificado en Certificates (Local Computer) > Personal > Certificates y asegúrese de que se muestre la línea You have a private key that corresponds to this certificate.
Si necesita una archivo .crt y .key en lugar de .pfx, convierta el archivo .pfx a .crt y .key con OpenSSL u otro método preferido.
Convertir .pfx a .crt, .key con OpenSSL
Verifique que OpenSSL para Windows esté instalado y ejecute los siguientes comandos.
openssl pkcs12 -in D:\ESAcustomCertificate.pfx -clcerts -nokeys -out D:\ESAcustomCertificate.crt |
Cuando se muestra Ingresar contraseña de importación, escriba la contraseña que se definió en el comando Export-PfxCertificate al generar el certificado a través de PowerShell de Windows.
openssl pkcs12 -in D:\ESAcustomCertificate.pfx -nocerts -out D:\ESAcustomCertificate_encrypted.key |
En Ingresar contraseña PEM, defina una nueva contraseña de al menos cuatro caracteres.
openssl rsa -in D:\ESAcustomCertificate_encrypted.key -out D:\ESAcustomCertificate.key |
Cuando se solicite, ingrese la misma contraseña que definió en Ingresar contraseña PEM.
Generar el certificado de firma propia mediante OpenSSL
Verifique que OpenSSL para Windows esté instalado.
Crear un archivo de configuración
Para evitar una advertencia de «Certificado inválido", el archivo sESSAcustomCertificate.conf debe incluir la lista de nombes DNS alternativos por medio de los cuales estará disponible el Authentication Server. El comando mencionado arriba generará archivos newKey.rsa y newCertificate.crt.
Contenido de muestra del archivo ESAcustomCertificate.conf:
[ req ] default_bits = 4096 distinguished_name = req_distinguished_name req_extensions = req_ext x509_extensions = x509_ext
[ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = SK stateOrProvinceName = State or Province Name (full name) stateOrProvinceName_default = Slovakia localityName = Locality Name (eg, city) localityName_default = Bratislava organizationName = Organization Name (eg, company) organizationName_default = My company running ESA commonName = Common Name (e.g. server FQDN) commonName_default = my.esa.installation.com
[ req_ext ] subjectAltName = @alternative_names
[ x509_ext ] subjectAltName = @alternative_names
[alternative_names] DNS.1 = my.esa.installation.com DNS.2 = my.authentication.server DNS.3 = twofactor.auth DNS.4 = 192.168.0.1 IP.1 = 192.168.0.1 |
Genere un certificado y una clave OpenSSL con la línea de comandos de Windows.
openssl req -config D:\ESAcustomCertificate.conf -new -x509 -sha256 -newkey rsa:2048 -nodes -keyout D:\ESAcustomCertificate.key -days 365 -out D:\ESAcustomCertificate.crt |
Si commonName se preconfiguró correctamente en el archivo de configuración, presione Intro cuando se muestre el aviso de CommonName.