论文部分内容阅读
Internet的迅猛发展始于20世纪90年代,随着NSFnet的建设和开发,网络节点数和用户数迅速增加。Internet也迅速向全球发展,世界上许多国家纷纷接入到Internet上,使网络上的通信量急剧增长。Internet上有丰富的信息资源,有些信息具有私密性,却遭到泄露和窃取,有些恶意信息,却又无法进行过滤。基于IPsec协议的VPN系统为通信的两端建立了一条使用加密流量的通道,这对恶意流量和涉密内容流量的检测提出了新的课题。本文对解决这一课题进行了研究,并提出了一种基于IPsec协议的代理网关系统的解决方案,并设计了一套轻量级系统,实现了对IPsec流量的监控和透明传输。本文首先介绍了VPN的分类及IPsec VPN的特征和发展历程,并对Linux系统下的IPsec VPN的实现工具进行了介绍;然后详细分析了IPsec协议族的相关协议和组成部分,其中包括Internet密钥交换协议(IKE),认证头(AH协议),封装安全载荷(ESP协议),安全关联,安全策略;接着设计了基于IPsec协议的代理网关系统的总体框架,为系统划分功能模块,分析各模块需完成的功能和设计方案。然后,通过分析和测试影响系统性能的指标,提出了两种新的技术方案,一种为并行协议栈技术在系统中的应用,另外设计了一种新的用户空间加/解密API,并通过与基于Netlink接口的用户空间加/解密API进行对比,展示了该API接口的设计灵活性和可定制性,通过与用户空间实现加/解密算法逻辑的方式进行对比,展示了该API接口的高效性。然后,重点阐述了基于IPsec协议的代理网关系统在Linux平台下的设计和具体实现,并在实现过程中详细描述了模块中关键技术的实现方法。最后,在Linux平台下进行了仿真实验和测试,并对测试结果和性能指标进行了分析。本文以实际项目需求为背景,研究和实现了一种轻量级的基于IPsec协议的VPN代理网关系统,对于企业级系统的应用具有实际意义。另外,本文在具体应用中提出的用户空间加/解密API接口,可以方便的应用于Linux平台下其他网络安全产品的开发,从而可以方便的使用内核空间中成熟的Crypto API架构,可以提高开发效率,并能够为具体的功能需求进行功能定制。