1、自建CA
(1)生成私钥文件
mkdir -p /etc/pki/CA/private #创建私钥保存的目录
(umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096) #创建私钥
ll /etc/pki/CA/private/ # 私钥只能自己保存,对保密性要求高
(2)生成自签证书
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out cacert.pem
-days 7300
(3)为CA提供所需的目录和文件
touch /etc/pki/CA/index.txt # 创建数据库文件
echo 01 > /etc/pki/CA/serial # 创建序列号文件并给明第一个证书的序列号码
ll /etc/pki/CA
CA创建完成
2、证书申请
(1)在证书申请的主机上生成私钥
cd /etc/nginx/
mkdir ssl #创建保存私钥的目录
cd ssl
(umask 077;openssl genrsa -out nginx.key 2048)
ll
(2)生成证书签署请求
openssl req -new -key nginx.key -out nginx.csr -days 365
(3)把请求发送给CA,因为这是本机,就不发了。
(4)CA签发证书
openssl ca -in /etc/nginx/ssl/nginx.csr -out /etc/nginx/ssl/nginx.crt -days
365
报错如下:
说明我们生成自签证书没做好,上去检查那一步,发现什么事情,我们的自签证书生成到root目录下了。所以再来一次绝对路径的:openssl req -new
-key /etc/pki/CA/private/cakey.pem -days 365 -x509 -out
/etc/pki/CA/cacert.pem
再试试:结果如下
cd /etc/nginx/ssl 看一下:
3、配置/etc/nginx/nginx.conf
vim /etc/nginx/nginx.conf
检查,重启,测试。