OpenSSL ofrece la posibilidad de generar un CSR (Certificate Signing Request) a partir de un archivo de configuración. Esto es útil tanto para automatización como para forzar a quien genera el CSR a utilizar determinados parámetros y datos.
A continuación podéis observar un ejemplo básico de como sería un archivo de configuración para la generación de un CSR con OpenSSL:
[ req ] default_bits = 2048 default_md = sha512 default_keyfile = foo.com.key prompt = no encrypt_key = no distinguished_name = req_distinguished_name # distinguished_name [ req_distinguished_name ] countryName = "ES" localityName = "Madrid" organizationName = "foo company" organizationalUnitName = "foo Department" commonName = "foo.com" emailAddress = "foo@domain.com"
De este modo, cuanto generamos la private key y el CSR, se utilizan todos los datos especificados en el archivo de configuración csr.conf
. La sintaxis de OpenSSL es la siguiente:
$ openssl genrsa -out foo.com.key 2048 $ openssl req -config csr.conf -new -key foo.com.key -out foo.com.csr -verbose
En el sitio web oficial de OpenSSL encontraréis la página man del archivo de configuración con más ejemplos y detalle del significado de cada parámetro.