码迷,mamicode.com
首页 > Web开发 > 详细

Nginx 配置https证书认证

时间:2018-03-04 17:13:42      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:secure   rc4   版本   star   stc   服务器   创建   数字   location   

Nginx 配置https证书认证

一、什么是SSL证书

SL证书全程:SSL安全通道(Secure socket layer(SSL)。该安全协议主要用来提供对用户和服务器的认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性,现已成为该领域中全球化的标准。

SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。

SSL 证书就是遵守 SSL协议,由受信任的数字证书颁发机构CA(如VeriSign),在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。


 

TLS版本号以及相关说明

安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。

二、配置服务器

1、获取证书

通过证书颁发机构获取,也就是找卖证书的就可以了

2、安装服务器证书

将证书文件,上传至Nginx安装目录的conf目录下,我的安装目录是

/usr/local/nginx/conf/

为了方便管理证书我在conf目录下创建了证书的统一管理目录https_ssl目录,我将所有证书

存放在了conf/https_ssl/下。

同时为了证书的可识别性,可以为证书改名

mv server.key aaaaaa.key

mv server.pem aaaaaa.pem

Nginx虚拟主机配置

 

 

server {

listen 443; #修改端口号为443,如果有防火墙记得开启防火墙

server_name aaaaaaa; #域名我隐藏了,不要在意aaaaaa

root /data/www/www.test.com;

index index.php index.html index.htm;

access_log /data/wwwlogs/rewrite.log access;

ssl on; #SSL功能开启,采用SSL通信协议

ssl_certificate https_ssl/server.pem; #证书文件

ssl_certificate_key https_ssl/server.key; #私钥文件

ssl_session_timeout 5m; 客户端可以重用会话缓存中ssl参数的过期时间,内网系统默认5分钟太短了,可以设成30m即30分钟甚至4h

ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #支持的SSL协议标准

ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL; 选择加密套件

ssl_prefer_server_ciphers on; #设置协商加密算法时,优先使用我们服务端的加密套件,而不是客户端浏览器的加密套件


 

location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;

include fastcgi.conf;

}

}


 

测试访问,https:aaaaa 可以看到有绿色的锁,说明已经配置成功了,根据浏览器的查看证书的方式

也不同,我使用的是火狐

技术分享图片

 

 

在实际使用中https比http的访问方式,开销要大

Nginx 配置https证书认证

标签:secure   rc4   版本   star   stc   服务器   创建   数字   location   

原文地址:https://www.cnblogs.com/bazingafraser/p/8505062.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!