Estoy trabajando con Apache2 y Passenger para un proyecto Rails. Me gustaría crear un certificado SSL autofirmado para fines de prueba.
sudo openssl rsa -des3 -in server.key -out server.key.new
Cuando ingreso el comando anterior, dice
writing RSA key
Enter PEM pass phrase:
Si no ingreso el phrse de paso, obtengo el siguiente error
unable to write key
3079317228:error:28069065:lib(40):UI_set_result:result too small:ui_lib.c:869:Yo
u must type in 4 to 1024 characters
3079317228:error:0906406D:PEM routines:PEM_def_callback:problems getting passwor
d:pem_lib.c:111:
3079317228:error:0906906F:PEM routines:PEM_ASN1_write_bio:read key:pem_lib.c:382
¿Es posible generar una clave RSA sin dar pass phrase, ya que no estoy seguro de cómo el /etc/init.d/httpdscript iniciará el servidor HTTP sin intervención humana (es decir, si doy una frase de paso de 4 caracteres, se espera que proporcione esto al iniciar el servidor HTTP Apache )

opensslque encripte una clave existente. Eso suena como algo diferente a lo que quieres.Respuestas:
Si está generando un certificado autofirmado, puede hacer la clave y el certificado en un comando de la siguiente manera:
Ah, y lo que dijo @MadHatter en su respuesta sobre omitir la
-des3bandera.fuente
Deje la
-des3marca, que es una instrucción para openssl para cifrar server.key.new (que, por cierto, no es una clave nueva, es exactamente lo mismo que server.key, solo con la frase de contraseña modificada / eliminada) .fuente
El
openssl reqcomando de la respuesta de @Tom H es correcto para crear un certificado autofirmado enserver.certincl. una clave privada RSA sin contraseña enserver.key:Así es como funciona. Omitir
-des3como en la respuesta de @MadHatter no es suficiente en este caso para crear una clave privada sin frase de contraseña. Que es suficiente para este propósito en elopenssl rsacomando ( "convertir una clave privada") se refiere por @MadHatter y elopenssl genrsacomando ( "crear una clave privada"). Simplemente no para elopenssl reqcomando aquí. También necesitamos-nodes("¡Sin cifrado DES porserver.keyfavor!").fuente
Utilice el
-nodesparámetro, si se especifica esta opción, la clave privada no se cifrará, por ejemplo:fuente
Simplemente ejecútalo de nuevo a través de openssl
primero genera la clave con la frase de contraseña
entonces
openssl rsa -in server.key -out server.keyfuente
opensslPor lo tanto, lograr el objetivo de lo que se pidió: generar una clave sin una frase de contraseña.opensslen Windows 10 de GitBash. Gracias por la información.Use el siguiente comando para generar un archivo de clave privada sin contraseña sin cifrado . El último parámetro es el tamaño de la clave privada.
fuente
4096 -des3con4096 -sillywombaty todavía funciona y produce el mismo formato, aún sin cifrar (pero un valor clave diferente, por supuesto). No hay forma de tener un archivo de clave privada encriptada sin contraseña, y las soluciones correctas para un archivo sin encriptar sin contraseña se dieron hace seis años.