本发明属于网络安全技术领域,具体涉及大批量部署的网络设备口令认证方法及口令认证系统。
背景技术:
目前,很多大批量部署的网络设备,比如网络摄像机、各类通过网络进行数据传输的物联网探测器等,都是需要通过口令验证才能进行访问的,从而保证网络设备使用的安全性。
现有技术中,设备厂商一般会在出厂时,给网络设备设置一个统一的简单访问口令。因此,需要用户在实际使用时,对网络设备的访问口令进行更改,才能达到保证信息安全的效果。
然而,在实际使用的过程中,由于网络设备的实际部署数量非常巨大,如果逐一对网络设备进行口令修改,工作量非常巨大,且管理维护工作也很繁琐,因此,很多用户都没有对访问口令进行修改,仅使用网络设备的出厂口令,或者仅对网络设备进行一次统一的口令修改,并且,为方便操作人员记忆,常将所有网络设备的访问口令修改为相同的访问口令,从而造成了很大的安全隐患。在实际中,曾出现过某个摄像机厂商的设备因为弱口令问题造成的信息泄密问题,给使用用户造成了损失,也严重影响了设备厂商的声誉。
因此,如何有效解决上述问题,具有重要意义。
技术实现要素:
针对现有技术存在的缺陷,本发明提供一种大批量部署的网络设备口令认证方法及口令认证系统,可有效解决上述问题。
本发明采用的技术方案如下:
本发明提供大批量部署的网络设备口令认证方法,包括以下步骤:
步骤S1,网络设备口令生成过程,包括:
步骤S1.1,当口令管理服务器接收到来自于新的前端网络设备的网络设备口令生成请求消息时,所述口令管理服务器获取该前端网络设备的IP地址;
步骤S1.2,然后,所述口令管理服务器获取与所述前端网络设备的IP地址对应的MAC地址;
所述口令管理服务器生成随机数,再读取到当前有效的管理秘钥;
步骤S1.3,所述口令管理服务器采用预设加密算法,对所述MAC地址、所述随机数和所述管理秘钥进行加密计算,计算得到设备秘钥字符串;
步骤S1.4,所述口令管理服务器采用所述设备秘钥字符串修改所述前端网络设备的旧访问口令,即:所述设备秘钥字符串即为所述前端网络设备的最新访问口令;
然后,所述口令管理服务器将步骤S1.2得到的MAC地址与随机数的对应关系增加到预存储的MAC地址和随机数关系列表中;
步骤S2,网络设备口令认证过程,包括:
步骤S2.1,当数据访问客户端需要访问某台前端网络设备时,所述数据访问客户端首先向口令管理服务器发送访问口令获取请求;其中,所述访问口令获取请求中携带有需访问的所述前端网络设备的IP地址;
步骤S2.2,所述口令管理服务器接收到所述访问口令获取请求时,对所述访问口令获取请求进行解析,得到需访问的所述前端网络设备的IP地址;
步骤S2.3,所述口令管理服务器获得与所述前端网络设备的IP地址对应的MAC地址;
步骤S2.4,所述口令管理服务器查询预存储的MAC地址和随机数关系列表,判断所述MAC地址和随机数关系列表中是否存在与步骤S2.3得到的MAC地址对应的随机数,如果不存在,则向数据访问客户端返回访问口令获取失败的通知消息;如果存在,则获得与步骤S2.3得到的MAC地址对应的随机数,然后执行步骤S2.5;
步骤S2.5,所述口令管理服务器读取到当前有效的管理秘钥,然后,采用预设加密算法,对读取到的所述管理秘钥、步骤S2.3获得的MAC地址以及步骤2.4获得的随机数进行加密计算,计算得到设备秘钥字符串;所述设备秘钥字符串即为需访问的所述前端网络设备的访问口令;
步骤S2.6,所述口令管理服务器将步骤S2.5得到的所述设备秘钥字符串发送给所述数据访问客户端;
所述数据访问客户端根据获得的所述设备秘钥字符串,对所述前端网络设备进行访问。
优选的,还包括前端网络设备口令更新过程,包括两种更新方式:
第一种,对于每个前端网络设备,口令管理服务器定期生成与该前端网络设备的MAC地址对应的新随机数;然后,口令管理服务器读取到当前有效的管理秘钥,再采用预设加密算法,对所述MAC地址、所述新随机数和所述管理秘钥进行加密计算,计算得到新访问口令;然后,口令管理服务器采用所述新访问口令修改所述前端网络设备的旧访问口令;在修改成功后,口令管理服务器用新随机数更新MAC地址和随机数关系列表中的对应的旧随机数;
第二种,维护人员定期更新管理秘钥,每当管理秘钥被更新时,均触发所述口令管理服务器对当前管理的所有前端网络设备的访问口令进行更新操作,即:对于每个前端网络设备,所述口令管理服务器获取与所述前端网络设备的IP地址对应的MAC地址;然后,所述口令管理服务器查询MAC地址和随机数关系列表,获得随机数值;然后,采用预设加密算法,对MAC地址、随机数值和更新后的管理秘钥进行加密计算,计算得到新访问口令;最后,口令管理服务器采用所述新访问口令修改所述前端网络设备的旧访问口令。
优选的,还包括:
当某台前端网络设备退出所述口令管理服务器的管理时,所述口令管理服务器删除所述MAC地址和随机数关系列表中存储的对应的MAC地址和随机数。
优选的,所述管理秘钥保存在口令管理服务器的加密狗中;或者,对所述管理秘钥进行可逆加密处理后,保存在口令管理服务器的本地磁盘和备份服务器中。
优选的,还包括:
MAC地址和随机数关系列表存储于口令管理服务器的内存中;在口令管理服务器的本地磁盘文件中还保存有MAC地址和随机数关系列表副本;当所述MAC地址和随机数关系列表被更新时,所述口令管理服务器立即更新所述MAC地址和随机数关系列表副本,进而保证MAC地址和随机数关系列表与MAC地址和随机数关系列表副本的同步。
优选的,还包括:
口令管理服务器在进行MAC地址和随机数关系列表副本记录的同时,在备份服务器上同步备份另一个MAC地址和随机数关系列表副本,形成一个网络副本;所述网络副本用于在重建口令管理服务器时对系统进行恢复。
优选的,步骤S2.2还包括:
对于每个合法的数据访问客户端,需要将自身的MAC地址向口令管理服务器进行注册,因此,口令管理服务器维护有数据访问客户端注册列表;
在步骤S2.2中,当所述口令管理服务器获得数据访问客户端的口令获取请求后,所述口令管理服务器首先验证所述数据访问客户端是否已注册过,如果没有注册过,则直接向数据访问客户端返回口令获取失败的通知消息;如果已注册过,再继续进行后续步骤S2.3。
优选的,步骤S2.6具体为:
所述口令管理服务器将步骤S2.5得到的所述设备秘钥字符串进行进一步可逆加密,再传输给所述数据访问客户端。
本发明还提供一种大批量部署的网络设备口令认证系统,包括:前端网络设备、数据访问客户端、口令管理服务器以及数据备份服务器;所述前端网络设备、所述数据访问客户端、所述口令管理服务器和所述数据备份服务器通过网络相互连接;
其中,所述口令管理服务器包括:
第1接收模块,用于接收来自于数据访问客户端的访问口令获取请求;
MAC地址获取模块,用于对所述第1接收模块接收到的所述访问口令获取请求进行解析,得到需访问的前端网络设备的IP地址;再获得与所述前端网络设备的IP地址对应的MAC地址;
MAC地址和随机数关系列表维护模块,用于存储并维护MAC地址和随机数关系;
随机数查找模块,用于查找所述MAC地址和随机数关系列表,得到与所述MAC地址获取模块获取到的MAC地址对应的随机数;
管理秘钥获取模块,用于获取当前有效的管理秘钥;
访问口令计算模块,用于采用预设加密算法,对所述MAC地址获取模块获得的MAC地址、所述随机数查找模块查找到的随机数以及所述管理秘钥获取模块获得的管理秘钥进行加密计算,得到前端网络设备的访问口令;
访问口令更新模块,用于使用所述访问口令计算模块计算得到的前端网络设备的访问口令更新对应的前端网络设备的旧访问口令;
第1发送模块,用于将所述访问口令计算模块计算得到的访问口令发送给数据访问客户端;
所述数据访问客户端包括:
第2发送模块,用于向口令管理服务器发送访问口令获取请求;
第2接收模块,用于接收来自于所述口令管理服务器的对某个前端网络设备的访问口令;
访问模块,用于基于所述第2接收模块接收到的所述访问口令,对对应的前端网络设备进行访问。
本发明提供的大批量部署的网络设备口令认证方法及口令认证系统具有以下优点:
本发明能够定期自动更新所有网络设备的访问口令,并且,保证每台网络设备的访问口令是唯一的,且访问口令本身具有很强的防破解能力,从而既减轻了管理维护人员的工作量,也有效提高了网络设备的使用安全性。
附图说明
图1为本发明提供的大批量部署的网络设备口令认证系统的结构示意图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种大批量部署的网络设备口令认证方法,可有效解决目前在各类应用系统中大批量部署网络设备时,广泛存在的网络设备出厂口令不修改,或只做简单修改,以及修改不及时和修改频率太低等造成的设备被非法访问而导致的信息泄密问题。
大批量部署的网络设备口令认证方法包括以下步骤:
步骤S1,网络设备口令生成过程,包括:
步骤S1.1,当口令管理服务器接收到来自于新的前端网络设备的网络设备口令生成请求消息时,口令管理服务器获取该前端网络设备的IP地址;
步骤S1.2,然后,口令管理服务器获取与前端网络设备的IP地址对应的MAC地址;
口令管理服务器生成随机数,再读取到当前有效的管理秘钥;
其中,随机数生成方式包括但不限于以下方式:口令管理服务器根据当前服务器的系统时间,使用Windows操作系统中的系统函数GetTicketCount获取一个32位的随机数。
步骤S1.3,口令管理服务器采用预设加密算法,如MD5/SHA等不可逆加密算法,对MAC地址、随机数和管理秘钥进行加密计算,计算得到设备秘钥字符串;
步骤S1.4,口令管理服务器采用设备秘钥字符串修改前端网络设备的旧访问口令,即:设备秘钥字符串即为前端网络设备的最新访问口令;
然后,口令管理服务器将步骤S1.2得到的MAC地址与随机数的对应关系增加到预存储的MAC地址和随机数关系列表中。
由此可见,口令管理服务器保存所有前端网络设备的MAC地址和随机数关系列表,并在前端设备增减时,对这个列表进行维护,其中,增加方式即为步骤S1.1-S1.4的步骤。前端设备减少的方式为:当某台前端网络设备退出口令管理服务器的管理时,口令管理服务器删除MAC地址和随机数关系列表中存储的对应的MAC地址和随机数。如下表所示,即为MAC地址和随机数关系列表。
MAC地址和随机数关系列表
步骤S2,网络设备口令认证过程,包括:
步骤S2.1,当数据访问客户端需要访问某台前端网络设备时,数据访问客户端首先向口令管理服务器发送访问口令获取请求;其中,访问口令获取请求中携带有需访问的前端网络设备的IP地址;
步骤S2.2,口令管理服务器接收到访问口令获取请求时,对访问口令获取请求进行解析,得到需访问的前端网络设备的IP地址;
在安全性要求更高的系统中,可采用数据访问客户端注册机制,即:每个合法的数据访问客户端在使用前,都需要将自身的MAC地址向口令管理服务器进行注册,因此,口令管理服务器维护有数据访问客户端注册列表;
因此,在步骤S2.2中,当所述口令管理服务器获得数据访问客户端的口令获取请求后,所述口令管理服务器首先验证所述数据访问客户端是否已注册过,如果没有注册过,则直接向数据访问客户端返回口令获取失败的通知消息;如果已注册过,再继续进行后续步骤S2.3。
步骤S2.3,口令管理服务器获得与前端网络设备的IP地址对应的MAC地址;
步骤S2.4,口令管理服务器查询预存储的MAC地址和随机数关系列表,判断MAC地址和随机数关系列表中是否存在与步骤S2.3得到的MAC地址对应的随机数,如果不存在,则向数据访问客户端返回访问口令获取失败的通知消息;如果存在,则获得与步骤S2.3得到的MAC地址对应的随机数,然后执行步骤S2.5;
步骤S2.5,口令管理服务器读取到当前有效的管理秘钥;其中,管理秘钥保存在口令管理服务器的加密狗中;或者,对管理秘钥进行可逆加密处理后,保存在口令管理服务器的本地磁盘和备份服务器中。
然后,采用预设加密算法,对读取到的管理秘钥、步骤S2.3获得的MAC地址以及步骤2.4获得的随机数进行加密计算,计算得到设备秘钥字符串;设备秘钥字符串即为需访问的前端网络设备的访问口令;
步骤S2.6,口令管理服务器将步骤S2.5得到的设备秘钥字符串发送给数据访问客户端;数据访问客户端根据获得的设备秘钥字符串,对前端网络设备进行访问。
本步骤中,为了进一步提升设备秘钥字符串的安全性,在数据访问客户端和口令管理服务器进行秘钥字符串传输的通讯中,可进一步采用私有可逆加密手段,对秘钥字符串本身进行加密,保证设备秘钥字符串在网络传输过程中的安全性。
在上述步骤的基础之上,还可进行以下改进:
第1点改进:在系统运行过程中,口令管理服务器会定期对前端所有网络设备进行口令更新,包括两种更新方式:
第一种,对于每个前端网络设备,口令管理服务器定期生成与该前端网络设备的MAC地址对应的新随机数;然后,口令管理服务器读取到当前有效的管理秘钥,再采用预设加密算法,对MAC地址、新随机数和管理秘钥进行加密计算,计算得到新访问口令;然后,口令管理服务器采用新访问口令修改前端网络设备的旧访问口令;在修改成功后,口令管理服务器用新随机数更新MAC地址和随机数关系列表中的对应的旧随机数;
第二种,口令管理服务器的操作人员设置并维护一个字符串类型的管理秘钥,此管理秘钥根据系统的使用规定进行定期手动更改,此管理秘钥可保存在口令管理服务器的加密狗中,例如,StoreROCKEY4SMART加密狗中;也可经可逆加密处理后保存在口令管理服务器的本地磁盘和备份服务器中。
因此,维护人员定期手动更新管理秘钥,每当管理秘钥被更新时,均触发口令管理服务器对当前管理的所有前端网络设备的访问口令进行更新操作,即:对于每个前端网络设备,口令管理服务器获取与前端网络设备的IP地址对应的MAC地址;然后,口令管理服务器查询MAC地址和随机数关系列表,获得随机数值;然后,采用预设加密算法,对MAC地址、随机数值和更新后的管理秘钥进行加密计算,计算得到新访问口令;最后,口令管理服务器采用新访问口令修改前端网络设备的旧访问口令。
第2点改进:
MAC地址和随机数关系列表存储于口令管理服务器的内存中;在口令管理服务器的本地磁盘文件中还保存有MAC地址和随机数关系列表副本;当MAC地址和随机数关系列表被更新时,口令管理服务器立即更新MAC地址和随机数关系列表副本,进而保证MAC地址和随机数关系列表与MAC地址和随机数关系列表副本的同步。系统重启时,从磁盘文件中读入MAC地址和随机数关系列表数据到口令管理服务器内存。由此可见,本发明中,口令管理服务器内存及磁盘文件中,均只保存MAC地址和随机数关系数据,不保存秘钥字符串本身,进一步保证秘钥字符串的安全性。
第3点改进:
为了保证整个系统的安全性,保证整个系统不会因为口令管理服务器设备本身的故障而崩溃,因此,口令管理服务器在进行MAC地址和随机数关系列表副本记录的同时,在备份服务器上同步备份另一个MAC地址和随机数关系列表副本,形成一个网络副本;网络副本用于在重建口令管理服务器时对系统进行恢复。
本发明还提供一种大批量部署的网络设备口令认证系统,包括:前端网络设备、数据访问客户端、口令管理服务器以及数据备份服务器;前端网络设备、数据访问客户端、口令管理服务器和数据备份服务器通过网络相互连接;其中,前端网络设备可以是网络摄像机,网络物联网探测器等需通过口令验证进行访问的网络设备。在本实施例中,前端网络设备可采用海康威视的DS-2CD2326(D)WD-I网络摄像机,数据访问客户端使用普通的PC计算机,口令服务器和备份服务器使用联想ThinkServer TD340服务器,使用飞天诚信的StoreROCKEY4SMART型号加密狗。
其中,口令管理服务器需专用加密狗支持才能启动,包括:
第1接收模块,用于接收来自于数据访问客户端的访问口令获取请求;
MAC地址获取模块,用于对第1接收模块接收到的访问口令获取请求进行解析,得到需访问的前端网络设备的IP地址;再获得与前端网络设备的IP地址对应的MAC地址;
MAC地址和随机数关系列表维护模块,用于存储并维护MAC地址和随机数关系;
随机数查找模块,用于查找MAC地址和随机数关系列表,得到与MAC地址获取模块获取到的MAC地址对应的随机数;
管理秘钥获取模块,用于获取当前有效的管理秘钥;
访问口令计算模块,用于采用预设加密算法,对MAC地址获取模块获得的MAC地址、随机数查找模块查找到的随机数以及管理秘钥获取模块获得的管理秘钥进行加密计算,得到前端网络设备的访问口令;
访问口令更新模块,用于使用访问口令计算模块计算得到的前端网络设备的访问口令更新对应的前端网络设备的旧访问口令。
第1发送模块,用于将访问口令计算模块计算得到的访问口令发送给数据访问客户端;
数据访问客户端包括:
第2发送模块,用于向口令管理服务器发送访问口令获取请求;
第2接收模块,用于接收来自于口令管理服务器的对某个前端网络设备的访问口令;
访问模块,用于基于第2接收模块接收到的访问口令,对对应的前端网络设备进行访问。
由此可见,本发明提供的大批量部署的网络设备口令认证方法及口令认证系统具有以下优点:
本发明能够定期自动更新所有网络设备的访问口令,并且,保证每台网络设备的访问口令是唯一的,且访问口令本身具有很强的防破解能力,从而既减轻了管理维护人员的工作量,也有效提高了网络设备的使用安全性。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。