基于uClinux的嵌入式无线IPSec VPN网关
http://tech.ddvip.com 2008年07月11日 社区交流
内容摘要:介绍一种基于uClinux的嵌入式无线IPSec VPN网关的实现方法。它采用Linux2.6内核上的IPSec标准实现,具有较低的成本和强大的功能;同时有很强的扩展性,可以适应下一带网络IPv6的需求。
引 言
随着网络和无线通信技术的发展以及无线数据传输能力的提高,无线数据传输的应用领域不断扩展。如图1所示,用户的移动设备可以通过CDMA/GPRS公众无线网络直接访问Internet,进而访问自己的内部网络,省去了自己组网的费用。由于用户都希望保障其数据的安全,所以采用VPN技术成为其必然选择。

1 IPSec简介
IPSec的目标是为IP提供互操作高质量的基于密码,学的一整套安全服务,包括访问控制、无连接完整性、数据源验证、抗重放攻击、保密性和有限的流量保密。这些服务都在IP层提供,可以为IP和上层协议提供保护。
IPSec的体系结构在RFC2401中定义。它通过两个传输安全协议——头部认证(AH)和封装安全负载(ESP)以及密钥管理的过程和相关协议来实现其目标。AH提供无连接完整性、数据源验证和可选的抗重发攻击服务;ESP可以提供保密性、有限的流量保密、无连接一致性、数据源验证和抗重发攻击。AH和ESP都是基于密钥分配和流量管理的访问控制的基础。AH和ESP都有两种模式:传输模式和隧道模式。传输模式用于保护主机问通信;而隧道模式将IP封装到IP隧道里,主要用于保护网关间通信。
IPSec中用户通过向IPSec提供自己的安全策略(SP)来控制IPSec的使用,包括对哪些传输数据进行保护,需要使用哪些安全服务,使用何种加密算法。IPSec中安全关联(SA)是一个基本概念,它是一个简单“连接”,使用AH或者ESP为其负载提供安全服务。如果AH和ESP被同时用于提供安全服务,则需要两个和更多个SA。同时由于SA是单向的,因此如果是双向保密通信,则每个方向至少需要一个SA。IPSec中有两个与安全相关的数据库:安全策略数据库(SPD)和安全关联数据库(SAD)。前者定义了如何处理所有流入和流出IP数据处理的策略,后者包含所有(有效)SA有关的参数。
作者:刘宇洪 薛涛 邵贝贝 责编:豆豆技术应用