Gibt es eine Möglichkeit, SSL-Zertifikatsanforderungen zu erstellen, indem alle erforderlichen Parameter im anfänglichen Befehl angegeben werden? Ich schreibe ein CLI-basiertes Webserver-Control-Panel und möchte die Verwendung von expect bei der Ausführung openssl
nach Möglichkeit vermeiden .
Dies ist eine typische Methode zum Erstellen einer Zertifizierungsanforderung:
$ openssl req -new -newkey rsa:2048 -nodes -sha256 -keyout foobar.com.key -out foobar.com.csr
Generating a 2048 bit RSA private key
.................................................+++
........................................+++
writing new private key to 'foobar.com.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:New Sweden
Locality Name (eg, city) []:Stockholm
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Scandanavian Ventures, Inc.
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:foobar.com
Email Address []:gustav@foobar.com
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:FooBar
Ich hoffe, so etwas zu sehen: (funktionsloses Beispiel)
$ openssl req -new -newkey rsa:2048 -nodes -sha256 -keyout foobar.com.key -out foobar.com.csr \
-Country US \
-State "New Sweden" \
-Locality Stockholm \
-Organization "Scandanavian Ventures, Inc." \
-CommonName foobar.com \
-EmailAddress gustav@foobar.com \
-Company FooBar
Die feine Manpage hatte dazu nichts zu sagen, noch konnte ich über Google etwas finden. Muss die Generierung von SSL-Zertifikatsanforderungen ein interaktiver Prozess sein oder gibt es eine Möglichkeit, alle Parameter in einem einzigen Befehl anzugeben?
Dies läuft auf einer von Debian abgeleiteten Linux-Distribution openssl 1.0.1
.
openssl
Flaggen dokumentiert? ב) Wonach haben Sie bei Google gesucht? Vielen Dank!
-subj
Parameter ist (nicht sehr detailliert) unter openssl.org/docs/apps/req.html dokumentiert .
openssl.cnf
.