安全协议IPSec、SSL、SSH

原创 2016年10月09日 18:23:01

IPSec(网络层):

         IPSec在数据包三层头部(IP头部)和四层头部之间插入一个预定义的IPSec头部,对OSI上层协议数据提供保护。IPSec没有定义具体加密算法和散列函数,仅提供一种框架结构。有ESP(IP协议50)和AH(IP协议51)两种封装协议。


         ESP为数据提供加密、完整性和源认证三个方面的保护,能够抵御重放攻击。不对原始IP头部进行安全防护。

         AH为数据提供完整性和源认证,能够抵御重放攻击。AH对数据完整性验证的范围更广,包含原始IP头部。

         IPSec有两种数据封装模式:传输模式和隧道模式。

         传输模式将在原始IP头部和IP负载之间插入一个ESP头部,追加ESP尾部和ESP验证数据部分,对IP负载和ESP尾部进行加密和验证处理,原始IP头部被保留。当加密点等于通信点,通信设备地址是可路由的情况。


         隧道模式将把整个原始IP数据包封装到一个新的IP数据包中,并在新IP头和原始IP头中插入ESP头部,以对整个原始IP数据包进行加密和验证。当加密点不等于通信点,或者说IP地址不可路由(IP数据包的源和目的地址为私有地址)时使用隧道模式。

 

SSL协议:(传输层)

         SSL协议栈位置介于TCP和应用层之间,分为SSL记录协议层和SSL握手协议层。其中SSL握手协议层又分为SSL握手协议、SSL密钥更改协议和SSL警告协议。SSL握手协议作用是在通信双方之间协商出密钥,SSL记录层的作用是定义如何对上层的协议进行封装。SSL记录协议将数据块进行拆分压缩,计算消息验证码,加密,封装记录头然后进行传输。

 

SSL握手:

1、  初始化阶段。客户端创建随机数,发送ClientHello 将随机数连同自己支持的协议版本、加密算法和压缩算法发送给服务器。服务器回复ServerHello将自己生成的随机数连同选择的协议版本、加密算法和压缩算法给客户端。

2、  认证阶段。服务器发送ServerHello的同时可能将包含自己公钥的证书发送给客户端(Certificate),并请求客户端的证书(Certificate Request)。

3、  密钥协商阶段。客户端验证证书,如果收到Certificate Request则发送包含自己公钥的证书,同时对此前所有握手消息进行散列运算,并使用加密算法进行加密发送给服务器。同时,创建随机数pre-master-secret并使用服务器公钥进行加密发送。服务器收到这个ClientKeyExchange之后解密得到pre-master-secret。服务器和客户端利用1阶段的随机数,能够计算得出master-secret。

4、  握手终止。服务器和客户端分别通过ChangeCipherSpec消息告知伺候使用master-secret对连接进行加密和解密,并向对方发送终止消息(Finished)。



HTTPS(Hypertext TransferProtocol over Secure Socket Layer,基于SSL的HTTP协议),端口443,需要向CA申请证书,通过SSL握手建立安全通道,利用协商密钥对数据进行对称加密通信。


SSH协议(会话层)

         SSH协议由下到上分为SSH传输层协议、SSH用户认证协议、SSH连接协议。


         传输层协议:在通信双方之间建立一条安全的加密通道。包括版本协商和算法协商与密钥交换。

         用户认证协议:用户发送请求认证,服务器对用户进行认证。

         连接协议:客户端完成认证后可以发起请求建立会话通道。


版权声明:本文为博主原创文章,未经博主允许不得转载。

Bandwagon(搬瓦工)再vps上配置ssh和vpn(ipsec)还有ssh加速(FinalSpeed配置)

搬瓦工vps的代理设置,ssh,和vpn(ipsec)

SSH,SSL,TLS,PPP,L2TP,PPTP,IPSEC简介及比较

SSL:指定了一种在应用程序协议(http,telnet,nntp,ftp)和TCP/IP之间提供数据安全分层的机制。为tcp/ip连接提供数据加密,服务器认证,消息完整性以及可选的客户机认证。 S...

网络安全协议之比较(SSH、 PKI、SET、SSL)

转自:http://blog.chinaunix.net/uid-20663154-id-1585302.html 一、SSH介绍   什么是SSH?          ...

SSL和SSH的区别

有人说,SSH一般是用来提供安全的登录用的,SSL只是一个在协议层中加入的一层用来提供安全。    SSH工作在TCP之上,可以在启动一个SSH应用后,在其通道里运行其它协议的应用,如邮件。   ...

SSL和SSH有什么区别

ssl是通讯链路的附加层。可以包含很多协议。https, ftps, ..... ssh只是加密的shell,最初是用来替代telnet的。通过port forward,也可以让其他协议通过ssh的...

简析SS、SSH、SSL和VPN有什么区别

原文: https://www.web0310.com/a/a/news/2016/1204/8.html 下面可以给咱们简略描写。 VPN在此就不多做介绍了,是虚拟化网络,通过...
  • lin___
  • lin___
  • 2017年02月13日 17:24
  • 20480

SSH和SSL比较

一、SSH介绍  什么是SSH?    传统的网络服务程序,如:ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据, 别有用心的人非常容易就可以截 获这些口令和数据...
  • allwtg
  • allwtg
  • 2009年12月17日 17:53
  • 4137

RSA与SSL浅析

HTTPS = HTTP + SSLHTTP协议是明文传输的,也就是说当数据包使用HTTP协议进行传输的时候,如果数据包中途被截下来了,那么里面的数据(明文)就会完全暴露。因此,如果数据包里面存放着用...

浅谈SSL与SSH以及各层安全协议

“(1)应用层安全(Security at the Application Layer):邮件系统安全(Electronic Mail Security) 电子邮件安全要素(Email securi...

SSL和SSH的区别

一直有个疑问:就是关于SSH和SSL之间的区别 简单的来说:SSL是安全传输的一种安全协议,SSH只是在传输的时候为了防止"中间人"篡改数据而提供的安全的"通道" 在使用的时候我们...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:安全协议IPSec、SSL、SSH
举报原因:
原因补充:

(最多只允许输入30个字)