Openssl Generate New Certificate And Key
In this article you’ll find how to generate CSR (Certificate Signing Request) using OpenSSL from the Linux command line, without being prompted for values which go in the certificate’s subject field.
Below you’ll find two examples of creating CSR using OpenSSL.
- Generate a SSL Key File. Firstly you will need to generate a key file. The example below will generate a 2048 bit key file with a SHA-256 signature. Openssl genrsa -out keyname.key 2048. If you want extra security you could increase the bit lengths. Openssl genrsa -out keyname.key 4096.
- How to Generate a Self-Signed Certificate and Private Key using OpenSSL Generating a private key and self-signed certificate can be accomplished in a few simple steps using OpenSSL. We provide here detailed instructions on how to create a private key and self-signed certificate valid for 365 days.
- You can use the OpenSSL toolkit to generate a key file and Certificate Signing Request (CSR) which can then be used to obtain a signed SSL certificate. Steps to generate a key and CSR. To configure Tableau Server to use SSL, you must have an SSL certificate. To obtain the SSL certificate, complete the steps: Set the OpenSSL configuration environment variable (optional). Generate a key file. Create a Certificate.
In the first example, i’ll show how to create both CSR and the new private key in one command.
Steps to create RSA private key, self-signed certificate, keystore, and truststore for a client. Generate a private key. Openssl genrsa -out diagclientCA.key 2048 Create a x509 certificate. Openssl req -x509 -new -nodes -key diagclientCA.key -sha256 -days 1024 -out diagclientCA.pem Create PKCS12 keystore from private key and public certificate. Files pc watch dogs key generator.
And in the second example, you’ll find how to generate CSR from the existing key (if you already have the private key and want to keep it).
Both examples show how to create CSR using OpenSSL non-interactively (without being prompted for subject), so you can use them in any shell scripts.
Create CSR and Key Without Prompt using OpenSSL
Use the following command to create a new private key 2048 bits in size example.key
and generate CSR example.csr
from it:
Option | Description |
---|---|
openssl req | certificate request generating utility |
-nodes | if a private key is created it will not be encrypted |
-newkey | creates a new certificate request and a new private key |
rsa:2048 | generates an RSA key 2048 bits in size |
-keyout | the filename to write the newly created private key to |
-out | specifies the output filename |
-subj | sets certificate subject |
Generate CSR From the Existing Key using OpenSSL
Use the following command to generate CSR example.csr
from the private key example.key
:
Option | Description |
---|---|
openssl req | certificate request generating utility |
-new | generates a new certificate request |
-key | specifies the file to read the private key from |
-out | specifies the output filename |
-subj | sets certificate subject |
Automated Non-Interactive CSR Generation
The magic of CSR generation without being prompted for values which go in the certificate’s subject field, is in the -subj
option.
-subj arg | Replaces subject field of input request with specified data and outputs modified request. The arg must be formatted as /type0=value0/type1=value1/type2=…, characters may be escaped by (backslash), no spaces are skipped. |
The fields, required in CSR are listed below:
Field | Meaning | Example |
---|---|---|
/C= | Country | GB |
/ST= | State | London |
/L= | Location | London |
/O= | Organization | Global Security |
/OU= | Organizational Unit | IT Department |
/CN= | Common Name | example.com |
You’ve created encoded file with certificate signing request.
Now you can decode CSR to verify that it contains the correct information.