Nginx单IP地址配置多个SSL证书的⽅法⽰例
默认情况下,Nginx⼀个IP地址仅⽀持⼀个SSL证书,需要多个IP地址才能配置多个SSL证书,在公⽹IP地址有限的情况下,可以使⽤TLS Server Name Indication extension(SNI, RFC 6066),它允许浏览器在SSL握⼿的时候发送请求的server name,也就是 Host,这样 Nginx 就能到对应server 的SSL配置。
配置步骤如下:
1、检查Nginx是否⽀持TLS
$ nginx -V
...
TLS SNI support enabled
...
2、如果出现TLS SNI support disable,就得升级openssl版本,并且重新编译nginx。nginx ssl证书配置
具体步骤如下:
⾸先下载openssl(建议下载1.0.1h版本)
#wget /source/openssl-1.0.
下载Nginx
#wget /download/nginx-1.9.
解压openssl
#tar -zxvf openssl-1.0.
解压nginx,并编译
#tar -zxvf nginx-1.9.
#cd nginx-1.9.9
#./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-openssl=../openssl-1.0.1h/
#make && make install
#检查Nginx版本信息
#/usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.9.9
built by gcc 4.1.2 20080704 (Red Hat 4.1.2-55)
built with OpenSSL 1.0.1h 5 Jun 2014
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --with-openssl=../openssl-1.0.1h/配置Vhost中的域名证书
server
{
>####
listen 80;
listen 443 ssl;
#listen [::]:80;
server_name ;
root  /home/wwwroot/;
ssl on;
ssl_certificate_key /home/wwwroot/cert/key;
ssl_certificate /home/wwwroot/cert/;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
>>>
}
然后,重启Nginx即可。
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。

发表评论