comandos de generación de certificados openssl [duplicado]

14

Estoy haciendo un certificado autofirmado con OpenSSL. Quiero hacer el certificado de una sola vez, significa que no me va a pedir la entrada de Nombre de la empresa, nombre común, etc, etc ¿Hay alguna forma de hacer esto como un ejemplo del interruptor /noprompto cualquier otra a través del cual puede introducir mis todos los campos en una ida. ¿Es posible que el siguiente comando tome todos los argumentos en esta llamada que toma después de presionar enter

openssl x509 -req -days 30 -in request.pem -signkey key.pem -out certificate.pem

fuente

Respuestas:

25

Editar: esta pregunta se cerró como un duplicado de OpenSSL sin solicitud . Vea mi respuesta aceptada allí también. Esta respuesta ahora también se ha actualizado con una variante ECDSA. Si puede usar ECDSA, debería hacerlo.

Debe especificar el tema como parte de su comando.

Este comando es un paso, no interactivo, creación de certificado autofirmado.

Versión RSA

openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 \
    -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" \
    -keyout www.example.com.key \
    -out www.example.com.cert

Versión ECDSA

openssl req -new -newkey ec -pkeyopt ec_paramgen_curve:prime256v1 \
    -days 365 -nodes -x509 \
    -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" \
    -keyout www.example.com.key \
    -out www.example.com.cert
bahamat
fuente
2
Brillante. No sabía sobre el componente no interactivo y es exactamente lo que necesito para aprovisionar una VM Vagrant.
Rob Wilkerson
Lo mismo, quiero certs automatizados para Vagrant.
Richard Clayton
0

Puede llenar un archivo de antemano para automatizar el proceso de creación de certificados, en la sección denominada:

"Ejemplo de archivo de configuración que solicita valores de campo"

Enlace: http://www.openssl.org/docs/apps/req.html#EXAMPLES

Shadok
fuente
Incluso con ese archivo, el usuario aún debe presionar la tecla de retorno para confirmar cada valor automatizado
Gearoid Murphy