在VPN应用方便与安全两不误(一) 中,笔者谈论了如何通过用户名与密码等手段来保障VPN通讯的安全。上述讲的方法,是比较表面上的安全处理机制。今天,笔者将讨论一些比较专业的VPN安全解决方案,如如何通过隧道技术来保障VPN通信的安全。文章中的观点,基于个人技术的限制,可能有不全面的地方,请大家多多包涵。
隧道技术,是对VPN通信安全的一个影响比喻。其就好象在公路上,专门设置一个隧道,这个隧道的话,不允许其他车辆录内,全程也没有摄像头,拒绝一切外来因素的侵入等等,从而保障车辆运行的安全。VPN的隧道安全技术,也采用类似的原理。隧道技术是VPN(虚拟专用网)的基本技术,类似于点对点的连接技术。他的作用就是在公共网络上,人为的建立一条数据通信的隧道,让数据包通过这条隧道来进行数据的传递。从而保障数据在VPN虚拟专用网中传输的时候,不被窃听、不被非法的访问与修改、不丢失数据包等等。
隧道技术主要是通过隧道协议实现的。隧道协议根据其实现方法不同,主要有第二层隧道协议与第三层隧道协议。今天笔者将重点讨论第二层隧道协议。再谈论隧道协议之前,笔者将强调一个观点。隧道技术解决的是数据包在虚拟专用网中传输过程之中的安全问题,而对于用户登陆的安全方面没有防范。
一、 第二层隧道协议
现在最流行的第二层隧道协议是L2TP协议。这个隧道协议是在点对点隧道协议与二层转发协议的基础之上发展起来的。现在已经普遍得到了各个通信厂商与硬件厂商的支持,L2TP协议现在是IETF的标准,由IETF融合PPTP(点对点隧道协议)与L2F(二层转发协议)而形成。
在一个利用二层隧道协议的VPN通信过程,可以说,整个通信过程就是两个连接。一个是隧道连接,他定义了一个隧道,其基本作用,就是在通信双方之间,建立起一个安全的、全封闭的隧道,他主要解决数据在VPN通信中被非法的访问、非法的修改的问题;第二个是会话连接,他是在隧道连接的基础之上起作用的,他主要用来承载隧道建立之后具体的会话过程。若利用一个形象的比喻的话,隧道连接就是在公路上开辟一条专用的、全封闭的道路;而会话连接就是建立一套交通法则,使得隧道内的车流可以按规定行使。
再具体的来说,二层隧道协议主要是通过两个消息来完成的。一个是控制消息,另一个是数据消息。控制消息用于隧道连接与会话连接的建立与维护。在利用隧道技术,在VPN通信双方建立安全通道的时候,通信双方会彼此进行协商,如何建立一个通信隧道,这就是通过控制消息来管理的。在控制消息的传输过程中,还应用了消息丢失重传协议与定时检测通道连通性等机制来保证L2TP传输的可靠性。从而保障了当隧道被意外中断时,能够迅速的恢复通道的畅通;同时检测是否在中断的过程中,有非法入侵者的侵入。
数据消息则用来管理隧道建立之后,数据包的传送规则。如如何对数据包进行传输,数据包传输的大小,数据包遗失之后如何处理,等等。数据信息的话,没有重传机制。为什么呢?这主要有两个方面的原因。一是控制消息已经保障了通信隧道的连通性,在传输过程之中保障隧道的通常;另外一个原因是也可以借助上层的TCP协议实现数据的重传等等。

