配置并生成 ssl 证书
- 建立服务器私钥(过程需要输入密码,请记住这个密码)生成RSA密钥
openssl genrsa -des3 -out server.key 2048
openssl req -new -key server.key -out server.csr
输入密码后依次需要输入以下:
CN=commonName(通用名)
OU=organizationUnit(组织部门名)
O=organizationName(组织名)
L=localityName(域名)
ST=stateName(州名-城市名)
C=country(国家)
openssl req -text -noout -in server.csr
- 加载SSL支持的Nginx并使用上述私钥时除去必须的口令
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
- 使用密钥和CSR对证书进行签名(以下命令生成的是v1版本的证书)
openssl x509 -req -days 365 -sha256 -in server.csr -signkey server.key -out server.crt
生成 v3 版本的证书
openssl version -d //查看 openssl.cnf 文件存放位置
nano openssl.cnf的文件路径 //配置文件
末尾添加以下代码:
[ alt_names ]
DNS.1 = 域名
IP.1 = ip地址
- v3_req 中添加 subjectAltName = @alt_names,需要添加
subjectAltName = @alt_names
才会把上面的配置添加到证书
sed -i '/\[ v3_req \]/asubjectAltName = @alt_names' /etc/pki/tls/openssl.cnf
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt -extfile /etc/pki/tls/openssl.cnf -extensions v3_req