论文部分内容阅读
该文在认真阅读相关文档和仔细研究freeswan代码的基础上,对基于Linux和IPSec的VPN网关进行了重新设计.该VPN网关以Linux操作系统为平台,利用Linux提供的Netfilter机制,使得IPSec能与IP协议栈无缝的结合.整个VPN网关由SAD(安全联盟数据库)与SAD引擎、SPD(安全策略数据库)与SPD引擎、IKE(网络密钥交换)守护进程、管理配置模块、PF_KEY套接字和IPSec引擎几部分组成.对于安全联盟数据库采用哈希表进行构建.对于安全策略库采用radix树和哈希表联合的方式进行构建.对于IKE,首先深入分析了IKE协议,然后在此基础上提出了一个可行的IKE实现方案.对于管理配置模块,提出了一个可用于管理整个VPN网关的具体框架,并能使管理者自由的定制所需的命令.对于PF_KEY套接字,提出了一个统一的组包和拆包框架结构用于封装或解封比较复杂的数据包,如PF_KEY套接字中的消息包和IKE中的协议包;并对PF_KEY套接字进行了改进,使其更具安全性.对于IPSec引擎,提出了一个通用的引擎架构,使其能向上层调用提供一个统一的接口.该VPN网关建立在自主开发的操作系统上,比较完整的实现IPSec协议族,能够和其它VPN产品保持兼容,并具有比较完善的安全策略管理系统和友好的配置界面.