VPN的远程登录方法、装置、设备及介质与流程

未命名 08-29 阅读:231 评论:0

vpn的远程登录方法、装置、设备及介质
技术领域
1.本技术属于网络安全技术领域,特别是涉及一种vpn的远程登录方法、装置、设备及介质。


背景技术:

2.随着各种外部环境和形式的发展,在线办公已经逐步成为很多公司的一个标配,能够稳定且安全地给每个员工去分配vpn(virtual private network,虚拟专用网络)权限来在线办公成了迫切的需求。
3.相关技术中通常是采用用户名和密码登录验证的方式来对需要登录vpn的用户身份进行验证,若用户名和密码泄露,则会导致未被授权的用户非法登录vpn服务,难以保证vpn服务的安全性。


技术实现要素:

4.有鉴于此,本技术提供一种vpn的远程登录方法、装置、设备及介质,以解决相关技术难以保证用户远程登录vpn的安全性的技术问题。
5.本技术提供一种vpn的远程登录方法,包括:
6.接收客户端发送的vpn登录请求,所述vpn登录请求至少包括:用户名、登录凭证;
7.将所述用户名和所述登录凭证进行对称加密,得到所述客户端相对应的加密密钥;
8.对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,并通过目标渠道将所述第一验证码发送至所述用户名相对应的用户,其中所述目标渠道与所述客户端发送所述vpn登录请求的传输渠道不同;
9.接收所述客户端发送的验证码校验请求,所述验证码校验请求至少包括:所述用户名相对应的用户基于所述第一验证码输入的第二验证码;
10.在所述第一验证码和所述第二验证码比对一致时,允许所述客户端登录vpn服务器。
11.可选地,所述在所述第一验证码和所述第二验证码比对一致时,允许所述客户端登录vpn服务器之前,所述方法还包括:
12.利用所述加密密钥对所述客户端相对应的加密信息进行解密得到所述用户名和所述登录凭证;
13.根据所述用户名和所述登录凭证在数据库中查询所述客户端相对应的登录权限;
14.在所述客户端拥有登录权限时,将所述第一验证码和所述第二验证码进行比对。
15.可选地,所述将所述第一验证码和所述第二验证码进行比对,包括:
16.在所述第一验证码和所述第二验证码比对一致时,查询与所述第一验证码相对应的时间戳;
17.在所述时间戳距离当前时间点的时间间隔小于时间间隔阈值时,确认所述第一验
证码和所述第二验证码比对一致。
18.可选地,所述对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,包括:
19.将所述加密密钥和当前时间的时间戳转换为字节数组;
20.对所述字节数组求哈希值,以及,对所述哈希值取模,得到整数类型的第一验证码。
21.可选地,在所述接收客户端发送的vpn登录请求之前,所述方法还包括:
22.接收客户端发送的用户注册请求,所述验证码注册请求至少包括:注册信息,所述注册信息包括:用户名、员工号、设备类型、设备id中的至少一项;
23.将所述注册信息进行拼接,得到注册字符串;
24.计算所述注册字符串的md5值,得到所述登录凭证;
25.将所述登录凭证发送至所述客户端。
26.可选地,在所述将所述登录凭证发送至所述客户端之后,包括:
27.接收所述客户端发送的验证码注册请求;
28.在所述验证码注册请求中携带的登录凭证和所述登录凭证一致时,向所述客户端发送注册成功通知。
29.可选地,所述方法还包括:
30.在接收到对于所述用户名的注销请求时,删除所述用户名、所述用户名相对应的所述第一验证码、密钥信息。
31.本技术提供一种vpn的远程登录装置,包括:
32.接收模块,用于接收客户端发送的vpn登录请求,所述vpn登录请求至少包括:用户名、登录凭证;
33.处理模块,用于将所述用户名和所述登录凭证进行对称加密,得到所述客户端相对应的加密密钥;
34.对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,并通过目标渠道将所述第一验证码发送至所述用户名相对应的用户,其中所述目标渠道与所述客户端发送所述vpn登录请求的传输渠道不同;
35.所述接收模块,还用于接收所述客户端发送的验证码校验请求,所述验证码校验请求至少包括:所述用户名相对应的用户基于所述第一验证码输入的第二验证码;
36.校验模块,用于在所述第一验证码和所述第二验证码比对一致时,允许所述客户端登录vpn服务器。
37.可选地,所述校验模块,还用于:利用所述加密密钥对所述客户端相对应的加密信息进行解密得到所述用户名和所述登录凭证;
38.根据所述用户名和所述登录凭证在数据库中查询所述客户端相对应的登录权限;
39.在所述客户端拥有登录权限时,将所述第一验证码和所述第二验证码进行比对。
40.可选地,所述校验模块,还用于:
41.在所述第一验证码和所述第二验证码比对一致时,查询与所述第一验证码相对应的时间戳;
42.在所述时间戳距离当前时间点的时间间隔小于时间间隔阈值时,确认所述第一验
证码和所述第二验证码比对一致。
43.可选地,所述处理模块,用于:
44.将所述加密密钥和当前时间的时间戳转换为字节数组;
45.对所述字节数组求哈希值,以及,对所述哈希值取模,得到整数类型的第一验证码。
46.可选地,所述装置还包括:注册模块,用于:
47.接收客户端发送的用户注册请求,所述验证码注册请求至少包括:注册信息,所述注册信息包括:用户名、员工号、设备类型、设备id中的至少一项;
48.将所述注册信息进行拼接,得到注册字符串;
49.计算所述注册字符串的md5值,得到所述登录凭证;
50.将所述登录凭证发送至所述客户端。
51.可选地,所述注册模块,还用于:
52.接收所述客户端发送的验证码注册请求;
53.在所述验证码注册请求中携带的登录凭证和所述登录凭证一致时,向所述客户端发送注册成功通知。
54.可选地,所述装置还包括:注销模块,用于:
55.在接收到对于所述用户名的注销请求时,删除所述用户名、所述用户名相对应的所述第一验证码、密钥信息。
56.本技术提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的vpn的远程登录方法。
57.本技术提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述的vpn的远程登录方法。
58.针对相关技术,本技术具备如下优点:
59.本技术提供的一种vpn的远程登录方法、装置、设备及介质,通过在用户远程登录vpn时,利用时间戳和用户的唯一性登录凭证来生成随机的第一验证码,使得第一验证码具有时效性,然后通过与客户端不同的目标渠道发送至用户查看后,待用户通过客户端重新发送来第二验证码,将第一验证码和第二验证码进行比对来验证客户端是否为本人使用,在验证通过后允许客户端登录vpn服务器,从而防止了登录信息被未经授权的人员非法获取登录vpn服务器,提高了vpn登录的安全性。
60.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
61.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
62.图1是本技术实施例提供的一种vpn的远程登录方法的步骤流程图;
63.图2是本技术实施例提供的一种验证码注册方法的步骤流程图;
64.图3是本技术实施例提供的一种验证码注册方法的系统流程图;
65.图4是本技术实施例提供的另一种vpn的远程登录方法的步骤流程图;
66.图5是本技术实施例提供的一种vpn的远程登录方法的系统流程图;
67.图6是本技术实施例提供的一种vpn的远程登录装置的结构框图;
68.图7是本技术实施例提供的一种电子设备的结构框图。
具体实施方式
69.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整地传达给本领域的技术人员。
70.图1是本技术实施例提供的一种vpn的远程登录方法的步骤流程图,包括:
71.步骤101,接收客户端发送的vpn登录请求,所述vpn登录请求至少包括:用户名、登录凭证。
72.需要说明的是,客户端是用户所使用电子设备上安装的vpn远程登录软件,用户名是用户的唯一标识,用户可自行设置或者系统默认发放,登录凭证是指用于表征用户身份的标识信息,由系统为用户发放,可依据用户的登录设备、用户名和使用场景等等为用户分发不同的登录凭证。
73.在本技术实施例中,执行主体可以是为用户提供vpn远程接入服务的服务器,该服务器可以与vpn服务器连接,从而将登录成功的客户端接入vpn服务器,当然该服务器还可以与vpn服务器属于同一服务器,具体可以根据实际需求设置,此处不做限定。
74.具体的,用户在通过客户端远程接入之前,系统已在用户注册时为用户发放登录凭证,从而用户可通过客户端向服务器发送携带有用户名和登录凭证的vpn登录请求,从服务器请求获取用于验证接入权限的验证码。
75.步骤102,将所述用户名和所述登录凭证进行对称加密,得到所述客户端相对应的加密密钥。
76.在本技术实施例中,服务器在接收到vpn登录请求之后,可通过将其中所携带的用户名和登录凭证一起进行对称加密,将加密得到的加密密钥存储在服务器。具体可将用户名和登录凭证合并为一个字符串,然后可利用分组式加密算法、三重数据加密算法、高级加密标准算法、blowfish等对称加密算法来将该字符串进行加密得到加密密钥,具体的对称加密算法可以根据实际需求设置,此处不做限定。
77.步骤103,对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,并通过目标渠道将所述第一验证码发送至所述用户名相对应的用户,其中所述目标渠道与所述客户端发送所述vpn登录请求的传输渠道不同。
78.在本技术实施例中,系统将之前生成的加密密钥和当前时间的时间戳进行拼接,然后求哈希值取模作为第一验证码,由于当前时间的时间戳和加密密钥的唯一性,使得所生成的哈希值可以保证完全随机,从避免黑客破解的分享,在生成第一验证码之后,系统将通过目标渠道将该第一验证码发送用户名相对应的用户,以便用户获知第一验证码。
79.值得说明的是,目标渠道是指与用户名相关联的,用户与服务器之间的信息传输渠道,例如用户名创建的邮箱、用户名绑定的手机号等等,但不同于客户端与服务器的传输渠道,因为客户端是用于用户远程的登录,若直接通过客户端反馈第一验证码,则无法保证获取到第一验证码的用户是用户名相对应的用户。例如用户通过手机上安装的vpn应用程序的客户端向服务器请求登录,则服务器为了避免客户端非用户名相对应的用户本人使用,不会将第一验证码再通过客户端发送给用户,而是将所生成第一验证码发送至该用户名相对应的用户使用的邮箱或者手机,邮箱或者手机短信均是与客户端渠道不同的传输渠道,通常邮箱和手机短信只有用户本人使用,因此可以使得用户名相对应的用户可以获知第一验证码,保障第一验证码可以被用户名相对应的用户本人获取到。
80.步骤104,接收所述客户端发送的验证码校验请求,所述验证码校验请求至少包括:所述用户名相对应的用户基于所述第一验证码输入的第二验证码。
81.在本技术实施例中,用户通过目标渠道查看第一验证码之后,可以参照第一验证码向客户端输入第二验证码,然后客户端将用户输入的第二验证码以验证码校验请求的形式发送至服务器。
82.步骤105,在所述第一验证码和所述第二验证码比对一致时,允许所述客户端登录vpn服务器。
83.在本技术实施例中,服务器在接收到客户端发送的第二验证码之后,将基于客户端的客户端标识在数据库中查询预先存储的第一验证码,然后服务器将用户发送过来的第二验证码和之前为客户端生成的第一验证码进行比对,若两者完全相同,说明使用该客户端的用户是该用户名相对应的用户,则可向客户端发送验证通过,允许客户端接入vpn服务器。
84.本技术实施例通过在用户远程登录vpn时,利用时间戳和用户的唯一性登录凭证来生成随机的第一验证码,使得第一验证码具有时效性,然后通过与客户端不同的目标渠道发送至用户查看后,待用户通过客户端重新发送来第二验证码,将第一验证码和第二验证码进行比对来验证客户端是否为本人使用,在验证通过后允许客户端登录vpn,在验证通过后允许客户端登录vpn服务器,从而防止了登录信息被未经授权的人员非法获取登录vpn服务器,提高了vpn登录的安全性。
85.可选地,参照图2,在所述步骤101之前,所述方法还包括:
86.步骤201,接收客户端发送的用户注册请求,所述验证码注册请求至少包括:注册信息,所述注册信息包括:用户名、员工号、设备类型、设备id中的至少一项。
87.在本技术实施例中,用户在注册时需要在验证码注册请求中携带可以说明用户身份的注册信息,例如用户名、员工号、设备类型和设备id等等,具体可以根据实际需求设置,此处不做限定。
88.步骤202,将所述注册信息进行拼接,得到注册字符串。
89.在本技术实施例中,系统可以将这些注册信息按照字符串拼接的形式进行拼接,然后计算拼接所得到的字符串的md5值来作为登录凭证。
90.步骤203,计算所述注册字符串的md5值,得到所述登录凭证。
91.在本技术实施例中,md5(message-digest algorithm,信息摘要算法)是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值,用于确保信息传输完整
一致。md5算法的原理可简要的叙述为:md5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。因此采用md5算法计算得到的登录凭证不仅可以保证数据的唯一性和安全性,而且可以大大减少登录凭证的数据量。
92.步骤204,将所述登录凭证发送至所述客户端。
93.在本技术实施例中,服务器将登录凭证利用加密密钥进行加密之后,将登录凭证发送至客户端。
94.步骤205,接收所述客户端发送的验证码注册请求。
95.在本技术实施例中,用户将登录凭证重新输入客户端,从而使得客户端向服务器发送携带有登录凭证的验证码注册请求,以供服务器将两者进行比对来验证注册用户是否与实际使用客户端的用户一致。
96.步骤206,在所述验证码注册请求中携带的登录凭证和所述登录凭证一致时,向所述客户端发送注册成功通知。
97.在本技术实施例中,服务器将客户端发送的登录凭证利用加密密钥进行解密之后,在数据库中查询该为该客户端预先生成和存储的登录凭证,将查询到的登录凭证和客户端发送的登录凭证进行比对,若比对一致则通过后将向客户端发送注册成功通知,以告知用户注册成功,若比对不一致,则向客户端发送注册失败通知。
98.本技术实施例在用户注册时,依据用户提供的注册数据为客户端生成登录凭证,并将登录凭证返回给客户端供用户验证使用,在客户端重新发送的登录凭证与系统之前生成的登录凭证一致时才确认验证码注册成功,从而保证了验证码注册的安全性。
99.具体的,参照图3,其中业务app可视为本技术实施例中的客户端,验证码sdk为安装业务app中,用于协助业务app获取验证码,密钥管理系统是用于对验证码进行加密和解密的系统,验证码服务是用于生成和校验验证码的服务器,验证码注册的具体流程如下:
100.p1,业务app在用户注册时,通过验证码sdk向密钥管理系统发送用户信息;
101.p2,密钥管理系统将用户信息和加密密钥发送给验证码服务;
102.p3,验证码服务器将用户信息利用md5加密算法进行处理得到登录凭证ticket,并将登录凭证发送给密钥管理系统;
103.p4,密钥管理系统利用加密密钥将登录凭证进行加密之后,将加密后的登录凭证通过验证码sdk发送给业务app;
104.p5,业务app利用获取到的登录凭证向验证码sdk发送用于注册的验证码校验请求;
105.p6,验证码sdk通过密钥管理系统将登录凭证发送至验证码服务;
106.p7,验证码服务对登录凭证进行校验,并通过密钥管理系统向验证码sdk发送注册结果;
107.p8,验证码sdk在登录凭证校验通过时,向业务app发送注册成功的通知,在验证码校验未通过时,向业务app发送注册失败的通知。
108.可选地,所述方法还包括:在接收到对于所述用户名的注销请求时,删除所述用户名、所述用户名相对应的所述第一验证码、密钥信息。
109.在本技术实施例中,在用户需要注销用户名时,例如员工离职,用户权限到期等情
形下,管理员可通过在验证码服务器输入对于该用户名的注册指令,然后系统将在数据库中查询该用户名相对应的验证码、密钥信息和登录凭证,对这些数据予以删除,同时还可以删除该用户名相对应的工号、用户类型等数据。
110.本技术实施例通过对注销用户的登录凭证、密钥信息和验证码进行删除,可以减少无效数据所占用的存储空间,提高了存储空间的利用率。
111.可选地,所述步骤103,包括:所述加密密钥和当前时间的时间戳转换为字节数组;对所述字节数组求哈希值,以及,对所述哈希值取模,得到整数类型的第一验证码。
112.在本技术实施例中,系统将加密密钥和当前时间的时间戳转换为字节形式,然后将字节形式的时间戳和加密密码进行拼接得到字节数组,对字节数组求哈希值取模,取模可以保证所生成第一验证码的数值为正数,避免出现非法取值,而取哈希值可以保证所生成验证码的唯一性,最后针对哈希值的模取整数类型即可得到第一验证码,第一验证码的一般设置为4位、6位或者8位等等,以便于用户记忆和输入。字节拼接的方式可以是采用头尾相接,也可以是采用穿插拼接的方式,具体可以根据实际需求设置,此处不做限定。
113.可选地,参照图4,所述步骤105之前,所述方法还包括:
114.步骤301,利用所述加密密钥对所述客户端相对应的加密信息进行解密得到所述用户名和所述登录凭证。
115.步骤302,根据所述用户名和所述登录凭证在数据库中查询所述客户端相对应的登录权限。
116.步骤303,在所述客户端拥有登录权限时,将所述第一验证码和所述第二验证码进行比对。
117.在本技术实施例中,在接收到客户端发送的验证码校验请求之后,服务器将首先通过加密密钥对加密信息进行解密,来获取用户名和登录凭证,然后从数据库中调取登录权限进行查询,该用户名相对应的登录权限,判断用户是否具有登录该业务服务的权限资格,从而实现对于用户名的鉴权。若用户名拥有登录权限时,则进一步对用户输入的第二验证码与之前生成并存储的第一验证码进行比对。值得说明的是,数据库中所存储用户的登录权限是用户在注册时,系统为用户分配的,也就是若登录用户为未注册的非法用户,则无法查询到其登录权限,从而无法通过鉴权过程。
118.本技术实施例通过在用户登录获取验证码时,通过查询与用户名和登录凭证相对应的登录权限来对用户身份进行鉴权,在鉴权通过之后才向用户发送验证码,避免了未注册的非法用户恶意登录业务服务对业务服务带来的损失,提高了业务服务登录的安全性。
119.可选地,客户端可通过sdk(software developmentkit,软件开发工具包)的形式装载验证码的校验功能与服务器进行通信连接。具体的,可通过开发具有验证码校验功能的sdk,将sdk集成在客户端的安装包中,从而在客户端安装到电子设备上时,一并将sdk安装到电子设备之上,在验证码校验过程中,客户端可通过调用sdk提供的功能接口来向服务器发送验证码获取请求、验证码校验请求等信息,无需对客户端进行二次开发来具备验证码校验功能,以减少对于vpn程序的开发成本。
120.参照图5,其中业务app可视为本技术实施例中的客户端,验证码sdk为安装业务app中,用于协助业务app获取验证码,密钥管理系统是用于对验证码进行加密和解密的系统,验证码服务是用于生成和校验验证码的服务器,其中密钥管理系统和验证码服务可以
部署于同一服务器上,也可以单独设置,验证码获取并校验的具体流程如下:
121.s1,业务app在登录时通过调用验证码sdk提供的功能接口,由验证码sdk向密钥管理系统请求获取验证码;
122.s2,验证码sdk将包含有登录凭证、用户名等数据的用户信息发送给密钥管理系统;
123.s3,密钥管理系统基于用户名和登录凭证在数据库中查询用户名相对应的登录权限,若具有接入vpn服务的登录权限时,确认用户的登录权限校验通过,在登录权限校验成功后执行下一步s4,若不具有接入vpn服务的登录权限时,确认校验失败则可向验证码sdk返回鉴权未通过通知;
124.s4,密钥管理系统将解密之后的用户信息和时间戳发送给验证码服务;
125.s5,验证码服务器基于用户信息和时间戳生成验证码,并将验证码发送给密钥管理系统;
126.s6,密钥管理系统将验证码发送给验证码sdk;
127.s7,验证码sdk通过除客户端渠道以外的目标渠道将验证码转发给绑定业务app的用户;
128.s8,业务app在接收到用户输入的验证码之后,向验证码sdk发送验证码校验请求;
129.s9,验证码sdk通过密钥管理系统将验证码发送给验证码服务;
130.s10,验证码服务将用户输入的验证码和之前生成时存储的验证码进行比对,若客户端发送的验证码和验证码服务存储的验证码比对一致,则确认验证码校验通过,若比对不一致,则确认验证码校验不通过,并通过密钥管理系统向验证码sdk发送校验结果;
131.s11,验证码sdk向业务app转发校验结果。
132.可选地,所述步骤203包括:在所述第一验证码和所述第二验证码比对一致时,查询与所述第一验证码相对应的时间戳;在所述时间戳距离当前时间点的时间间隔小于时间间隔阈值时,确认所述第一验证码和所述第二验证码比对一致。
133.在本技术实施例中,为了保证验证码的时效性,在验证码校验通过之后,将会通过查询第一验证码相对应的时间戳,该时间戳是第一验证码生成时的时间戳,将该时间戳相对应的时间点与当前时间点进行比对,确定之间的时间间隔,然后将时间间隔与时间间隔阈值进行比对,该时间间隔阈值可以是1分钟、2分钟、5分钟等等,从而在时间间隔未超过时间间隔阈值时才确认第二验证码有效,否则确认第二验证码失效过期。可以理解,验证码在发送给用户之后,若长时间未被使用可能会存在流传到非法用户的风险,此时若继续允许对验证码进行验证,则可能出现正确的验证码被非法用户使用的情况,因此对于验证码时效性进行检测可以有效避免验证码流失的风险。
134.本技术实施例在验证码校验通过后进一步对验证码相对应的时间戳的时效性进行验证,保证了验证码的实时性,避免过期验证码被重复使用的情况出现。
135.图6是本技术实施例提供的一种vpn的远程登录装置40的结构框图,包括:
136.接收模块401,用于接收客户端发送的vpn登录请求,所述vpn登录请求至少包括:用户名、登录凭证;
137.处理模块402,用于将所述用户名和所述登录凭证进行对称加密,得到所述客户端相对应的加密密钥;
138.对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,并通过目标渠道将所述第一验证码发送至所述用户名相对应的用户,其中所述目标渠道与所述客户端发送所述vpn登录请求的传输渠道不同;
139.所述接收模块401,还用于接收所述客户端发送的验证码校验请求,所述验证码校验请求至少包括:所述用户名相对应的用户基于所述第一验证码输入的第二验证码;
140.校验模块403,用于在所述第一验证码和所述第二验证码比对一致时,允许所述客户端登录vpn服务器。
141.可选地,所述校验模块403,还用于:利用所述加密密钥对所述客户端相对应的加密信息进行解密得到所述用户名和所述登录凭证;
142.根据所述用户名和所述登录凭证在数据库中查询所述客户端相对应的登录权限;
143.在所述客户端拥有登录权限时,将所述第一验证码和所述第二验证码进行比对。
144.可选地,所述校验模块403,还用于:
145.在所述第一验证码和所述第二验证码比对一致时,查询与所述第一验证码相对应的时间戳;
146.在所述时间戳距离当前时间点的时间间隔小于时间间隔阈值时,确认所述第一验证码和所述第二验证码比对一致。
147.可选地,所述处理模块402,用于:
148.将所述加密密钥和当前时间的时间戳转换为字节数组;
149.对所述字节数组求哈希值,以及,对所述哈希值取模,得到整数类型的第一验证码。
150.可选地,所述装置还包括:注册模块,用于:
151.接收客户端发送的用户注册请求,所述验证码注册请求至少包括:注册信息,所述注册信息包括:用户名、员工号、设备类型、设备id中的至少一项;
152.将所述注册信息进行拼接,得到注册字符串;
153.计算所述注册字符串的md5值,得到所述登录凭证;
154.将所述登录凭证发送至所述客户端。
155.可选地,所述注册模块,还用于:
156.接收所述客户端发送的验证码注册请求;
157.在所述验证码注册请求中携带的登录凭证和所述登录凭证一致时,向所述客户端发送注册成功通知。
158.可选地,所述装置还包括:注销模块,用于:
159.在接收到对于所述用户名的注销请求时,删除所述用户名、所述用户名相对应的所述第一验证码、密钥信息。
160.本技术实施例通过在用户远程登录vpn时,利用时间戳和用户的唯一性登录凭证来生成随机的第一验证码,使得第一验证码具有时效性,然后通过与客户端不同的目标渠道发送至用户查看后,待用户通过客户端重新发送来第二验证码,将第一验证码和第二验证码进行比对来验证客户端是否为本人使用,在验证通过后允许客户端登录vpn服务器,从而防止了登录信息被未经授权的人员非法获取登录vpn服务器,提高了vpn登录的安全性。
161.对于上述服务器的实施例而言,由于其与方法实施例基本相似,所以描述得比较
简单,相关之处参见方法实施例的部分说明即可。
162.本技术实施例还提供了一种电子设备,如图7所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
163.存储器503,用于存放计算机程序;
164.处理器501,用于执行存储器503上所存放的程序时,实现上述任一vpn的远程登录方法的步骤。
165.上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
166.通信接口用于上述终端与其他设备之间的通信。
167.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
168.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
169.在本技术提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的vpn的远程登录方法。
170.在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的vpn的远程登录方法。
171.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
172.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存
在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
173.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
174.以上所述仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。

技术特征:
1.一种vpn的远程登录方法,其特征在于,包括:接收客户端发送的vpn登录请求,所述vpn登录请求至少包括:用户名、登录凭证;将所述用户名和所述登录凭证进行对称加密,得到所述客户端相对应的加密密钥;对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,并通过目标渠道将所述第一验证码发送至所述用户名相对应的用户,其中所述目标渠道与所述客户端发送所述vpn登录请求的传输渠道不同;接收所述客户端发送的验证码校验请求,所述验证码校验请求至少包括:所述用户名相对应的用户基于所述第一验证码输入的第二验证码;在所述第一验证码和所述第二验证码比对一致时,允许所述客户端接入vpn服务器。2.根据权利要求1所述的方法,其特征在于,所述在所述第一验证码和所述第二验证码比对一致时,允许所述客户端登录vpn服务器之前,所述方法还包括:利用所述加密密钥对所述客户端相对应的加密信息进行解密得到所述用户名和所述登录凭证;根据所述用户名和所述登录凭证在数据库中查询所述客户端相对应的登录权限;在所述客户端拥有登录权限时,将所述第一验证码和所述第二验证码进行比对。3.根据权利要求2所述的方法,其特征在于,所述将所述第一验证码和所述第二验证码进行比对,包括:在所述第一验证码和所述第二验证码比对一致时,查询与所述第一验证码相对应的时间戳;在所述时间戳距离当前时间点的时间间隔小于时间间隔阈值时,确认所述第一验证码和所述第二验证码比对一致。4.根据权利要求1所述的方法,其特征在于,所述对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,包括:将所述加密密钥和当前时间的时间戳转换为字节数组;对所述字节数组求哈希值,以及,对所述哈希值取模,得到整数类型的第一验证码。5.根据权利要求1所述的方法,其特征在于,在所述接收客户端发送的vpn登录请求之前,所述方法还包括:接收客户端发送的用户注册请求,所述验证码注册请求至少包括:注册信息,所述注册信息包括:用户名、员工号、设备类型、设备id中的至少一项;将所述注册信息进行拼接,得到注册字符串;计算所述注册字符串的md5值,得到所述登录凭证;将所述登录凭证发送至所述客户端。6.根据权利要求5所述的方法,其特征在于,在所述将所述登录凭证发送至所述客户端之后,包括:接收所述客户端发送的验证码注册请求;在所述验证码注册请求中携带的登录凭证和所述登录凭证一致时,向所述客户端发送注册成功通知。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:在接收到对于所述用户名的注销请求时,删除所述用户名、所述用户名相对应的所述
第一验证码、密钥信息。8.一种vpn的远程登录装置,其特征在于,包括:接收模块,用于接收客户端发送的vpn登录请求,所述vpn登录请求至少包括:用户名、登录凭证;处理模块,用于将所述用户名和所述登录凭证进行对称加密,得到所述客户端相对应的加密密钥;对所述加密密钥和当前时间的时间戳求哈希值取模得到第一验证码,并通过目标渠道将所述第一验证码发送至所述用户名相对应的用户,其中所述目标渠道与所述客户端传输渠道不同;所述接收模块,还用于接收所述客户端发送的验证码校验请求,所述验证码校验请求至少包括:所述用户名相对应的用户基于所述第一验证码输入的第二验证码;校验模块,用于在所述第一验证码和所述第二验证码比对成功时,允许所述客户端远程登录vpn。9.一种电子设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7中任一所述的vpn的远程登录方法。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现权利要求1至7中任一所述的vpn的远程登录方法。

技术总结
本申请提供的一种VPN的远程登录方法、装置、设备及介质,应用于网络安全技术领域,所述方法包括:接收客户端发送的VPN登录请求,所述VPN登录请求至少包括:用户名、登录凭证;将所述用户名和所述登录凭证进行对称加密,得到所述客户端相对应的加密密钥;对所述加密密钥和当前时间的时间戳进行处理得到第一验证码,并通过目标渠道将所述第一验证码发送至所述用户名相对应的用户,其中所述目标渠道与所述客户端发送所述VPN登录请求的传输渠道不同;接收所述客户端发送的验证码校验请求,所述验证码校验请求至少包括:所述用户名相对应的用户基于所述第一验证码输入的第二验证码;在第一验证码和第二验证码比对一致时,允许所述客户端登录VPN服务器。端登录VPN服务器。端登录VPN服务器。


技术研发人员:杜杰
受保护的技术使用者:北京奇艺世纪科技有限公司
技术研发日:2023.06.30
技术公布日:2023/8/28
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐