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

https协议证书部署实战

时间:2017-09-01 15:39:15      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:https/ssl协议

一:

HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。

二:

HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL协议不仅仅是一套加密传输的协议,更是一件经过艺术家精心设计的艺术品,TLS/SSL中使用了非对称加密,对称加密以及HASH算法。

三:

部署https协议

环境要求   yum安装opensslopenssl-devel

创建秘钥证书存放目录

     mkdir/usr/local/nginx/ssl

执行命令  openssl genrsa -des3 -out server.key 1024 #生成秘钥

 

执行命令  openssl req -new -key server.key -outserver.csr #创建签名请求的证书(CSR)

 

执行命令  openssl rsa -inserver.key -out server_nopassword.key #进行解密

 

执行命令  openssl x509 -req -days 365 -in server.csr-signkey server_nopassword.key -out server.crt # 进行标记证书使用上述私钥和CSR

 

修改nginx配置文件,加载ssl证书

vim /usr/local/nginx/conf/nginx.conf #进去nginx配置文件(在http标题里面加入可以选择最后一行)

server {

   listen 443;

   server_name localhost;

   ssl   on;

   ssl_certificate       /usr/local/nginx/ssl/server.crt;   

   ssl_certificate_key      /usr/local/nginx/ssl/server.nopasswd.key;

   ssl_session_timeout   5m;

   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

   ssl_ciphersAESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!LOW:!aNULL:!eNULL;

   ssl_prefer_server_ciphers on;

}

本文出自 “centos7” 博客,请务必保留此出处http://12832314.blog.51cto.com/12822314/1961898

https协议证书部署实战

标签:https/ssl协议

原文地址:http://12832314.blog.51cto.com/12822314/1961898

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