linux环境下生成ssl还是比较方便的。
# 1、使用openssl工具生成一个RSA私钥;需要提供一个至少4位,最多1023位的密码
openssl genrsa -des3 -out nginx.key 2048
# 2、生成CSR(证书签名请求);需要依次输入国家,地区,城市,组织,组织单位,Common Name和Email
openssl req -new -key nginx.key -out nginx.csr
# 3、删除密钥中的密码,如果不删除密码,在应用加载的时候会出现输入密码进行验证的情况,不方便自动化部署。
openssl rsa -in nginx.key -out nginx.key
# 4、生成自签名证书;内部或者测试使用,只要忽略证书提醒就可以了。
openssl x509 -req -days 365 -in nginx.csr -signkey nginx.key -out nginx.crt
# 5、生成pem格式的公钥;有些服务,需要有pem格式的证书才能正常加载,可以用下面的命令
openssl x509 -in nginx.crt -out nginx.pem -outform PEM
这个生成的密钥可以在nginx中使用,主要便是因为“第三”步中将密码删除了,所有配置后可以直接使用。
参考文档:使用openssl生成https证书