- Use
openssl - Generate a private key (
server.key):openssl genrsa -out server.key 2048 - Generate a Certificate Signing Request (
server.csr):openssl req -new -key server.key -out server.csr
- Use Common Name:
localhostorrhypt.com
- [Only for 1 https] Generate Self-Signed certificate (
server.crt):openssl -x509 -req -days 365 -in server.csr -signkey certificate.key -out server.crt) - [For multiple https] Use CA signed certificate:
open -x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 365 -sha256
- Generate a private key (
ca.key):openssl genrsa -out ca.key 4096 - Create a CA Certificate (
ca.crt):openssl req -x509 -new -nodes -key ca.key -sha256 -days 356 -out ca.crt
openssl verify -CAfile ca.crt server.crt
- Let's encrypt: Open Source
- DigiCert
.crtpublic certificate to prove the server's identity to clients.ca-bundlecertificate authority bundle: chain to verfy the server certificate to a trusted authority.p7bPKCS# certificate: chaine to verfy the server certificate to a trusted authority (you can convert it to.pem)
- Convert
.p7b->.pemopenssl pkcs7 -print_certs -in <your_certificate>.p7b -out <combined_certificates>.pem - Combine
.crtand.ca-bundle->.pemcat <certificate>.crt <ca-bundel>.crt > <combined>.pem