浅谈OSI网络安全体系结构
来源:IT168 更新时间:2012-04-14

作者:杜飞    

计算机网络在给人们的工作、生活带来巨大方便利,也带了信息安全问题,特别是无线网络无疑给我们的工作带来了前所没有的便利,企业员工享受着在不同位置间自由移动带来的便利同时,安全性问题也随之出现。接触过网络的朋友都知道,网络的底层支摚基础是OSI参考模型。ISO国际标准组织定义了OSI七层模型的各层功能。它是网络技术入门者的敲门砖,也是分析、评判各种网络技术的依据。

  建立七层模型主要是为解决异种网络互连时所遇到的兼容性问题。它的最大优点是将服务、接口和协议这三个概念明确地区分开来;也使网络的不同功能模块分担起不同的职责。也就是说初衷在于解决兼容性,但当网络发展到一定规模的时候,安全性问题就变得突出起来。所以就必须有一套体系结构来解决安全问题,于是OSI安全体系结构就应运而生。

  OSI安全体系结构是根据OSI七层协议模型建立的。也就是说OSI安全体系结构与OSI七层是相对应的。在不同的层次上都有不同的安全技术。OSI安全体系结构如下图所示:

浅谈OSI网络安全体系结构
▲ 图:OSI安全模型

  每层相应的安全技术如下:

  数据链路层:点到点通道协议(PPTP),以及第二层通道协议L2TP

  点到点通道协议PPTP,英文全称是Point – to – point Tunneling Protocol。PPTP 是用于在中间网络上传输点对点协议(PPP)帧的一种隧道机制。 通过利用PPP 的身份验证、加密和协议配置机制,PPTP 连接同时为远程访问和路由器路由器的虚拟专用网(VPN)连接提供了一条在公共网络(比如:Internet)上创建安全连接的途径。PPTP 将PPP 帧封装成IP 数据包,以便在急于IP 的互联网上传输,为了确保数据的安全性,通常需要事先对封装的数据进行加密。

浅谈OSI网络安全体系结构
▲ 图:PPTP数据格式

  L2TP是Cisco的L2F与PPTP相结合的一个协议。L2TP有一部分采用的是PPTP协议,比如同样可以对网络数据流进行加密。不过也有不同之处,比如PPTP要求网络为IP网络,L2TP要求面向数据包的点对点连接;PPTP使用单一隧道,L2TP使用多隧道;L2TP提供包头压缩、隧道验证,而PPTP不支持。

浅谈OSI网络安全体系结构
▲图:L2TP命令头格式

  网络层:IP安全协议(IPSEC)

  IPV4在设计时,只考虑了信息资源的共享,没有过多的考虑到安全问题,因此无法从根本上防止网络层攻击。在现有的IPV4上应用IPSEC可以加强其安全性,IPSEC在网络层提供了IP报文的机密性、完整性、IP报文源地址认证以及抗伪地址的攻击能力。IPSEC可以保护在所有支持IP的传输介质上的通信,保护所有运行于网络层上的所有协议在主机间进行安全传输。IPSEC网关可以安装在需要安全保护的任何地方,如路由器、防火墙、应用服务器或客户机等。

浅谈OSI网络安全体系结构
▲ 图:含有IPSEC的数据封装

  IPSEC主要由三个协议组成:

  1. AH(Authentication Header)认证报头,提供对报文完整性的报文的源地址进行认证。

  2. ESP(Encapsulating Security Payload)封装安全载荷,提供对报文内容的加密和认证功能。

  3. IKE(Internet Key Exchange) Internet密钥交换,协商信源和信宿节点间保护IP报文的AH和ESP的相关参数,如加密、认证的算法和密钥、密钥的生存时间等。又称为安全联盟。AH和ESP是网络层协议,IKE是应用层协议。一般情况下,IPSEC仅指网络层协议AH和ESP。由于 IPSEC服务是在网络层提供的,任何上层协议都可以使用到此服务。

  传输层:安全套接字层(SSL)和传输层安全协议TLS

  安全套接层(Secure Sockets Layer,SSL)是网景公司(Netscape)在推出Web浏览器首版的同时,提出的协议。SSL采用公开密钥技术,保证两个应用间通信的保密性和可靠性,使客户与服务器应用之间的通信不被攻击者窃听。可在服务器和客户机两端同时实现支持,目前已成为互联网上保密通讯的工业标准,现行Web浏览器普遍将Http和SSL相结合,从而实现安全通信。SSL协议的优势在于它是与应用层协议独立无关的。高层的应用层协议 (例如:Http、FTP、Telnet等等 ) 能透明的建立于SSL协议之上。SSL协议在应用层协议通信之前就已经完成加密算法、通信密钥的协商以及服务器认证工作。在此之后应用层协议所传送的数据都会被加密,从而保证通信的私密性。

浅谈OSI网络安全体系结构
▲ 图:SSL位于传输层上

  传输层安全协议(TLS)是确保互联网上通信应用和其用户隐私的协议。当服务器和客户机进行通信,TLS确保没有第三方能窃听或盗取信息。TLS是安全套接字层(SSL)的后继协议。TLS由两层构成:TLS记录协议和TLS握手协议。TLS记录协议使用机密方法,如数据加密标准(DES),来保证连接安全。TLS记录协议也可以不使用加密技术。TLS握手协议使服务器和客户机在数据交换之前进行相互鉴定,并协商加密算法和密钥。TLS利用密钥算法在互联网上提供端点身份认证与通讯保密,其基础是公钥基础设施(public key infrastructure,PKI)。不过在实现的典型例子中,只有网络服务者被可靠身份验证,而其客户端则不一定。这是因为公钥基础设施普遍商业运营,电子签名证书相当昂贵,普通大众很难买得起证书。协议的设计在某种程度上能够使主从式架构应用程序通讯本身预防窃听、干扰(Tampering)、和消息伪造。

  会话层:SOCKS代理技术

  SOCKS是一种网络传输协议,主要用于客户端与外网服务器之间通讯的中间传递。SOCKS是"SOCKetS"的缩写。

  当防火墙后的客户端要访问外部的服务器时,就跟SOCKS代理服务器连接。这个代理服务器控制客户端访问外网的资格,允许的话,就将客户端的请求发往外部的服务器。这个协议最初由Devid Koblas开发,而后由NEC的Ying-Da Lee将其扩展到版本4。最新协议是版本5,与前一版本相比,增加支持UDP、验证,以及IPv6。根据OSI模型,SOCKS是位于应用层与传输层之间的中间层。

  应用层:应用程序代理

  应用程序代理工作在应用层之上,位于客户机与服务器之间,完全阻挡了二者间的数据交流。从客户机来看,代理服务器相当于一台真正的服务器;而从服务器来看,代理服务器又是一台真正的客户机。当客户机需要使用服务器上的数据时,首先将数据请求发给代理服务器,代理服务器再根据这一请求向服务器索取数据,然后再由代理服务器将数据传输给客户机。由于外部系统与内部服务器之间没有直接的数据通道,外部的恶意侵害也就很难伤害到企业内部网络系统。并对应用层以下的数据透明。应用层代理服务器用于支持代理的应用层协议,如:HTTP、HTTPS、FTP、TELNET等。由于这些协议支持代理,所以只要在客户端的浏览器或其他应用软件中设置“代理服务器”项,设置好代理服务器的地址,客户端的所有请求将自动转发到代理服务器中。然后由代理服务器处理或转发该请求。