首页> 中国专利> 一种基于IPsec VPN代理的Intranet接入系统

一种基于IPsec VPN代理的Intranet接入系统

摘要

本发明公开了一种基于IPsec VPN代理的Intranet接入系统,该系统包括有移动VPN代理设备、配置服务器、VPN网关、认证服务器和认证客户端。移动VPN代理设备通过因特网与配置服务器和VPN网关实现通讯;用户请求经由移动VPN代理设备和VPN网关的转发,使所述用户请求到达认证客户端;然后认证客户端与认证服务器通过企业内部网实现所述用户请求的授权。本发明接入系统通过移动VPN代理设备实现用户对Intranet的接入,进而通过认证服务器和认证客户端实现对用户访问请求的授权。IPsec隧道是由VPN网关和移动VPN代理设备建立的,无需用户参与,降低了IPsec VPN的使用门槛,克服了IPsec VPN使用困难以及维护困难的缺点。

著录项

  • 公开/公告号CN106685785A

    专利类型发明专利

  • 公开/公告日2017-05-17

    原文格式PDF

  • 申请/专利权人 北京航空航天大学;

    申请/专利号CN201611224673.0

  • 发明设计人 李巍;林峰旭;孙冠超;李云春;

    申请日2016-12-27

  • 分类号H04L12/46(20060101);H04L29/08(20060101);H04L29/06(20060101);

  • 代理机构11121 北京永创新实专利事务所;

  • 代理人李有浩

  • 地址 100191 北京市海淀区学院路37号

  • 入库时间 2023-06-19 02:13:35

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-05

    授权

    授权

  • 2017-06-09

    实质审查的生效 IPC(主分类):H04L12/46 申请日:20161227

    实质审查的生效

  • 2017-05-17

    公开

    公开

说明书

技术领域

本发明涉及一种VPN技术,更特别地说,是指一种基于IPsec VPN代理的Intranet接入系统。

背景技术

Intranet称为企业内部网,或称内部网、内联网、内网,是一个使用与因特网(Internet)同样技术的计算机网络,它通常建立在一个企业或组织的内部并为其成员提供信息的共享和交流等服务,例如万维网,文件传输,电子邮件等。

在《IPsec VPN技术规范》GM/T0022-2014,第2页中“IPsec协议(InternetProtocol Security)”由IETF制定的端到端的确保基于IP通信数据安全性的一种网络层协议,可以提供数据完整性保护、数据源鉴别、载荷机密性和抗重放攻击等安全服务。第3页中“VPN(Virtual Private Network)”为虚拟专用网络。

IPsec最初的设计是提供点到点的,在远程站点和中央办公室资源之间进行不间断的连接。在这种情况下,客户端可以是分公司或者供应商。这个协议被设计为工作在网络堆栈的更底层(第3层,网络层),并可以用来传输任何基于IP的协议报文,而不用理会应用程序所产生的流量。随着移动办公时代的到来,IPsec已经得到扩展,用户通过使用一个安装在移动设备上的专用VPN应用程序(客户端)就可以进行远程访问。

然而,IPsec中与应用程序无关的设计也是它的弱点。虽然它提供了认证、授权和加密,同时还基本上把公司网络拓展到任何远程用户,但是它没有能在一定粒度级别上限制对资源的访问。一旦隧道建立,远程用户通常可以访问公司的任何资源,就像他们是直接连接到公司网络一样。因为移动办公需要允许诸如智能手机和家用电脑等非托管的IT设备访问公司资源,所以这些安全问题显得更加严重。

此外,IPsec VPN要求每一台客户机都需要安装客户端软件,在带来安全风险的同时,增加了使用难度。IPsec也需要更多的维护,除了VPN服务器,用户客户机的软件也需要进行管理维护。

发明内容

针对以上不足,本发明设计了一种基于IPsec VPN代理的Intranet接入系统。本发明接入系统解决了IPsec VPN使用困难以及维护困难的缺点,并兼顾了应用程序无关性与细粒度访问控制。本发明接入系统是在IPsec基础功能上加以拓展,与传统IPsec VPN相比,本发明接入系统具有配置管理简单、后台维护方便、无需客户端软件即可接入的优点,同时还提供细粒度的访问控制能。

本发明是一种基于IPsec VPN代理的Intranet接入系统,该ntranet接入系统包括有配置服务器(2)、VPN网关(3)、认证服务器(4)、认证客户端(5)以及多个移动VPN代理设备;移动VPN代理设备通过因特网与配置服务器(2)和VPN网关(3)实现通讯;用户的访问请求经由移动VPN代理设备和VPN网关(3)的转发,使所述访问请求到达认证客户端(5);然后认证客户端(5)与认证服务器(4)通过企业内部网实现所述访问请求的授权;

一个用户配置有一个移动VPN代理设备;在用户经Intranet访问私有资源时,移动VPN代理设备第一方面完成自动初始化,第二方面完成接收配置的处理,第三方面完成状态信息的发送;在完成第一方面和第二方面后则建立了连接到Intranet网络的IPsec隧道;

配置服务器(2)第一方面进行对移动VPN代理设备的认证,第二方面用于配置移动VPN代理设备和VPN网关(3),第三方面接收来自移动VPN代理设备和VPN网关(3)的状态信息;

VPN网关(3)第一方面完成接收配置的处理,第二方面完成状态信息的发送;第三方面响应移动VPN代理设备的IPsec隧道建立请求;

认证服务器(4)用于完成对用户的身份认证和授权信息下发的处理;

认证客户端(5)用于过滤用户请求和授权信息接收的处理。

配置服务器(2)中一方面存储有全部移动VPN代理设备的用于设备认证的设备信息集INAUTH={INAUTH_A,INAUTH_B,…INAUTH_a,…,INAUTH_N};另一方面存储有全部移动VPN代理设备的设备—状态信息集INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N};再一方面存储有VPN网关(3)的网关—配置信息集IMSTAT={IP,CPU,MEM,NET,TNL};

认证服务器(4)中一方面存储有属于企业全部工作人员的注册身份信息集UAUTH={uAUTH_A,uAUTH_B,…,uAUTH_a…uAUTH_Z},另一方面存储有针对每一个工作人员的授权信息集ACLAUTH={acAUTH_A,acAUTH_B,…,acAUTH_a,…,acAUTH_N};

任意一个认证客户端设有唯一标识符rdj,J为Intranet中认证客户端的总数目,j∈J;任意认证客户端维护用户的IP地址集记为IPLj={ipj_1,ipj_2,…,ipj_k,…,ipj_K},其中ipj_1表示rdj允许访问的第一个用户,ipj_2表示rdj允许访问的第二个用户,ipj_k表示rdj允许访问的任意一个用户,ipj_K表示rdj允许访问的最后一个用户,K为rdj允许访问的用户的总数目,k∈K;

一个用户配置有一个移动VPN代理设备;

用户使用IPsec VPN代理接入Intranet系统的认证过程如下:

步骤1,任意一移动VPN代理设备pda接入Internet后,并对所述移动VPN代理设备pda执行设置代理初始化;

步骤2,配置服务器(2)接收到来自所述移动VPN代理设备pda的初始化设备请求,然后完成对所述移动VPN代理设备pda的配置-设备认证,并向移动VPN代理设备pda发送配置-设备信息

步骤3,移动VPN代理设备pda接收到所述配置-设备信息后,建立与VPN网关(3)的IPsec隧道;

步骤4,用户通过所述IPsec隧道向Intranet的私有资源发起访问请求;

步骤5,认证客户端(5)对用户的访问请求进行过滤,并将用户重定向到认证服务器(4);

步骤6,认证服务器(4)对用户进行身份认证后,并向认证客户端(5)下发授权-用户信息;

步骤7,认证客户端(5)对接收到的所述授权-用户信息进行处理;

步骤8,用户再次通过所述IPsec隧道向Intranet的私有资源发起访问请求;

步骤9,认证客户端(5)对用户的访问请求进行过滤,并转发依据访问请求请求到的属于Intranet的私有资源。

本发明一种基于IPsec VPN代理的Intranet接入系统的优点在于:

①本发明Intranet接入系统是在IPsec基础功能上加以拓展,与传统IPsec VPN相比,本发明接入系统具有配置管理简单、后台维护方便、无需客户端软件即可接入的优点,同时还提供细粒度的访问控制能。

②一方面应用移动VPN代理设备的设备认证信息来实现代理设备的自动初始化,另一方面应用移动VPN代理设备的设备状态信息来实现代理设备的状态监控,有利于对代理设备的集中管理。

③本发明接入系统通过移动VPN代理设备实现用户对Intranet的接入,进而通过认证服务器和认证客户端实现对用户访问请求的授权。

④在本发明中建立的IPsec隧道是由VPN网关和移动VPN代理设备建立的,无需用户参与,降低了IPsec VPN的使用门槛。

附图说明

图1是本发明基于IPsec VPN代理的Intranet接入系统的结构框图。

图2是本发明基于IPsec VPN代理的Intranet接入系统的时序图。

具体实施方式

下面将结合附图对本发明做进一步的详细说明。

参见图1所示,本发明的一种基于IPsec VPN代理的Intranet接入系统,其包括有配置服务器2、VPN网关3、认证服务器4、认证客户端5、以及多个移动VPN代理设备(即移动VPN代理A设备1A、移动VPN代理B设备1B、……、移动VPN代理N设备1N)。多个移动VPN代理设备通过因特网(Internet)与配置服务器2和VPN网关3实现通讯;用户user的访问请求access request经由移动VPN代理设备和VPN网关3的转发,使所述访问请求accessrequest到达认证客户端5;然后认证客户端5与认证服务器4通过企业内部网(Intranet)实现所述用户user的访问请求access request的授权。在基于IPsec VPN代理的Intranet接入系统中私有资源Private resources的请求用户既是企业内部网(Intranet)中私有资源Private resources的拥有者,也企业内部网(Intranet)中的用户。

在本发明中,pda表示任意一个移动VPN代理设备,而角标a表示设备标志号。即移动VPN代理A设备1A、移动VPN代理B设备1B、……、移动VPN代理N设备1N的编号A、B、N可以用a代替。

参见图2所示,用户user使用IPsec VPN代理接入Intranet系统的认证过程如下:

步骤1,任意一移动VPN代理设备pda接入Internet后,并对所述移动VPN代理设备pda执行设置代理初始化;

步骤2,配置服务器(2)接收到来自所述移动VPN代理设备pda的初始化设备请求,然后完成对所述移动VPN代理设备pda的配置-设备认证,并向移动VPN代理设备pda发送配置-设备信息

步骤3,移动VPN代理设备pda接收到所述配置-设备信息后,建立与VPN网关(3)的IPsec隧道;

步骤4,用户user通过所述IPsec隧道向Intranet的私有资源Private resources发起访问请求access request;

步骤5,认证客户端(5)对用户user的访问请求access request进行过滤,并将用户user重定向到认证服务器(4);

步骤6,认证服务器(4)对用户user进行身份认证后,并向认证客户端(5)下发授权-用户信息;

步骤7,认证客户端(5)对接收到的所述授权-用户信息进行处理;

步骤8,用户user再次通过所述IPsec隧道向Intranet的私有资源Privateresources发起访问请求access request;

步骤9,认证客户端(5)对用户user的访问请求access request进行过滤,并转发依据访问请求access request请求到的属于Intranet的私有资源Private resources。

移动VPN代理设备1

在本发明中,移动VPN代理设备可以选用网件公司生产的WNDR4300无线路由器,并使用OpenWrt嵌入式操作系统作为移动VPN代理设备的操作系统,通过安装strongSwan提供IPsec VPN基本功能,在此之上使用C语言编写本发明用到的处理程序。一般地,在使用时,一个用户配置有一个移动VPN代理设备。如图1所示,A用户配置的记为移动VPN代理A设备1A、B用户配置的记为移动VPN代理B设备1B、……、N用户配置的记为移动VPN代理N设备1N。在用户访问Intranet网络资源时,移动VPN代理设备完成自动初始化以及接收配置的处理,从而建立连接到Intranet网络的IPsec隧道。

本发明采用C语言编写了对任意一移动VPN代理设备进行自动初始化、接收配置和发送状态的过程处理。

在本发明中,多个移动VPN代理设备采用集合形式表示为PPD={pdA,pdB,…,pda,…,pdN},pdA表示移动VPN代理A设备,pdB表示移动VPN代理B设备,pdN表示移动VPN代理N设备,pda表示任意一个移动VPN代理设备,而角标a表示设备标志号。

移动VPN代理设备的设备代理初始化的处理过程为:

步骤1-A1,任意一移动VPN代理设备pda向配置服务器2发送自身的设备标志号a;

步骤1-A2,所述任意一移动VPN代理设备pda接收配置服务器2发送的配置校验随机数

在本发明中,该配置校验随机数是由数字和/或字母组成的8位随机数。

步骤1-A3,所述任意一移动VPN代理设备pda采用MD5算法对PSKa进行处理,获得Hash值(译文为:哈希值),记为设备哈希值

pda表示任意一个移动VPN代理设备,而角标a表示设备标志号。

PSKa表示预设的任意一移动VPN代理设备pda的预共享密钥。

在本发明中,MD5算法请参考《现代密码学原理与应用》,第116-121页,宋秀丽主编,2012年4月第1版,机械工业出版社。

步骤1-A4,任意一移动VPN代理设备pda向配置服务器2发送所述设备哈希值

在本发明中,针对移动VPN代理A设备1A的自动初始化的过程为:

步骤1-A1,移动VPN代理A设备pdA向配置服务器2发送自身的设备标志号A;

步骤1-A2,所述pdA接收配置服务器2发送的对应pdA的配置校验随机数

步骤1-A3,所述pdA采用MD5算法对PSKA进行处理,获得Hash值(译文为:哈希值),记为对应pdA的设备哈希值PSKA表示预设的pdA的预共享密钥。

步骤1-A4,所述pdA向配置服务器2发送所述

在本发明中,针对移动VPN代理B设备1B的自动初始化的过程为:

步骤1-A1,移动VPN代理B设备pdB向配置服务器2发送自身的设备标志号B;

步骤1-A2,所述pdB接收配置服务器2发送的对应pdB的配置校验随机数

步骤1-A3,所述pdB采用MD5算法对PSKB进行处理,获得Hash值(译文为:哈希值),记为对应pdB的设备哈希值PSKB表示预设的pdB的预共享密钥。

步骤1-A4,所述pdB向配置服务器2发送所述

在本发明中,针对移动VPN代理N设备1N的自动初始化的过程为:

步骤1-A1,移动VPN代理N设备pdN向配置服务器2发送自身的设备标志号N;

步骤1-A2,所述pdN接收配置服务器2发送的对应pdN的配置校验随机数

步骤1-A3,所述pdN采用MD5算法对PSKN进行处理,获得Hash值(译文为:哈希值),记为对应pdN的设备哈希值PSKN表示预设的pdN的预共享密钥。

步骤1-A4,所述pdN向配置服务器2发送所述

移动VPN代理设备的接收配置处理过程为:

在本发明中,接收配置处理发生在任意一个移动VPN代理设备pda接收到配置服务器2发送的配置—设备信息之后。

步骤1-B1,任意一移动VPN代理设备pda接收配置服务器2发送的配置—设备信息其中,除以外的其他参数为本发明使用的IPsec>

是在IPsec连接生成时由配置服务器2产生并向移动VPN代理设备发送的IPsec连接标识号,简称为设备—IPsec连接标记。

在本发明中,配置—设备信息是为了建议与IPsec连接用的。

步骤1-B2,根据设备—IPsec连接标记来判断所述移动VPN代理设备pda是否存在IPsec连接标记相同的IPsec连接;

若不存在,则依据配置—设备信息在移动VPN代理设备pda中添加IPsec连接;

若存在,则用配置—设备信息更新移动VPN代理设备pda中设备—IPsec连接标记相同的IPsec连接;

步骤1-B3,移动VPN代理设备pda依据配置—设备信息通过密钥交换协议构建得到VPN网关3的IPsec隧道。

在本发明中,对于IPsec隧道的建立请参考中华人民共和国密码行业标准,GM/T0022-2014,《IPSec VPN技术规范》,第4-28页,5.1密钥交换协议。

在本发明中,针对移动VPN代理A设备1A的接收配置处理过程为:

步骤1-B1,移动VPN代理A设备pdA接收配置服务器2发送的配置—设备信息

步骤1-B2,根据设备—IPsec连接标记来判断移动VPN代理A设备pdA是否存在IPsec连接标记相同的IPsec连接;

若不存在,则依据在移动VPN代理A设备pdA中添加IPsec连接;

若存在,则用更新移动VPN代理A设备pdA中设备—IPsec连接标记相同的IPsec连接;

步骤1-B3,移动VPN代理A设备pdA依据通过密钥交换协议构建得到VPN网关3的IPsec隧道。

在本发明中,针对移动VPN代理B设备1B的接收配置处理过程为:

步骤1-B1,移动VPN代理B设备pdB接收配置服务器2发送的配置—设备信息

步骤1-B2,根据设备—IPsec连接标记来判断所述移动VPN代理设备pdB是否存在IPsec连接标记相同的IPsec连接;

若不存在,则依据在移动VPN代理B设备pdB中添加IPsec连接;

若存在,则用更新移动VPN代理B设备pdB中设备—IPsec连接标记相同的IPsec连接;

步骤1-B3,移动VPN代理B设备pdB依据通过密钥交换协议构建得到VPN网关3的IPsec隧道。

在本发明中,针对移动VPN代理N设备1N的接收配置处理过程为:

步骤1-B1,移动VPN代理N设备pdN接收配置服务器2发送的配置—设备信息

步骤1-B2,根据设备—IPsec连接标记来判断所述移动VPN代理设备pdN是否存在IPsec连接标记相同的IPsec连接;

若不存在,则依据在所述移动VPN代理N设备pdN中添加IPsec连接;

若存在,则用更新移动VPN代理N设备pdN中设备—IPsec连接标记相同的IPsec连接;

步骤1-B3,移动VPN代理N设备pdN依据通过密钥交换协议构建得到VPN网关3的IPsec隧道。

移动VPN代理设备1的发送状态处理过程为:

在本发明中,任意一个移动VPN代理设备pda收集自身的设备—状态信息INSTAT_a={pda,IPa,CPUa,MEMa,NETa,TNLa},并在完成初始化后,每2分钟执行一次设备—状态信息INSTAT_a={pda,IPa,CPUa,MEMa,NETa,TNLa}发送给配置服务器2。

在本发明中,INSTAT_a={pda,IPa,CPUa,MEMa,NETa,TNLa}中的各元素定义为:pda表示任意一个移动VPN代理设备,而角标a表示设备标志号;IPa表示任意一个移动VPN代理设备pda的IP地址;CPUa表示任意一个移动VPN代理设备pda的CPU使用率;MEMa表示任意一个移动VPN代理设备pda的内存使用率;NETa表示任意一个移动VPN代理设备pda的网络使用率;TNLa表示属于任意一个移动VPN代理设备pda的所有IPsec隧道集(简称为设备—IPsec隧道集),设备—IPsec隧道集采用集合形式表示为TNLa={tnla_1,tnla_2,…,tnla_s,…,tnla_S},tnla_1表示属于任意一个移动VPN代理设备pda的第一个IPsec隧道,tnla_2表示属于任意一个移动VPN代理设备pda的第二个IPsec隧道,tnla_s表示属于任意一个移动VPN代理设备pda的任意一个IPsec隧道,tnla_S表示属于任意一个移动VPN代理设备pda的最后一个IPsec隧道,S表示属于任意一个移动VPN代理设备pda的IPsec隧道总个数,s∈S,s表示IPsec隧道编号。tnla_s={tda_s,DTa_s},其中tda_s为任意一个移动VPN代理设备pda中建立第s个IPsec隧道所使用的IPsec连接的标识号(简称为设备—IPsec连接标记),DTa_s为tnla_s对应IPsec隧道的持续时间(简称为设备—IPsec隧道持续时间)。

在本发明中,移动VPN代理A设备1A的发送状态处理过程为:移动VPN代理A设备pdA收集自身的设备—状态信息,记为INSTAT_A={pdA,IPA,CPUA,MEMA,NETA,TNLA},并在完成初始化后,每2分钟执行一次设备—状态信息INSTAT_A={pdA,IPA,CPUA,MEMA,NETA,TNLA}发送给配置服务器2。

pdA表示移动VPN代理A设备的标识号;

IPA表示移动VPN代理A设备pdA的IP地址;

CPUA表示移动VPN代理A设备pdA的CPU使用率;

MEMA表示移动VPN代理A设备pdA的内存使用率;

NETA表示移动VPN代理A设备pdA的网络使用率;

TNLA表示属于移动VPN代理A设备pdA的所有IPsec隧道。

在本发明中,移动VPN代理B设备1B的发送状态处理过程为:移动VPN代理B设备pdB收集自身的设备—状态信息,记为INSTAT_B={pdB,IPB,CPUB,MEMB,NETB,TNLB},并在完成初始化后,每2分钟执行一次设备—状态信息INSTAT_B={pdB,IPB,CPUB,MEMB,NETB,TNLB}发送给配置服务器2。

pdB表示移动VPN代理B设备1B的标识号;

IPB表示移动VPN代理B设备pdB的IP地址;

CPUB表示移动VPN代理B设备pdB的CPU使用率;

MEMB表示移动VPN代理B设备pdB的内存使用率;

NETB表示移动VPN代理B设备pdB的网络使用率;

TNLB表示属于移动VPN代理B设备pdB的所有IPsec隧道。

在本发明中,移动VPN代理N设备1N的发送状态处理过程为:移动VPN代理N设备pdN收集自身的设备—状态信息,记为INSTAT_N={pdN,IPN,CPUN,MEMN,NETN,TNLN},并在完成初始化后,每2分钟执行一次设备—状态信息INSTAT_N={pdN,IPN,CPUN,MEMN,NETN,TNLN}发送给配置服务器2。

pdN表示移动VPN代理N设备1N的标识号;

IPN表示移动VPN代理N设备pdN的IP地址;

CPUN表示移动VPN代理N设备pdN的CPU使用率;

MEMN表示移动VPN代理N设备pdN的内存使用率;

NETN表示移动VPN代理N设备pdN的网络使用率;

TNLN表示属于移动VPN代理N设备pdN的所有IPsec隧道。

配置服务器2

在本发明中,配置服务器2可以选用戴尔公司生产的PowerEdge R620服务器,使用Linux操作系统作为配置服务器2的操作系统,并使用Java语言编写本发明用到的处理程序。在使用时,配置服务器2部署在DMZ(Demilitarized Zone,译文为:非军事化区)中。

配置服务器2中一方面存储有全部移动VPN代理设备(即A、B、……N)的用于设备认证的设备信息集INAUTH={INAUTH_A,INAUTH_B,…INAUTH_a,…,INAUTH_N};另一方面存储有全部移动VPN代理设备的设备—状态信息集INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N};再一方面存储有VPN网关3的网关—配置信息集IMSTAT={IP,CPU,MEM,NET,TNL}。

INAUTH={INAUTH_A,INAUTH_B,…INAUTH_a,…,INAUTH_N}中INAUTH_A表示移动VPN代理A设备的设备信息,INAUTH_B表示移动VPN代理B设备的设备信息,INAUTH_N表示移动VPN代理N设备的设备信息,INAUTH_a表示任意一个移动VPN代理设备pda的设备信息。

INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N}中INSTAT_A表示移动VPN代理A设备的设备—状态信息,INSTAT_B表示移动VPN代理B设备的设备—状态信息,INSTAT_N表示移动VPN代理N设备的设备—状态信息,INSTAT_a表示任意一个移动VPN代理设备pda的设备—状态信息。任意一设备—状态信息记为INSTAT_a={pda,IPa,CPUa,MEMa,NETa,TNLa}

IMSTAT={IP,CPU,MEM,NET,TNL}中IP表示VPN网关3的IP地址;CPU表示VPN网关3的CPU使用率;MEM表示VPN网关3的内存使用率;NET表示VPN网关3的网络使用率;TNL表示VPN网关3中存在的所有IPsec隧道集(简称为网关—IPsec隧道集),网关—IPsec隧道集采用集合形式表示为TNL={tnl1,tnl2,…,tnlt,…,tnlT},tnl1表示属于VPN网关3的第一个IPsec隧道,tnl2表示属于VPN网关3的第二个IPsec隧道,tnlt表示属于VPN网关3的任意一个IPsec隧道,tnlT表示属于VPN网关3的最后一个IPsec隧道,T表示属于VPN网关3的IPsec隧道总个数,t∈T,t表示IPsec隧道编号。所述tnlt={tdt,DTt}中tdt表示属于VPN网关3的第t个IPsec隧道所使用的IPsec连接的标识号(简称为网关—IPsec连接标记),DTt表示tnlt对应IPsec隧道的持续时间(简称为网关—IPsec隧道持续时间)。

本发明采用JAVA语言编写了配置服务器2对任意一个移动VPN代理设备pda进行自动初始化的处理,以及接收来自任意一个移动VPN代理设备pda和VPN网关3状态信息的处理过程。而初始化的处理一方面包括有配置服务器2对任意一个移动VPN代理设备pda进行设备认证,另一方面配置服务器2配置任意一个移动VPN代理设备pda和VPN网关3的处理过程。

配置服务器2进行的设备认证处理过程为:

步骤2-A1,配置服务器2接收任意一个移动VPN代理设备pda发送的自身设备标志号a,然后采用线性同余算法生成配置校验随机数,记为最后将所述返回给任意一个移动VPN代理设备pda

步骤2-A2,配置服务器2根据所述a查找所述pda对应的设备信息INAUTH_a={pda,PSKa};然后采用MD5算法对PSKa进行处理,获得Hash值(译文为:哈希值),记为服务器哈希值

pda表示任意一个移动VPN代理设备,而角标a表示设备标志号。

PSKa表示预设的任意一移动VPN代理设备pda的预共享密钥。

步骤2-A3,配置服务器2接收并对比若相同,则任意一移动VPN代理设备pda通过配置服务器2的设备认证,配置服务器2启动后续配置处理,转入步骤2-B1;

若不相同,则配置服务器2不启动后续配置处理,返回步骤2-A1。

在本发明中,针对移动VPN代理A设备1A的设备认证处理过程为:

步骤2-A1,配置服务器2接收移动VPN代理A设备pdA发送的自身设备标志号A,然后采用线性同余算法生成配置检验随机数,记为最后将所述返回给移动VPN代理A设备pdA

步骤2-A2,配置服务器2根据所述A查找所述pdA对应的设备信息INAUTH_A={pdA,PSKA};然后采用MD5算法对PSKA进行处理,获得Hash值(译文为:哈希值),记为pdA对应的服务器哈希值

步骤2-A3,配置服务器2接收并对比若相同,则移动VPN代理A设备1A通过配置服务器2的设备认证,配置服务器2启动后续配置处理,转入步骤2-B1;

若不相同,则配置服务器2不启动后续配置处理,返回步骤2-A1。

在本发明中,针对移动VPN代理B设备1B的设备认证处理过程为:

步骤2-A1,配置服务器2接收移动VPN代理B设备pdB发送的自身设备标志号B,然后采用线性同余算法生成配置校验随机数,记为最后将所述返回给移动VPN代理B设备pdB

步骤2-A2,配置服务器2根据所述B查找所述pdB对应的设备信息INAUTH_B={pdB,PSKB};然后采用MD5算法对PSKB进行处理,获得Hash值(译文为:哈希值),记为pdB对应的服务器哈希值

步骤2-A3,配置服务器2接收并对比若相同,则移动VPN代理B设备1B通过配置服务器2的设备认证,配置服务器2启动后续配置处理,转入步骤2-B1;

若不相同,则配置服务器2不启动后续配置处理,返回步骤2-A1。

在本发明中,针对移动VPN代理N设备1N的设备认证处理过程为:

步骤2-A1,配置服务器2接收移动VPN代理N设备pdN发送的自身设备标志号N,然后采用线性同余算法生成配置检验随机数,记为最后将所述返回给移动VPN代理N设备pdN

步骤2-A2,配置服务器2根据所述N查找所述pdN对应的设备信息INAUTH_N={pdN,PSKN};然后采用MD5算法对PSKN进行处理,获得Hash值(译文为:哈希值),记为pdN对应的服务器哈希值

步骤2-A3,配置服务器2接收并对比若相同,则移动VPN代理N设备1N通过配置服务器2的认证,配置服务器2启动后续配置处理,转入步骤2-B1;

若不相同,则配置服务器2不启动后续配置处理,返回步骤2-A1。

配置服务器2的配置过程为:

在本发明中,配置服务器2对任意一个移动VPN代理设备pda和VPN网关3进行配置的处理发生在完成设备认证之后。

步骤2-B1,任意一个移动VPN代理设备pda经配置服务器2认证成功后,配置服务器2第一方面将提取到属于所述任意一个移动VPN代理设备pda的IPa,第二方面构建属于所述任意一个移动VPN代理设备pda的IPsec连接模板,简称为配置—设备信息第三方面构建属于所述任意一个移动VPN代理设备pda的网关连接模板,简称为网关—设备信息

步骤2-B2,配置服务器2向VPN网关3下发所述

步骤2-B3,配置服务器2向VPN代理1下发所述

是在IPsec连接生成时由配置服务器2产生并向移动VPN代理设备发送的IPsec连接标识号,简称为设备—IPsec连接标记。

cd2-3是在IPsec连接生成时由配置服务器2产生并向VPN网关3发送的IPsec连接标识号,简称为网关—IPsec连接标记。所述将在VPN网关3的所述cd2-3中进行查找,若存在相同的IPsec隧道,则IPsec连接建立。

在本发明中,配置服务器2对移动VPN代理A设备1A和VPN网关3进行配置的处理过程为:

步骤2-B1,移动VPN代理A设备pdA经配置服务器2认证成功后,配置服务器2第一方面将提取到属于移动VPN代理A设备pdA的地址IPA,第二方面构建属于移动VPN代理A设备pdA的配置—设备信息第三方面构建属于移动VPN代理A设备pdA的网关—设备信息

步骤2-B2,配置服务器2向VPN网关3下发所述

步骤2-B3,配置服务器2向移动VPN代理A设备1A下发所述

在本发明中,配置服务器2对移动VPN代理B设备1B和VPN网关3进行配置的处理过程为:

步骤2-B1,移动VPN代理B设备pdB经配置服务器2认证成功后,配置服务器2第一方面将提取到属于移动VPN代理B设备pdB的地址IPB,第二方面构建属于移动VPN代理B设备pdB的配置—设备信息第三方面构建属于移动VPN代理B设备pdB的网关—设备信息

步骤2-B2,配置服务器2向VPN网关3下发所述

步骤2-B3,配置服务器2向移动VPN代理B设备1B下发所述

在本发明中,配置服务器2对移动VPN代理N设备1N和VPN网关3进行配置的处理过程为:

步骤2-B1,移动VPN代理N设备pdN经配置服务器2认证成功后,配置服务器2第一方面将提取到属于移动VPN代理N设备pdN的地址IPN,第二方面构建属于移动VPN代理N设备pdN的配置—设备信息第三方面构建属于移动VPN代理N设备pdN的网关—设备信息

步骤2-B2,配置服务器2向VPN网关3下发所述

步骤2-B3,配置服务器2向移动VPN代理N设备1N下发所述

配置服务器2对接收到的状态信息的处理过程为:

在本发明中,配置服务器2存储有所有移动VPN代理设备的设备—状态信息集INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N}。

步骤2-C1,配置服务器2接收任意一个移动VPN代理设备pda的设备—状态信息INSTAT_a={pda,IPa,CPUa,MEMa,NETa,TNLa};

步骤2-C2,配置服务器2使用所述INSTAT_a更新INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N}中对应移动VPN代理设备pda的状态信息;

配置服务器2接收来自移动VPN代理A设备1A的状态信息的处理过程为:

步骤2-C1,配置服务器2接收移动VPN代理A设备1A的设备—状态信息INSTAT_A={pdA,IPA,CPUA,MEMA,NETA,TNLA};

步骤2-C2,配置服务器2使用所述INSTAT_A更新INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N}中对应移动VPN代理A设备1A的状态信息;

配置服务器2接收来自移动VPN代理B设备1B的状态信息的处理过程为:

步骤2-C1,配置服务器2接收移动VPN代理B设备1B的设备—状态信息INSTAT_B={pdB,IPB,CPUB,MEMB,NETB,TNLB};

步骤2-C2,配置服务器2使用所述INSTAT_B更新INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N}中对应移动VPN代理B设备1B的状态信息;

配置服务器2接收来自移动VPN代理N设备1N的状态信息的处理过程为:

步骤2-C1,配置服务器2接收移动VPN代理N设备1N的设备—状态信息INSTAT_N={pdN,IPN,CPUN,MEMN,NETN,TNLN};

步骤2-C2,配置服务器2使用所述INSTAT_N更新INSTAT={INSTAT_A,INSTAT_B,…INSTAT_a,…,INSTAT_N}中对应移动VPN代理N设备1N的状态信息;

在本发明中,配置服务器2接收来自VPN网关3的状态信息。

配置服务器2依据接收到的VPN网关3发送的网关状态信息IMSTAT_3={IP,CPU,MEM,NET,TNL}来更新存储的网关—配置信息集IMSTAT={IP,CPU,MEM,NET,TNL}。

VPN网关3

在本发明中,VPN网关3可以选用戴尔公司生产的PowerEdge R620服务器,使用Linux操作系统作为VPN网关3的操作系统,并使用C语言编写本发明用到的处理程序。在使用时,VPN网关3部署在DMZ(Demilitarized Zone,译文为:非军事化区)中。

本发明采用C语言编写了对所述VPN网关3进行接收配置和发送状态的处理。

VPN网关3进行接收配置的处理过程为:

在本发明中,接收配置发生在VPN网关3接收到配置服务器2发送的网关—配置信息集IMSTAT={IP,CPU,MEM,NET,TNL}之后。

步骤3-A1,VPN网关3接收配置服务器2发送的网关—设备信息其中,除cd2-3以外的其他参数为本发明使用的IPsec>

cd2-3是在IPsec连接生成时由配置服务器2产生并向VPN网关3发送的IPsec连接标识号,简称为网关—IPsec连接标记。

在本发明中,网关—设备信息是为了建议与IPsec连接用的。

步骤3-A2,根据网关—IPsec连接标记cd2-3来判断任意一移动VPN代理设备pda是否存在IPsec连接标识号相同的IPsec连接;

若不存在,则依据网关—设备信息在VPN网关3中添加IPsec连接;

若存在,则用网关—设备信息更新VPN网关3中网关—IPsec连接标记cd2-3相同的IPsec连接。

VPN网关3进行发送状态的处理过程为:

在本发明中,VPN网关3启动后每2分钟执行网关状态信息IMSTAT_3={IP,CPU,MEM,NET,TNL}发送,或者有新的移动VPN代理设备接入到VPN网关3时执行网关状态信息IMSTAT_3={IP,CPU,MEM,NET,TNL}发送。

步骤3-B1,VPN网关3收集自身的网关状态信息,记为IMSTAT_3={IP,CPU,MEM,NET,TNL};

IP表示VPN网关3的IP地址;

CPU表示VPN网关3的CPU使用率;

MEM表示VPN网关3的内存使用率;

NET表示VPN网关3的网络使用率;

TNL表示VPN网关3中存在的所有IPsec隧道集(简称为网关—IPsec隧道集),网关—IPsec隧道集采用集合形式表示为TNL={tnl1,tnl2,…,tnlt,…,tnlT},tnl1表示属于VPN网关3的第一个IPsec隧道,tnl2表示属于VPN网关3的第二个IPsec隧道,tnlt表示属于VPN网关3的任意一个IPsec隧道,tnlT表示属于VPN网关3的最后一个IPsec隧道,T表示属于VPN网关3的IPsec隧道总个数,t∈T,t表示IPsec隧道编号。tnlt={tdt,DTt}其中tdt为属于VPN网关3的第t个IPsec隧道所使用的IPsec连接的标识号(简称为网关—IPsec连接标记),DTt为tnlt对应IPsec隧道的持续时间(简称为网关—IPsec隧道持续时间)。

步骤3-B2,VPN网关3将所述网关状态信息IMSTAT_3发送给配置服务器2。

认证服务器4

在本发明中,认证服务器4可以选用戴尔公司生产的PowerEdge R620服务器,使用Linux操作系统作为认证服务器4的操作系统,并使用Java语言编写本发明用到的处理程序。在使用时,认证服务器4部署在Intranet内部。

在本发明中,认证服务器4中一方面存储有属于企业全部工作人员的注册身份信息集UAUTH={uAUTH_A,uAUTH_B,…,uAUTH_a…uAUTH_Z},另一方面存储有针对每一个工作人员的授权信息集ACLAUTH={acAUTH_A,acAUTH_B,…,acAUTH_a,…,acAUTH_N}。认证服务器4用于完成对用户的身份认证和授权信息下发的处理。

uAUTH_A表示连接在移动VPN代理A设备上的用户(或工作人员)在认证服务器4中注册时的注册身份信息;

uAUTH_B表示连接在移动VPN代理B设备上的用户(或工作人员)在认证服务器4中注册时的注册身份信息;

uAUTH_Z表示连接在移动VPN代理Z设备上的用户(或工作人员)在认证服务器4中注册时的注册身份信息;

uAUTH_a表示连接在任意一移动VPN代理设备pda上的用户(或工作人员)在认证服务器4中注册时的注册身份信息,简称为注册身份信息;

acAUTH_A表示认证服务器4针对连接在移动VPN代理A设备上的用户(或工作人员)设置的授权信息;

acAUTH_B表示认证服务器4针对连接在移动VPN代理B设备上的用户(或工作人员)设置的授权信息;

acAUTH_N表示认证服务器4针对连接在移动VPN代理N设备上的用户(或工作人员)设置的授权信息;

acAUTH_a表示认证服务器4针对连接在任意一移动VPN代理设备pda上的用户(或工作人员)设置的授权信息,简称为授权信息。

所述注册身份信息uAUTH_a={uda,pwda}中uda表示连接在任意一移动VPN代理设备pda上的用户(或工作人员)注册时用的用户名,pwda表示所述uda登录用的密码。

所述授权信息中uda表示连接在任意一移动VPN代理设备pda上的用户(或工作人员)注册时用的用户名,pwda表示所述uda登录用的密码,PLa表示属于所述uda的访问资源集。访问资源集表示允许uda访问的第一个认证客户端,表示允许uda访问的第二个认证客户端,表示允许uda访问的最后认证客户端,I表示允许uda访问的认证客户端的总个数。

认证服务器4的身份认证处理与授权信息下发处理过程为:

步骤4-A1,认证服务器4接收来自任意一个用户user发送的访问请求accessrequest;

步骤4-A2,认证服务器4依据注册身份信息集UAUTH={uAUTH_A,uAUTH_B,…,uAUTH_a…uAUTH_Z}来核对所述用户user是否属于企业内部网Intrnet的注册用户;若属于企业内部网Intrnet中的任意一注册用户uAUTH_a={uda,pwda},执行步骤4-A3,若不属于企业内部网Intrnet的注册用户,注册用户认证失败;

步骤4-A3,认证服务器4通过在授权信息集ACLAUTH={acAUTH_A,acAUTH_B,…,acAUTH_a,…,acAUTH_N}中查找出uAUTH_a={uda,pwda}对应的用户授权信息acAUTH_a;并记录下uAUTH_a={uda,pwda}的IP地址,并根据所找到的acAUTH_a进行授权信息下发至允许uda访问的认证客户端5的访问资源集

认证客户端5

在本发明中,认证客户端5可以选用戴尔公司生产的PowerEdge R620服务器,使用Linux操作系统作为认证客户端5的操作系统,并使用C语言编写本发明用到的处理程序。在使用时,认证客户端5部署在Intranet内部受保护的私有资源Private resources之前,可同时使用多个认证客户端5保护不同的私有资源Private resources,一个认证客户端5也可部署在若干个私有资源Private resources之前以同时保护多个访问资源通过使用认证客户端5能够实现对Intranet私有资源Privateresources的细粒度访问控制。

任意一个认证客户端设有唯一标识符rdj,J为Intranet中认证客户端的总数目,j∈J。任意认证客户端维护用户的IP地址集记为IPLj={ipj_1,ipj_2,…,ipj_k,…,ipj_K},其中ipj_1表示rdj允许访问的第一个用户,ipj_2表示rdj允许访问的第二个用户,ipj_k表示rdj允许访问的任意一个用户,ipj_K表示rdj允许访问的最后一个用户,K为rdj允许访问的用户的总数目,k∈K。

在本发明中,认证客户端5用于过滤用户请求和授权信息接收的处理。

认证客户端5对用户请求的过滤处理过程为:

步骤5-A1,任意一认证客户端rdj接收监听来自任意一用户user的访问请求access>a;

在本发明中,因为一个移动VPN代理设备连接一个用户user,所以任意一用户user的IP地址与任意一个移动VPN代理设备pda的IP地址是相同的。

步骤5-A2,所述认证客户端rdj通过IPLj={ipj_1,ipj_2,…,ipj_k,…,ipj_K}来判断所述IPa对应的允许访问的用户;

若iIPa∈IPLj,转发用户的访问请求access>

则拒绝用户的访问请求access request,若用户的请求为Web请求,则需重定向用户到认证服务器4。

认证客户端5的授权信息接收的处理过程为:

步骤5-B1,认证客户端5接收来自认证服务器4的IPa

步骤5-B2,认证客户端5使用所述IPa查询IPLj

若IPa∈IPLj,则不对IPLj进行更新;

若则更新IPLj。编程语言中记为IPLj=IPLj∪iIPa

本发明设计了一种基于IPsec VPN代理的Intranet接入系统,所要解决的是IPsecVPN在使用上的困难以及维护上的困难的技术问题,本发明接入系统通过移动VPN代理设备实现用户对Intranet的接入,进而通过认证服务器和认证客户端实现对用户访问请求的授权;IPsec隧道是由VPN网关和移动VPN代理设备建立的,无需用户参与,降低了IPsec VPN的使用门槛;在IPsec基础功能上加以拓展,与传统IPsec VPN相比,本发明接入系统具有配置管理简单、后台维护方便、无需客户端软件即可接入的优点,同时还提供细粒度的访问控制能的技术效果。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号