Whenever I create an SSL Certificate, I find myself going back and forth between several pages of notes. I’m about to do this with a half-dozen certs that were generated on a Debian box with weak keys. Here are the OpenSSL commands I find most useful:
Create a new key:
openssl genrsa -out MYDOMAIN.COM.key 2048
Remove the Pass Phrase from an existing key:
openssl rsa -in MYDOMAIN.COM.key.withpassword -out MYDOMAIN.COM.key
Create a Certificate Signing Request (CSR):
openssl req -new -key YOURDOMAIN.COM.key -out YOURDOMAIN.COM.csr
Inspect your CSR (or a previous one to copy values out of):
openssl req -noout -text -in MYDOMAIN.COM.csr
Self-Sign a Certificate
openssl x509 -req -days 3650 -in MYDOMAIN.COM.csr \ -signkey MYDOMAIN.COM.key \ -out MYDOMAIN.COM.crt
Inspect a certificate
openssl x509 -in MYDOMAIN.COM.crt -text | head -n 12