背景技术
随着因特网(Internet)的迅猛发展,每个企业都想利用Internet为自己的企业做些事情,大家的目光开始转向电子商务,通过访问Internet,授权用户可以容易的访问到企业内部系统中的关键商务程序及数据,在这种情况下,就产生了虚拟私有网络(VPN,Virtual Private Networks)技术,所谓VPN就是指企业在公共数据网上建立的用以传输企业内部信息的网络。
出差员工可以利用便携机在内的任何一台可以访问Internet的计算机,通过VPN隧道访问企业内部网络,企业内部可以对该用户进行授权、验证和审计;合作伙伴和分支机构也可以通过VPN组建私有网络,代替传统的昂贵的专线方式,而且具有同样的甚至更高的安全性。
目前有三种类型的VPN,包括虚拟私有拨号网(VPDN,Virtual PrivateDial Network)、内联网VPN(Intranet VPN)和外联网VPN(Extranet VPN)。二层隧道协议(L2TP,Layer Two Tunneling Protocol)是VPDN的一种实现方式,它主要用于出差员工在外地与自己公司本部建立连接。L2TP支持全用户名方式接入企业网主要解决了出差员工在外地通过PSTN用自己的全用户名和密码就可以向自己公司本部发起L2TP隧道连接,连接成功后就安全地与公司本部交互信息。
通过L2TP实现VPDN有下列两种方式:。
(1)L2TP访问集中器(LAC,L2TP Access Concentrator)通过L2TP协议,与L2TP网络服务器(LNS,L2TP Network Server)建立通道的方式,将客户的点对点协议(PPP,Point to Point Protocol)连接直接连到企业的网关上。LAC一般为接入服务器,LNS一般为企业网关。这种方式的好处在于:对用户是透明的,用户只需要登录一次就可以接入企业网络,由企业网关进行用户认证和地址分配,而不占用公共地址,用户可使用各种平台上网。这种方式需要LAC支持VPDN协议,需要认证系统支持VPDN属性,LNS一般使用路由器或VPN专用网关。
(2)客户机与VPDN网关建立隧道的方式。由客户机先建立与Internet的连接,再通过专用的客户软件(如Win2000支持的L2TP)与网关建立通道连接。这种方式的好处在于:用户上网的方式和地点没有限制,不需ISP介入。这种情况下安装了客户端软件的PC就可以和LNS建立L2TP隧道。
在这两种实现方式中,都需要由LAC或客户机来向LNS发起隧道连接,发起隧道连接方式也有多种,目前安装了客户端软件的PC可以以全用户名和密码的形式拨号到服务器上。
目前业界使用的VPN客户端都不支持用户修改密码,一旦管理员分配了密码,用户只能一直使用该密码,安全性不高。如果让管理员去修改,工作量又太大。
因此,在进行本发明创造过程中,发明人发现现有技术中至少存在如下问题:现有技术上提供的技术方案中,安全性不高。
发明内容
本发明实施例提供了一种修改虚拟私有网密码的方法和系统、以及装置,以提高虚拟私有网安全性。
本发明实施例提供一种修改虚拟私有网密码的方法,其包括:
接收容户端发送的修改密码的请求,所述发送修改密码的请求中携带虚拟私有网的旧密码和新密码;
从修改密码的请求中提取虚拟私有网的旧密码和新密码,判断旧密码是否正确,新密码是否符合要求,当旧密码正确且新密码符合要求时,将虚拟私有网的旧密码修改为新密码。
本发明实施例还提供一种虚拟私有网络系统,其包括:
客户端,用于发送修改密码的请求,所述发送修改密码的请求中携带虚拟私有网的旧密码和新密码;
安全网关,用于接收客户端发送的修改密码的请求,从修改密码的请求中提取虚拟私有网的旧密码和新密码,判断旧密码是否正确,新密码是否符合要求,当旧密码正确且新密码符合要求时,将虚拟私有网的旧密码修改为新密码。
本发明实施例提供一种安全网关,其包括:
接收单元,用于接收客户端发送的修改密码的请求,所述发送修改密码的请求中携带虚拟私有网的旧密码和新密码;
第一提取单元,用于从接收单元接收的修改密码的请求中提取虚拟私有网的旧密码和新密码;
第一判断单元,用于判断第一提取单元提取的旧密码是否正确,新密码是否符合要求;
修改单元,用于当第一判断单元的判断结果为旧密码正确且新密码符合要求时,将虚拟私有网的旧密码修改为新密码。
通过本发明实施例提供的修改虚拟私有网密码的方法和系统、以及装置,用户通过客户端向安全网关发送修改密码的请求,安全网关根据从修改密码请求中提取的虚拟私有网的旧密码和新密码,将虚拟私有网的旧密码修改为新密码,从而使用户能够实现修改虚拟私有网密码,因此提高了虚拟私有网的安全性。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施方式,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
本发明提供修改虚拟私有网密码的方法另一种实施例,其包括:
接收客户端发送的修改密码的请求,所述发送修改密码的请求中携带虚拟私有网的旧密码和新密码;
从修改密码的请求中提取虚拟私有网的旧密码和新密码,判断旧密码是否正确,新密码是否符合要求,当旧密码正确且新密码符合要求时,将虚拟私有网的旧密码修改为新密码。
请参照图1,为本发明修改虚拟私有网密码的方法一个实施例的信令流程图。本实施例中,在用户修改虚拟私有网密码之前,客户端与网关之间的VPN隧道已经建立好,其过程与现有技术基本相同,这里不做进一步描述。
所述用户修改虚拟私有网密码的过程具体包括:
步骤101:用户通过客户端向安全网关发送修改密码的请求,所述发送修改密码的请求中携带用户名、虚拟私有网的旧密码和新密码;
所述用户通过客户端向安全网关发送修改密码的请求一种实现方式为:
通过PPP协议报文来表示客户端发送的报文为修改密码的请求。并通过PPP协议报文携带用户名、虚拟私有网的旧密码和新密码。
下表1为PPP协议的报文组成,可以根据协议中的字段来区分该报文是否为修改密码的请求。
表1PPP协议报文的组成
Address(8bits) |
Control(8bits) |
Protocol(8/16bits) |
Information |
0xff |
0x03 |
8/16bits |
* |
可以看出,所述PPP协议报文由Address,Control,Protocol,以及Information四个部分组成。
本实施例中,可以通过Protocol字段的内容来表示所述PPP协议报文为与修改用户密码相关的报文。例如,当Protocol字段为0x80CC时,所述PPP协议报文表示与客户端请求安全网关修改用户密码相关的报文。
PPP协议报文中的Information字段由下表2中四个部分Code,Identifier,Length,Option组成。
表2Information字段的组成
Code(8bits) |
Identifier(8bits) |
Length(16bit) |
Option |
其中,Code字段表示密码修改的状态,当Code字段不同时,代表的意义分别为:0x01表示请求修改用户密码,0x02表示修改密码成功,0x03表示修改密码失败。
而Identifier字段用来验证Code字段是否正确、以及表示返回的错误信息类型。
例如:
当Code字段为0x01时,Identifier字段作为确认字段,为全零。
当Code字段为0x02时,Identifier字段作为确认字段,为全零。
当Code字段为0x03时:Identifier字段为0x01时,表示为用户无权修改密码;当Identifier字段为0x02时,表示为用户名输入错误;当Identifier字段为0x03时,表示为旧密码输入错误;当Identifier字段为0x04时,表示为旧密码和新密码一致。
另外,Length字段用于表示Code和Identifier字段的长度。
Option字段由下表3中的三个部分Type,Length,Content组成。
表3Option字段的组成
Type(8bits) |
Length(8bits) |
Content |
其中,Type字段的意义为:0x01表示用户名;0x02表示旧密码;0x03表示新密码。
Length用于表示Option的长度,包括Type和Length字段的长度。
Content用于表示Type的具体内容:例如,当Type字段为0x01时,Content中存放用户名;当Type字段为0x02时,Content中存放旧密码;当Type字段为0x03时,Content中存放新密码。
除了采用上述定义PPP协议报文的方式来实现用户向安全网关发送修改密码的请求,还可以采用其他方式定义PPP协议报文来实现。
步骤102:安全网关根据接收的修改密码的请求,提取虚拟私有网的旧密码和新密码;
步骤103:判断旧密码是否正确,新密码是否符合要求,如果旧密码正确且新密码符合要求,则进行步骤105,否则进行步骤104;
所述修改密码的请求为采用PPP协议报文,安全网关分析所述PPP协议报文,判断所述PPP协议报文为修改密码的请求,并提取旧密码和新密码,判断旧密码是否正确,新密码是否符合要求。同时,还可以提取用户名,先判断用户是否有修改密码的权限,如果用户没有修改密码的权限,则进行步骤104,如果用户具有修改密码的权限,再判断旧密码是否正确,新密码是否符合要求。
步骤104:安全网关向客户端发送密码修改失败的消息。
所述密码修改失败的响应消息中可以携带密码修改的失败原因,失败原因包括:用户无权修改密码,用户名错误,旧密码错误,或者旧密码和新密码一致等。
发送密码修改失败的消息所采用的报文格式和内容可以参照步骤101中相关说明。
步骤105:安全网关将虚拟私有网的旧密码修改为新密码;
同时,安全网关通知存放用户信息和密码的数据库,更新数据库中的用户密码。
步骤106:安全网关向客户端发送密码修改成功的消息。
发送密码修改成功的消息所采用的报文格式和内容可以参照步骤101中相关说明。
步骤107:客户端向安全网关返回密码修改成功的响应消息。
此时,用户修改密码成功,且本次客户端与虚拟私有网络的连接不会断开,业务正常进行,新密码在下一次拨号的时候生效,下一次拨号的时候,用户需要更新密码才能接入成功。
请参照图2,为本发明虚拟私有网络系统一个实施例的结构图。
所述虚拟私有网络系统包括客户端21、安全网关22。
所述客户端21,用于发送修改密码的请求,所述发送修改密码的请求中携带虚拟私有网的旧密码和新密码;
所述客户端21发送修改密码的请求具体实现方式为:
通过PPP协议报文来表示客户端发送的报文为修改密码的请求。并通过PPP协议报文携带用户名、虚拟私有网的旧密码和新密码。
所述安全网关22,用于接收客户端21发送的修改密码的请求,从修改密码的请求中提取虚拟私有网的旧密码和新密码,判断旧密码是否正确,新密码是否符合要求,当旧密码正确且新密码符合要求时,将虚拟私有网的旧密码修改为新密码。
所述安全网关22可以进一步包括接收单元221、第一提取单元222、第一判断单元223、修改单元224。
所述接收单元221,用于接收客户端21发送的修改密码的请求,所述发送修改密码的请求中携带虚拟私有网的旧密码和新密码;
所述第一提取单元222,用于从接收单元221接收的修改密码的请求中提取虚拟私有网的旧密码和新密码;
所述第一判断单元223,用于判断第一提取单元222提取的旧密码是否正确,新密码是否符合要求;
所述修改单元224,用于当第一判断单元223的判断结果为旧密码正确且新密码符合要求时,将虚拟私有网的旧密码修改为新密码。
所述安全网关22还可以包括:
发送单元,用于修改单元将虚拟私有网的旧密码修改为新密码之后向客户端发送密码修改成功的消息。
所述安全网关22还可以包括第二提取单元225、第二判断单元226。
所述第二提取单元225,用于从接收单元221接收的修改密码的请求中提取用户名;
所述第二判断单元226,用于判断第二提取单元225提取的用户是否具有修改密码的权限,当用户具有修改密码的权限时,再通知第一判断单元223判断旧密码是否正确,新密码是否符合要求。
通过本发明实施例提供的修改虚拟私有网密码的方法和系统、以及装置,用户通过客户端向安全网关发送修改密码的请求,安全网关根据从修改密码请求中提取的虚拟私有网的旧密码和新密码,将虚拟私有网的旧密码修改为新密码,从而使用户能够实现修改虚拟私有网密码,因此提高了虚拟私有网的安全性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述程序可以存储于一计算机可读取存储介质中,所述存储介质为ROM/RAM、磁碟、光盘等。
以上对本发明所提供的一种修改虚拟私有网密码的方法和系统、以及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明所揭示的技术方案;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。