利用https实现站点访问
https介绍
HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。
采用https的服务器必须从CA (Certificate Authority)申请一个用于证明服务器用途类型的证书。该证书只有用于对应的服务器的时候,客户端才信任此主机。所以目前所有的银行系统网站,关键部分应用都是https 的。客户通过信任该证书,从而信任了该主机。其实这样做效率很低,但是银行更侧重安全。这一点对我们没有任何异议,我们的服务器,采用的证书不管是自己发布的还是从公众的地方发布的,其客户端都是自己人,所以我们也就肯定信任该服务器。
SSL协议介绍
SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层:SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加***等。
SSL协议的工作流程 服务器认证阶段:1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;2)服务器根据客户的信息确定是否需要生成新的主**,如需要则服务器在响应客户的“Hello”信息时将包含生成主**所需的信息;3)客户根据收到的服务器响应信息,产生一个主**,并用服务器的公开**加密后传给服务器;4)服务器恢复该主**,并返回给客户一个用主**认证的信息,以此让客户认证服务器。
实现
1.安装web服务器
2.建立CA所需目录及文件
3.产生CA钥匙
4.产生CA证书
5.web服务器获取钥匙
6.web服务器产生证书
7.web服务器向ca请求证书
8.安装ssl模块
9.修改/etc/httpd/conf.d/ssl.conf
10. 443端口开启
11.开启证书链
12.在客户机安装CA证书
13.访问web服务器
14.修改客户机host文件
15.再次访问站点
转载于:https://blog.51cto.com/269144332/968560