Private Key
注意,以下所有操作都在同一个目录下执行
- 创建一个私钥
1 | openssl genrsa -des3 -out ca.key 2048 |
Public Key
- 生成CA根证书(公钥)
1 | openssl req -new -x509 -days 7305 -key ca.key -out ca.crt |
-days后面的7305是指证书的有效期,以天为单位,这里设置成了20年
注意期间会让你填写common name,也就是域名,这里填入的是你的根域名,例如eaimty.com。最后,你就得到了一个根域的CA证书。
- 生成一个给泛域名用的私钥
1 | openssl genrsa -des3 -out yourdomain.com.pem 1024 |
- 解密私钥
1 | openssl rsa -in yourdomain.com.pem -out yourdomain.com.key |
- 生成签名请求
1 | openssl req -new -key yourdomain.com.pem -out yourdomain.com.csr |
common name要填入泛域名,如*.eaimty.com,这样生成的证书可以供所有子域使用。
- 修改openssl.cnf配置
/home/linuxbrew/.linuxbrew/etc/openssl/openssl.cnf 或者 /etc/pki/tls/openssl.cnf
dir=. -> 修改为./ca,则当前执行openssl命令在ca的上层命令,如果是在ca目录里执行命令,则修改为./
- 创建所需文件
1 | mkdir -p ca/newcerts |
1 | openssl ca -policy policy_anything -days 7305 -cert ca.crt -keyfile ca.key -in yourdomain.com.csr -out yourdomain.com.crt |
最后你会得到一个yourdomain.com.crt文件,把ca.crt中的内容粘贴到yourdomain.com.crt的最后,证书就签发完成了。
准备好yourdomain.com.crt(网站证书)和yourdomain.com.key(网站私钥),开始配置Nginx!
1 | server { |