openssl https openssl 证书生成

一、生成pem格式的证书和nodejs加载证书

1.输入如下命令生成证书

openssl genrsa 1024 > key.pem


设置密码加密
openssl genrsa -des3 1024 > key.pem


2.输入如下命令生成安全证书

openssl req -x509 -days 365 -new -key key.pem > cert.pem

按照提示输入证书相应的信息

如果证书设置有密码,在nodejs中加载时,需要输入密码

var privateKey  = fs.readFileSync('./Data/key.pem', 'utf8');
var certificate = fs.readFileSync('./Data/cert.pem', 'utf8');
var credentials = {key: privateKey, cert: certificate,passphrase:"111111"};

------------------------------------------------------------------------------------------------------------------------------------

二、生成crt和key证书文件

1.使用openssl 生成sha256的证书,私有 privatekey.key,数字证书 certificate.crt

openssl req -x509 -nodes -sha256 -days 365 -newkey rsa:1024 -keyout privatekey.key -out certificate.crt

注意:在Organizational Unit Name 和 Common Name 中输入对于的域名

2.设置privatekey.key密码

openssl genrsa -des3 1024 > privatekey.key

三、一个证书增加多个备用域名DNS

1.修改openssl.cnf中的配置信息,

开启 req_extensions = v3_req 

2.在v3_req中增加:

[ v3_req ]


# Extensions to add to a certificate request


basicConstraints = CA:FALSE
keyUsage = nonRepudiation, digitalSignature, keyEncipherment

#增加的内容
subjectAltName = @alt_names

[ alt_names ]
DNS.1 = *.cloudgis.wh
DNS.2 = thor.arcgiscloud.com
DNS.3 =*.kxyt.com

3.重新生成多DNS的 crt和key证书

openssl req -x509 -nodes -sha256 -days 365 -newkey rsa:1024 -keyout privatekey.key -out certificate.crt-extensions v3_req -config openssl.cnf

四、将crt和key证书转换为Java keystore证书

1.将crt和key证书合并到 p12证书文件中,并输入p12证书密码(如:123456),在下面转换keystore证书和tomcat配置https时需要用到:

openssl pkcs12 -export -in certificate.crt -inkey privatekey.key -out mycert.p12

2.将p12证书转换为 tomcat.keystore文件

keytool -importkeystore -v  -srckeystore mycert.p12 -srcstoretype pkcs12 -srcstorepass 123456 -destkeystore tomcat.keystore -deststoretype jks -deststorepass 123456

即实现多种语言之间的证书共用,以及多个域名共用一个证书!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一醉千秋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值