¿Cómo crear un certificado usando OpenSSL desde PowerShell sin que el usuario solicite una frase de contraseña?

¿Cómo crear un certificado usando OpenSSL desde PowerShell sin que el usuario solicite una frase de contraseña?

Estoy configurando una VDI de desarrollo y necesito automatizar la creación de algunos certificados para acceder a los sitios web https://{foo}.local (127.0.0.1) durante el desarrollo y las pruebas.

Solo puedo usar OpenSSL y PowerShell y debe estar desatendido; necesito ejecutar esto para automatizar la configuración de una VDI de desarrollador, por lo que no puedo recibir mensajes de usuario.

Encontré mucho código con el siguiente tipo de ejemplo, pero no puedo encontrar una manera de pasar la frase de contraseña para usar;

esto es lo que tengo hasta ahora...

openssl 
   req -x509 -newkey rsa:4096 -keyout 
   openssl.key -out openssl.crt -subj /CN=website.name 
   -days 300

A esto le seguiría la creación del certificado real.

openssl pck12 -export .... etc

Como mencioné, necesito poder proporcionar una frase de contraseña para que lo anterior se ejecute sin la intervención del usuario. El código anterior se ejecuta como se esperaba, solo ... activa la solicitud de contraseña.

Probé varias configuraciones -passin {xyz}incluso -password pass:mysecrety otras, sin éxito.

¿Algunas ideas? Txs, A

Respuesta1

Agregue el parámetro -nodesa su comando openssl.

openssl 
   req -x509 -newkey rsa:4096 -nodes -keyout 
   openssl.key -out openssl.crt -subj /CN=website.name 
   -days 300

Esto omitirá el cifrado de la clave privada. No se le solicitará una frase de contraseña.

información relacionada