nginx配置Https单向认证和双向认证

 

1、配置nginx单向认证

配置文件为nginx解压目录下的conf/nginx.conf文件

其中关于https配置的配置信息是有的,只是被注释掉了,所以我们简单修改就可以用了

 nginx配置Https单向认证和双向认证_第1张图片

Https监听端口为:443(http默认端口为80,https默认端口为443)

服务器名称为:test.XXXXXX.com,这一点需要和证书里声明的一致

公钥:../../XXHttps配置/XXXX.crt

私钥:../../XXHttps配置/XXXX.key

注:这里需要的是单独的公钥和私钥,如果是密钥库形式的话需要提取出来,这里提供使用openssl提取PKCS12密钥库公钥私钥的命令:

原版PKCS12证书

openssl pkcs12 -in myssl.pfx -nodes -out server.pem

提取私钥

openssl rsa -in server.pem -out server.key

提出公钥

openssl x509 -in server.pem -out server.crt

经测试:公钥私钥全.pem、.key后缀不行,这点并不深究为什么,只需要知道PEM编码格式的.crt后缀证书和.key后缀的私钥可用即可。(nginx被注释掉的信息里是.pem后缀证书和.key后缀私钥,所以大概是如此吧)

 

打开:https://test.XXXXXX.com,显示访问成功

 

2、配置nginx双向认证

 nginx配置Https单向认证和双向认证_第2张图片

信任客户端证书:../../XXHttps配置/WWW.crt

客户端验证:on,如果为off则关闭验证,和单向认证的功能一样

注:这里也需要单独的公钥,经测试:用keytool导出的.cer未成功,用openssl导出的PEM编码的.crt后缀的公钥证书可行。

 

打开:https://test.changhong.com,提示需要证书,安装证书,确认使用证书,访问成功

你可能感兴趣的:(Https)