Is there a way to make openssl skiping the prompts such as
Country Name (2 letter code) [US]: Organization Name (eg, company) [My Company Name LTD.]: Common Name (eg, YOUR name) [something]:
While creating certificates with
openssl req -config openssl.cnf -new -x509 ...
given the fact those parameters are provided in the openssl.cnf
file
e.g.
countryName = Country Name (2 letter code) countryName_default = US countryName_min = 2 countryName_max = 2 0.organizationName = Organization Name (eg, company) 0.organizationName_default = My Company Name LTD. commonName = Common Name (eg, YOUR name) commonName_max = 64 commonName_default = ${ENV::CN}
DESCRIPTION. The req command primarily creates and processes certificate requests in PKCS#10 format. It can additionally create self signed certificates for use as root CAs for example.
OpenSSL is an open-source command line tool that is commonly used to generate private keys, create CSRs, install your SSL/TLS certificate, and identify certificate information.
The x509 command is a multi purpose certificate utility. It can be used to display certificate information, convert certificates to various forms, sign certificate requests like a "mini CA" or edit certificate trust settings. Since there are a large number of options they will split up into various sections.
thanks to @indiv
according to this guide -subj
is the way to go, e.g.
-subj '/CN=www.mydom.com/O=My Company Name LTD./C=US'
Another solution consists of using the prompt = no
directive in your config file.
See OpenSsl: Configuration file format
prompt
if set to the value
no
this disables prompting of certificate fields and just takes values from the config file directly. It also changes the expected format of thedistinguished_name
andattributes
sections.
There are two separate formats for the
distinguished name
andattribute
sections.
If the prompt option is set to
no
then these sections just consist of field names and values: for example,
CN = My Name OU = My Organization emailAddress = [email protected]
This allows external programs (e.g. GUI based) to generate a template file with all the field names and values and just pass it to
req
.
Alternatively if the prompt option is absent or not set to no then the file contains field prompting information. It consists of lines of the form:
fieldName="prompt" fieldName_default="default field value" fieldName_min= 2 fieldName_max= 4
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With