HTTPS的原理与具体实现过程及HTTP服务的虚拟目录简介

1.超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等。
为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,即在HTTP和TCP之间插入了(TSL / SSL) 密码加密层。SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
HTTPS和HTTP的区别主要为以下四点:
一、HTTPS协议需要到CA(Certificate Authority)申请证书,一般免费证书很少,基本都需要交费。
二、HTTP是超文本传输协议,信息是明文传输,HTTPS则是具有安全性的ssl加密传输协议。
三、HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80端口,后者是443端口。
四、HTTP的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比HTTP协议安全。
2.证书:

1>什么是证书?
通俗的讲,证书就是你将所能证明你就是你本人的相关信息提交给认证机构,认证机构在进行核实后,颁发给你一张将相关信息整合在一起的证书给你。我们可以拿我们的身份证来说,你拿着你家的户口本和其他相关材料到你们家所在地的户籍登记处,向工作人员提供证明你身份的相关材料,在工作人员核实后,最终会给你发一张居民身份证。
2>证书的格式:认证中心所发放的证书均遵循X.509 V3 标准。
3>X.509通用的证书格式包含三个文件:key,csr,crt。
1)key是服务器上的私钥文件,用于对发送给客户端数据的加密,以及对从客户端接收到数据的解密。
2)csr是证书签名请求文件,用于提交给证书颁发机构(CA)对证书签名。
3)crt是由证书颁发机构(CA)签名后的证书,或者是开发者自签名的证书,包含证书持有人的信息,持有人的公钥,以及签署者的签名等信息。

Pki(public key Infrastructure): 公钥基础设施,是一种遵循标准的,利用公钥加密技术为电子商务的开展提供了一套安全基础平台的技术规范。
提供公钥加密和数字签名服务的系统或平台,目的是为了管理密钥和证书。

3.SSL的建立过程:
在这里插入图片描述
发起三次握手建立TCP会话,协商算法,首先客户端给服务端发送随机的消息(可以理解为客户端给服务端打个招呼),服务端在收到客户端的消息后,在向客户端回一个随机消息时,同时会将服务器的证书发送给客户端,客户端可以通过服务端的证书获得服务端非堆成加密算法的公钥(这把公钥加密的信息只有服务端的私钥才能解开),客户端生成会话密钥(一般也称对称密钥,是进行数据传递时对数据进行加密的密钥),待密钥交互完毕,客户端发送http的请求,服务器收到请求后通过会话密钥将加密后把网页传送到客户端。
4.配置HTTPS:
4.1首先我们要先安装ssl服务对应的软件包:

[root@localhost ~]# yum install mod_ssl –y

4.2我们通过rpm –ql命令查看一下mod_ssl软件包在安装过程中所释放文件的位置:

[root@localhost ~]# rpm -ql mod_ssl
/etc/httpd/conf.d/ssl.conf
/etc/httpd/conf.modules.d/00-ssl.conf
/usr/lib64/httpd/modules/mod_ssl.so
/usr/libexec/httpd-ssl-pass-dialog
/var/cache/httpd/ssl

4.3因为我们是在虚机上进行测试,所以我们需要一个自签名的证书:

[root@localhost ~]# cd /etc/pki/tls/certs/
[root@localhost certs]# make secure.crt

在这里插入图片描述
4.4将ssl配置文件中的以下内容复制到我们之前的http服务的辅助配置文件中:

[root@localhost ~]# vim /etc/httpd/conf.d/vhosts.conf

在这里插入图片描述
4.5设置完毕重启http服务:
在这里插入图片描述
4.6利用https://对相应的网站进行测试,因为我们做的是一个自签名的证书,所以浏览器会提示此网站的安全证书有问题。
5.虚拟目录
5.1为什么要有虚拟目录?
可以使多个公司或部门的网站共用同一台服务器,而用户感觉每个公司和部门都有各自独立的网站。多个没有实力在Internet上架设自己专用服务器的中小公司可以联合租用一台WEB服务器,对外提供各自的WEB服务而互不影响。
创建虚拟目录的目的就是在一台计算机上创建多个WEB站点,并为每个WEB站点设置不同的主目录和虚拟子目录,每个WEB站点作为各自独立的网站分配给不同的公司或部门。
5.2虚拟目录的实现原理:
WEB服务器上的每个WEB站点必须设置有不同的标识信息;
WEB浏览器发出的连接和请求信息中包含WEB站点的标识信息;
WEB站点的标识信息:IP地址、端口号、主机名。

  • 9
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值