nginx配置https双向验证(ca机构证书+自签证书)

nginx配置https双向验证

服务端验证(ca机构证书)

客户端验证(服务器自签证书)

本文用的阿里云签发的免费证书实验,下载nginx安装ssl,文件夹有两个文件

nginx配置https双向验证(ca机构证书+自签证书)

这两个文件用于做服务器https验证

配置如下:

nginx配置https双向验证(ca机构证书+自签证书)

 

自签证书步骤如下:

 

ca根证书生成

 

创建ca私钥

openssl genrsa -out ca.key 2048

生成ca证书

openssl req -new -x509 -days 36500 -key ca.key -out ca.crt

 

客户端证书生成

 

创建客户端私钥

openssl genrsa -out client.pem 2048 
openssl rsa -in client.pem -out client.key

生成签发请求

openssl req -new -key client.pem -out client.csr

使用ca证书进行签发

openssl x509 -req -sha256 -extfile /etc/pki/tls/openssl.cnf -extensions v3_req -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -days 36500 -out client.crt

验证签发证书是否正确

[root@danny ca]# openssl verify -CAfile ca.crt client.crt
client.crt: OK

制作p12证书(导入浏览器)

openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12

操作结束后目录文件

[root@danny ca]# ls
ca.crt  ca.key  ca.pem  ca.srl  client.crt  client.csr  client.key  client.p12  client.pem

 

验证,导出client.p12点击安装至浏览器,重启浏览器。验证过程截图如下:

 

未开启双向认证ssl_verify_client on时(客户端可以直接https访问)

nginx配置https双向验证(ca机构证书+自签证书)

 

开启ssl_verify_client on但是没有安装客户端证书时

nginx配置https双向验证(ca机构证书+自签证书)

 

 

安装证书并重启浏览器访问

nginx配置https双向验证(ca机构证书+自签证书)

 

https证书管理中可看到已导入

nginx配置https双向验证(ca机构证书+自签证书)

 

 确认即可访问

 

nginx配置https双向验证(ca机构证书+自签证书)

 

上一篇:Sourcetree的简单操作(不会的知识在增加)


下一篇:sourcetree 远端 感叹号