首页>技术支持>最新数字证书问答 >Nginx环境下配置https双向认证

Nginx环境下配置https双向认证

https双向认证就是客户端获取服务器端的SSL证书,认证服务器端是否为值得信任的主机,SSL证书安装环境,如果访问的站点不受信任,浏览器就会发出警告提示;同时服务器端也会检查客户端证书是不是服务器端所信任的,这样服务器端就能确认,该客户端是不是合法用户,如果不是,就会拒绝为客户端提供服务。

因此,只有在服务器端配置受浏览器信任的SSL证书,客户端也配置受服务器端信任的客户端证书,才能使https双向认证顺利完成。找正规CA颁发机构(如沃通CA)签发SSL证书,才能受浏览器信任,不需要手动安装根证书,就能自动识别SSL证书状态、验证SSL证书信息。本文主要介绍如何在Ngnix环境下配置https双向认证。

Nginx https双向认证配置环境

Centos 6.4 操作系统; Nginx 1.9.1;

Openssl 1.0.1+;

SSL 证书一张(备注:本指南使用 s.wosign.com 域名 沃通超真OV SSL 证书进行操作,与其它级别的SSL证书部署方式通用)。

网络环境要求

请确保站点是一个合法的外网可以访问的域名地址,可以通过http://正常访问。

申请SSL证书

成功在沃通CA申请SSL证书后,会得到一个有密码的压缩包文件,输入SSL证书密码后解压得到五个文件:for Apache、for IIS、for Nginx、for Other Server,这个是证书的几种格式,Nginx 上需要用到 for Nginx 格式的证书。打开 for Nginx 文件可以看到 2 个文件。包括公钥、私钥。

https双向认证

安装SSL证书

打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件找到

# HTTPS server

#

#server {

# listen 443;

# server_name localhost;

# ssl on;

# ssl_certificate cert.pem;

# ssl_certificate_key cert.key;

# ssl_session_timeout 5m;

# ssl_protocols SSLv2 SSLv3 TLSv1;

# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;

# ssl_prefer_server_ciphers on;

# location / {

# root html;

# index index.html index.htm;

# }

#}

将其修改为(在 nginx 安装目录下创建 sslkey 目录,将 for Nginx 里面的两个证书文件拷贝

到 sslkey 目录下):

server {

listen 443;

server_name localhost;

ssl on;

ssl_certificate sslkey/wosign.com.crt; (证书公钥)

ssl_certificate_key sslkey/wosign.com.key; (证书私钥)

ssl_session_timeout 5m;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:-LOW:!aNULL:!eNULL;

ssl_prefer_server_ciphers on;

location / {

root html;

index index.html index.htm;

}

}

保存退出,并重启 Nginx。

通过 https加密协议访问您的站点,测试站点SSL证书的配置是否正常。

客户端证书认证

如果要求客户采用客户证书认证方式,可以在原来的配置下增加如下参数:

server {

......

......

......

ssl_verify_client on

ssl_client_certificate ca.cer

ssl_verify_depth 1

}

配置说明:

ssl_ verify_client on; 要求SSL客户证书认证。

ssl_client_certificate ca.cer; 签发客户证书的CA证书,用来验证客户证书。

ssl on; SSL功能打开,采用SSL通信协议。

ssl_verify_depth 1; SSL客户证书认证链长度,根据ca.cer里面的长度来设置。

测试成果

设置好后,成功启动Nginx,然后打开IE访问,第一次访问时浏览器会询问双向认证时使用的证书。如果浏览器正常,没有警告提示,那配置就成功了。使用沃通SSL证书的用户,在配置过程中遇到任何问题,可以随时联系沃通7×24小时客户服务,随时为您解决技术问题。

参考:

http://www.wosign.com/Support/Nginx.html

http://www.wosign.com/Docdownload/index.htm