具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种局域网访问控制的方法以及网关设备和通信系统方法。
如图1所示,本发明一实施例的组网示意图,在不同局域网(局域网1和局域网2)的网关(第一网关和第二网关)之间设立IPSec(Security Architecture forIP network,IP层协议安全结构)隧道,第一网关和第二网关通过所述IPsec通道进行交互,保持注册用户信息的同步,当用户在其中一个网关注册后,另一个网关则可以通过数据同步获得该用户的注册用户信息;本例中,用IPSec通道进行数据传输可以保证局域网1与局域网2之间通信的安全性。
图中用户在第一网关上登录后,局域网1和局域网2对用户来说都是安全的。可以直接访问局域网1和局域网2的资源。发往局域网2的数据由第一网关截获后,封装成IPsec报文后发给第二网关,再由第二网关解析后转发往局域网2,反之亦然。可以理解,用户也可以不通过局域网1,直接访问局域网2,因为用户已经在第一网关注册过,因此无需在第二网关重复注册,可以直接通过第二网关的验证访问局域网2的资源。
以下对本发明的优选实施例进行详细说明。
本发明一实施例提供的局域网访问控制的方法,流程如图2所示,包括:
A1,第一网关与第二网关交互进行注册用户信息的同步;
具体的同步方式可以有多种,例如:可以将同步的过程分为初始同步阶段和更新同步阶段:
初始同步阶段:网关相互之间拷贝对方所有的注册用户信息,以完成初始同步;当网关之间注册用户信息完全一致后,则进入更新阶段;
更新同步阶段:初始同步后,当某个网关的注册用户信息发生改变则将改变的数据通知给其他具有同步关系的网关,其他网关进行数据更新。
本发明实施例中,所述第一网关与第二网关交互进行注册用户信息的同步后,若所述第一网关和所述第二网关中一个网关配置的注册用户信息发生改变,则通过更新信息将发生改变的数据发送给另一个网关进行配置更新。以保证第一网关和第二网关具有相同的注册用户信息。
本实施例中,注册用户信息包括:
用户的登陆身份校验信息和对应的用户访问的安全控制策略。
所述用户的登陆身份校验信息可以是用于识别用户的多种形式,一般采用用户名、密码的形式,可以理解,也可以采用如:用户的网际协议(IP)地址,介质访问控制(MAC)地址等可以标识用户身份的信息。
所述安全控制策略包括:用户的权限设置以及权限对应允许访问的局域网资源。
例如:用户的权限可以分为管理员级、用户级、访客级;
具有管理员级权限的用户具有最高权限,可以访问和修改局域网内的所有资源,对局域网的资源配置和数据系统进行管理;
具有用户级权限的用户可以访问和修改共享区的资源;
具有访客级权限的用户只能以“只读”方式获得共享区的资源。
上述更新同步阶段,注册用户信息发生改变包括:新用户的注册、用户信息的销毁、用户权限级别的变更、权限级别对应的资源配置的变更等。
具体的,本发明实施例第一网关和第二网关之间的通信是通过建立的IPsec隧道实现的,所述第一网关和所述第二网关之间通过IPsec隧道进行数据传输,在所述数据传输前,将所述数据封装成IPsec格式。。通过IPsec隧道方式进行通信可以使得网关之间交互的数据更加安全,因为只有拥有隧道标识的网关才可以对IPsec报文进行解封,本发明实施例中并不限于此种方式完成网关之间的通信,现有的常规通信方式均可使用,例如传统的会话方式等,具体的方式不构成对本发明的限制。可以理解,若所述IPsec隧道断开,则所述第一网关和所述第二网关重新协商建立IPsec隧道,以保证实时的连通。
A2,第一网关接收用户的接入请求;
第一网关根据所述与第二网关同步的注册用户信息对该用户访问局域网进行接入控制。
根据所述与第二网关同步的注册用户信息判断所述用户在所述第一网关的接入是否合法,若合法,则允许所述用户的接入,若不合法,则拒绝所述用户的接入。
具体的,判断所述用户是否在所述第一网关注册过的过程包括:
获取用户接入请求中的用户名和密码;
检查所述与第二网关同步的注册信息中是否有所述用户名;若有所述用户名;则继续检查密码是否正确,若密码正确,则确认合法;若没有所述用户的用户名或者密码不正确,则确认不合法。
可以理解,具体判断所述用户是否在所述第一网关注册的过程还可以是,获取用户接入请求中的IP地址或MAC地址,检查所述与第二网关同步的注册信息中是否包含所述IP地址或MAC地址,若包含,则允许所述用户的接入。
本实施例中,还包括:第一网关接收报文并进行报文转发处理。本发明实施例中,网关可以接收三种报文并并可以对不同的报文进行区分处理。
若所述第一网关收到的报文为安全套接字层SSL报文,则进行报文解封,检查该用户的安全控制策略,如果不符合网关安全策略,则丢弃该报文;若符合网关的安全控制策略,则进一步判断所述报文的目的地址,如果目的地址为所述第一网关所在的局域网,则直接进行转发,如果所述报文的目的地址是所述第二网关所在的局域网,则封装成IPsec报文,并通过IPsec隧道发送给第二网关。
若所述第一网关收到的报文为所述第一网关所在局域网的报文,如果所述报文的目的地址为公网,则封装成SSL报文后发送;如果所述报文的目的地址为所述第二网关所在的局域网,则封装成IPsec报文并通过与所述第二网关之间的IPsec隧道发送给第二网关。
若所述第一网关收到的报文为第二网关发送的IPsec报文,则判断报文的目的地址是否为本网关所在的局域网,若是,则进行IPsec解封装后转发。
本发明实施例中,通过网关之间的交互进行注册用户信息的同步;当用户在一个网关注册后,再登陆其他网关时,其他网关则可以根据同步的注册用户信息对该用户访问局域网进行接入控制。则可以无需按照现有技术的方式重复在其他网关注册,简化了用户注册的过程,使得用户一旦用于在一个网关获得访问权限,则可以登陆多个局域网获得资源,极大的方便了用户。
进一步本发明实施例网关之间建立IPsec隧道,并通过建立的IPsec隧道进行注册用户信息的同步和数据传输,可以使得网关之间的数据传输更加安全可靠。
本发明一实施例对网关针对不同报文的一种可行处理方式进行描述,流程如图3所示,包括:
B1,网关接收报文;
B2,检查报文的类型;若报文的类型为普通报文,即所述报文为网关所在局域网内部的报文,则继续步骤B3;若报文的类型为SSL报文,则继续步骤B4;若报文的类型为IPsec报文,则继续步骤B5;
B3,进行普通报文处理,具体的处理方式为:若所述普通报文的目的地址为公网,则进行SSL封装后发送;若所述普通报文的目的地址为所述网关所在的局域网,则直接转发;若所述普通报文的目的地址为其他局域网,则封装成IPsec报文后,通过与所述其他局域网内的网关之间的IPsec隧道发送给对方网关。
B4,对SSL报文进行解析并继续步骤B6。
B5,判断该IPsec报文的目的地址是否是本网关所在局域网,若是,则进行解封并转发,若不是,则根据目的地址查找IPsec隧道,并通过IPsec隧道进行转发,并结束本流程。
B6,结合和其他网关同步的数据对报文进行安全策略匹配,若匹配通过,则继续步骤B8,若匹配失败,则继续步骤B7。
B7,丢弃报文,并结束本流程。
B8,判断该报文的目的地址是否是本网关所在局域网,若是,则继续步骤B9,若否,则继续步骤B10。
B9,按照目的地址进行报文转发,并结束本流程。
B10,根据所述报文的目的地址查找IPsec隧道,若找到,则继续步骤B11,若否,则继续所述步骤B12。
可以理解的是,网关保存与其他网关建立的IPsec隧道并保存为一个访问控制列表(Access Control List,ACL),在进行IPsec报文发送时,则查找该ACL获得IPsec隧道。
B11,通过所述查找到的IPsec隧道将所述IPsec报文发送给其他网关。
B12,丢弃所述IPsec报文。并结束本流程。
基于上述方法,本发明实施例的网关可以处理IPsec和SSL报文。而IPsec隧道配置建立后,网关之间保持IPsec隧道两端的通信关系。一旦隧道断开,网关之间会重新进行协商建立隧道。而每次隧道建立之后,网关间可以重新将两端的注册用户信息进行同步。
在通过IPsec隧道进行注册用户信息同步的过程如果每次都把网关之间所有的注册用户信息逐一传递进行比较,除了耗费较多的时间,还可能造成IPsec隧道堵塞,不利于业务的运行。
因此,本发明实施例中可以通过仅更新变化的数据,以降低同步的时候传输的数据量,具体的可以通过更新信息将发生变化的数据发送给对方网关。这里的发生变化的数据可以包括:修改的数据、新增的数据、删除的数据。
下面通过一个具体实例进行说明,以下实施例仅作为本发明实现的一种可行的实施例,不构成对本发明的限制。
对每一条注册用户信息都设置一个标志位、一个序列号和一个老化位。
注册用户信息包括:用户的登陆身份校验信息和对应的用户访问的安全控制策略,所述安全控制策略包括:用户的权限设置以及权限对应允许访问的局域网资源。
不同网关的注册用户信息,其分配的序列号范围不相同。该序列号用于唯一的标识每条注册用户信息。
标志位用于标识每条注册用户信息的状态。标志位的值的表示的含义如表1所示。
标志位为1和5的注册用户信息都不会生效,只会保存在网关中等待同步。
标志位在2、3、4的注册用户信息都会生效;其中标志位为3的配置信息表示网关间同步正常,其他值则表示同步异常。
标志位值 |
意义 |
1 |
初始化的信息 |
2 |
待同步的信息 |
3 |
已同步的信息 |
4 |
超时仍未同步的信息 |
5 |
待删除的信息 |
下面结合本例信息同步的流程对表1的使用进行说明:
网关初次配置注册用户信息后,各个注册用户信息的标志位置均为1。随后当前网关将把该注册用户信息发送给对端网关,把标志位设为2。而一旦收到对端网关的确认,则标志位置为3。通过出错重传机制确保信息可以发送到对方。
对于接收方网关,收到配置注册用户信息后,将该注册用户信息标志位设为2,并发送确认报文。一旦收到对方的确认报文后,将标志位设为3。
一条配置注册用户信息,在状态为2或3时都会生效。网关会定期将查询标志位非3的配置注册用户信息,将其发送到对端网关,并修改老化位的值加1。这里老化位是预置的发送次数,当发送预置的次数到达临界值,仍然无法同步该注册用户信息,则网关置该注册用户信息标志位为4,上报网管,记录配置异常,不再发送配置注册用户信息。
例如:预置老化位的临界值为3,那么第一发送则把老化位置1,第二次发送将老化位置2,第三次发送将老化位置3,此时到达临界值,若还没有收到对方网关的确认,则将注册用户信息标志位置4。
对于修改过的注册用户信息,本地网关将其标志为改回2并发送该注册用户信息给对端网关,收到对端正确回应后再次置为3。而本地网关若收到修改注册用户信息后,则进行注册用户信息修改,如果修改成功,标志位不变,否则,将标志位置5,上报网管。
对于要删除的配置,该注册用户信息的标志位置5,发送并将该注册用户信息的序列号发送到对方网关。收到对方网关正确的应答后,在本地删除,否则,将标志位置4上报网管。
收到对方网关要删除的序列号,本地删除后发送应答信息。本地删除失败,将标志位5,上报网管。
对于标志位为4、5的配置,管理员可以选择预先设置启动重发或在本地删除该信息。管理员也可以选择发送本地所有配置信息覆盖远端网关信息或请求远端网关发送所有配置信息到本网关。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
本发明一实施例提供的网关设备,其结构示意图如图4所示,包括:
信息同步单元410,用于与另一网关交互进行注册用户信息的同步;
接入控制单元420,用于接收用户的接入请求,根据所述与另一网关同步的注册用户信息对该用户访问局域网进行接入控制。
本发明另一实施例提供的网关设备500,对接入控制单元的一种具体可行的处理方式给出实例,本例应理解为对接入控制单元功能应用于具体场景的实现,不构成对本发明的限制,其结构示意图如图5所示,包括:
信息同步单元510,用于与另一网关交互进行注册用户信息的同步;
接入控制单元520,用于在网关收到用户发送的报文时,根据所述与另一网关同步的注册用户信息对该用户访问局域网进行接入控制。
IPsec隧道建立单元530,用于建立与另一网关之间的IPsec隧道,所述IPsec隧道用于网关之间传输数据,在所述数据传输前,将所述数据封装成IPsec格式。。
报文转发单元540,用于接收报文并进行转发处理。
其中,所述报文转发单元540包括:
报文分类单元541,用于检测所述接收报文的类型;若接收的报文为SSL报文,则将报文送SSL报文处理单元处理;若接收的报文为普通报文,则将报文送普通报文处理单元处理;若接收的报文为IPsec报文,则将报文送IPsec报文处理单元处理;
SSL报文处理单元542,用于接收报文分类单元541的SSL报文则进行报文解封;检查该用户的安全控制策略,如果不符合网关安全策略,则丢弃该报文;若符合网关的安全控制策略,则进一步判断所述报文的目的地址,如果目的地址为所述第一网关所在的局域网,则直接进行转发,如果所述报文的目的地址是所述第二网关所在的局域网,则封装成IPsec报文,并通过IPsec隧道发送给另一网关;
普通报文处理单元543,用于接收报文分类单元541的普通报文,如果所述报文的目的地址为公网,则封装成SSL报文后发送,如果所述报文的目的地址为所述另一网关所在的局域网,则封装成IPsec报文,并通过IPsec隧道发送给另一网关;
IPsec报文处理单元544,用于接收报文分类单元541的IPsec报文,判断报文的目的地址是否为本网关所在的局域网,若是,则进行IPsec解封装后转发。
本实施例中,通过网关之间的交互进行注册用户信息的同步;当一个网关收到用户发送的报文时,可以根据所述与其他网关同步的注册用户信息对该用户访问局域网进行接入控制。用户的认证授权的过程更方便、更简洁,一旦用于在一个网关获得访问权限,则可以无需向现有技术一样重复登陆其他网关,通过统一的安全策略管理直接的自由的访问其他局域网。极大的方便了用户。
进一步本发明实施例中在网关之间进行数据同步时,可以仅更新改变的数据,即通过更新信息将发生改变的数据发送给对方网关达到降低同步的数据量的目的。使得网关之间交互较少的数据即可实现同步,起到节约网络带宽,提高同步效率的目的。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。