HTTP和HTTPS原理

HTTP:超文本传输协议
URL:统一资源定位符。
HTTP的连接方式和无状态性
1.非持久性连接
当请求完成后,就释放连接。即每次刷新访问页面都重新建立连接。
2.持久性连接
在服务器发送完响应后,不会立即释放连接。
3.无状态性
客户端第二次访问同一个web服务器时,服务器无法识别这个客户曾经访问过。
HTTP工作原理:
在这里插入图片描述
HTTP请求方法:
在这里插入图片描述
HTTP响应状态码:
在这里插入图片描述
Session:是可以存储针对于某一个用户的浏览器以及通过其当前窗口打开的任何窗口具有针对性的用户信息存储机制。
客户端存储SessionID和对应程序。服务器端存储SessionID和对应键值对。
Cookie:是在客户端存储键值对的技术。
SSL:是一种位于传输层协议之上,对上层协议提供封装加密,并支持认证的协议。
SSL VPN:是一种运用SSL协议来实现的远程安全接入技术。
SSL通过三个协议实现:
1.SSL握手协议:被封装在记录协议中,用于服务器和客户的认证,协商加密算法和密钥。
2.SSL修改密文协议:一定时间内修改加密规范。
3.SSL报警协议:用于给对方发送警示消息通告。
SSL协议结构:在这里插入图片描述
SSL通信过程:在这里插入图片描述
实现方法:
1.WEB代理
只能提供对HTTP的封装。
客户端访问时使用SSL VPN服务器的URL为前缀,被访问服务器为URL后缀的特殊URL来访问。在访问过程中,客户端和VPN服务器通信是加密的,VPN服务器和WEB服务器通信是不加密的.
在这里插入图片描述
在这里插入图片描述
优点:四层VPN,不需要对三层等包头进行处理,只需要对四层及之后的内容进行封装加密。不会对三层之前的内容产生影响。可以轻易穿越NAT等内外网区域。而且使用成本低,不需要装取客户端程序。只需要浏览器支持即可,为手机等移动设备提供便利。
缺点:只支持HTTP。
2.SSL端口映射:
客户端访问时访问内网环回IP提供的服务,客户端必须安装应用程序,环回流量会被应用程序捕捉到。并转换为VPN服务器IP+随机端口,并发送给VPN服务器,VPN服务器接收到后根据映射表转化为服务提供服务器IP+服务端口。在得到响应后将响应内容通过映射表发送回客户端。
总共生成两个映射表,(1)将环回IP+端口映射为VPN服务器公网IP+端口
(2)将VPN公网IP+端口映射为内网IP+端口

在这里插入图片描述

在这里插入图片描述在这里插入图片描述
优点:支持所有TCP应用。
缺点:不支持TCP以外的协议。
3.IP 连接。
需要装载虚拟网卡,可以实现所有流量的封装,类似与传统的隧道。不同的是它是一种四层隧道。会将所有流量的三层及以上数据封装到SSL层之后,并添加新的IP包头和TCP包头。
在访问时通过路由技术将流量发送给虚拟网卡,虚拟网卡通过DNS将流量封装进SSL会话中发送给VPN服务器。VPN收到后解封装发送给内请求服务器。
虚拟网卡通常会向客户端下放缺省路由。
在这里插入图片描述在这里插入图片描述
优点:可以为所有流量提供VPN服务。
缺点:需要安装虚拟网卡,并且因为封装头部较多,所以性能速度较慢。

猜你喜欢

转载自blog.csdn.net/qq_39396529/article/details/84396801