miércoles, 23 de junio de 2021

Generar certificado autofirmado con openssl



Cómo generar un certificado crt autofirmado con openssl.



Si necesitamos generar un certificado autofirmado, podemos usar openssl:

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 365

Esto generará dos archivos:

- key.pem: la clave privada del certificado.
- cert.pem: la clave pública del certificado.

Asimismo, se puede añadir la opción -nodes (no DES) al comando anterior si se quiere generar una clave privada sin passphrase o contraseña. De otro modo, tendremos que asignar una contraseña a la clave privada tras ejecutar el comando.

El parámetro "days" puede contener el número de días de validez que queramos. Ese número de días generará implícitamente la fecha de expiración del certificado.

Se pueden añadir opciones como -subj '/CN=localhost' para insertar información automáticamente en el crt y no mostrar preguntas sobre el creador del certificado durante la creación.

Por ejemplo:

openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -nodes \ -keyout example.key -out example.crt -subj "/CN=example.com" \ -addext "subjectAltName=DNS:example.com,DNS:www.example.net,IP:10.0.0.1"

Hay que destacar que los certificados autofirmados no están validados por una entidad certificadora reconocida, por lo que mostrarán un mensaje de advertencia en los navegadores.

Si se necesita que un certificado sea aceptado por cualquier navegador, se debe usar un certificado de pago firmado por una autoridad certificadora (CA) reconocida, como GoDaddy.
1

1 comentario: