本发明涉及路由器维护,特别指一种基于ssh反向隧道的路由器远程维护方法及系统。
背景技术:
1、当路由器铺设到用户的使用环境中,如果路由器出现故障,需要技术人员进行故障定位、解决问题。针对路由器的维护,传统上存在如下方法:
2、方法一:将路由器上线接入到指定的管理服务器(acs、broker等),再通过mqtt(message queuing telemetry transport)、cwmp(cpe wan management protocol)等开源协议规范下发查询、设置、升级等命令来完成维护。但该方法存在如下缺点:下发命令是提前预制的,命令单一且扩展性差,能获取到的信息有限,无法完全控制路由器。
3、方法二:在路由器中安装vpn(virtual private network)客户端,使用vpn隧道远程登录到路由器控制台进行维护。但该方法存在如下缺点:需要路由器与服务器都安装vpn软件,增大服务器开销,浪费路由器内存、cpu等系统资源。
4、方法三:由技术人员到现场进行排查维护,使用pc接入路由器的lan侧,再使用ssh(secure shell)等登录到路由器后台进行排查维护。但该方法存在如下缺点:需要技术人员到达现场,时效性和便捷性差,流程复杂。
5、因此,如何提供一种基于ssh反向隧道的路由器远程维护方法及系统,实现提升路由器维护的灵活性以及便捷性,降低资源开销,成为一个亟待解决的技术问题。
技术实现思路
1、本发明要解决的技术问题,在于提供一种基于ssh反向隧道的路由器远程维护方法及系统,实现提升路由器维护的灵活性以及便捷性,降低资源开销。
2、第一方面,本发明提供了一种基于ssh反向隧道的路由器远程维护方法,包括如下步骤:
3、步骤s1、路由器上电并接通网络后,自动与服务器建立连接;
4、步骤s2、服务器通过mqtt协议,向路由器下发shell形式的ssh隧道开启指令;
5、步骤s3、路由器基于接收的所述ssh隧道开启指令,通过dropbear与服务器建立ssh隧道;
6、步骤s4、服务器映射所述ssh隧道的ip地址以及端口,通过所述ip地址以及端口远程登录路由器以对路由器进行维护。
7、进一步的,所述步骤s1具体为:
8、路由器上电并接通网络后,自动运行内置的脚本,通过所述脚本自动与服务器建立连接,通过指示灯指示连接状态。
9、进一步的,所述步骤s2中,所述ssh隧道开启指令下发前通过国密算法进行加密。
10、进一步的,所述步骤s3具体为:
11、路由器通过国密算法解密接收的所述ssh隧道开启指令,基于所述ssh隧道开启指令,通过dropbear向服务器发送至少携带服务器映射端口、本机地址、本地ssh端口、ssh连接账号、服务器ip以及ssh认证校验码的ssh连接请求,进而与服务器建立ssh隧道。
12、进一步的,所述步骤s4具体为:
13、服务器映射所述ssh隧道的ip地址以及端口,通过所述ip地址以及端口与ssh隧道建立连接,通过ssh连接账号以及ssh认证校验码进行登录和认证后,远程登录至路由器以对路由器进行维护。
14、第二方面,本发明提供了一种基于ssh反向隧道的路由器远程维护系统,包括如下模块:
15、服务器连接模块,用于路由器上电并接通网络后,自动与服务器建立连接;
16、ssh隧道开启指令下发模块,用于服务器通过mqtt协议,向路由器下发shell形式的ssh隧道开启指令;
17、ssh隧道建立模块,用于路由器基于接收的所述ssh隧道开启指令,通过dropbear与服务器建立ssh隧道;
18、路由器远程维护模块,用于服务器映射所述ssh隧道的ip地址以及端口,通过所述ip地址以及端口远程登录路由器以对路由器进行维护。
19、进一步的,所述服务器连接模块具体用于:
20、路由器上电并接通网络后,自动运行内置的脚本,通过所述脚本自动与服务器建立连接,通过指示灯指示连接状态。
21、进一步的,所述ssh隧道开启指令下发模块中,所述ssh隧道开启指令下发前通过国密算法进行加密。
22、进一步的,所述ssh隧道建立模块具体用于:
23、路由器通过国密算法解密接收的所述ssh隧道开启指令,基于所述ssh隧道开启指令,通过dropbear向服务器发送至少携带服务器映射端口、本机地址、本地ssh端口、ssh连接账号、服务器ip以及ssh认证校验码的ssh连接请求,进而与服务器建立ssh隧道。
24、进一步的,所述路由器远程维护模块具体用于:
25、服务器映射所述ssh隧道的ip地址以及端口,通过所述ip地址以及端口与ssh隧道建立连接,通过ssh连接账号以及ssh认证校验码进行登录和认证后,远程登录至路由器以对路由器进行维护。
26、本发明的优点在于:
27、通过在路由器上电并接通网络后自动与服务器建立连接,服务器通过mqtt协议向路由器下发shell形式的ssh隧道开启指令;接着路由器基于ssh隧道开启指令,通过dropbear与服务器建立ssh隧道,服务器映射ssh隧道的ip地址以及端口,最后通过ip地址以及端口远程登录路由器以对路由器进行维护;即路由器接通网络后连接至服务器,服务器向路由器发送ssh隧道开启指令以建立ssh隧道,即建立ssh反向隧道,后续通过ssh隧道即可对路由器进行远程维护,相对于传统上接入到指定的管理服务器,可灵活下发命令控制路由器执行各种操作,无需安装vpn软件,无需技术人员到达现场,最终极大的提升了路由器维护的灵活性以及便捷性,极大的降低了资源开销。
1.一种基于ssh反向隧道的路由器远程维护方法,其特征在于:包括如下步骤:
2.如权利要求1所述的一种基于ssh反向隧道的路由器远程维护方法,其特征在于:所述步骤s1具体为:
3.如权利要求1所述的一种基于ssh反向隧道的路由器远程维护方法,其特征在于:所述步骤s2中,所述ssh隧道开启指令下发前通过国密算法进行加密。
4.如权利要求1所述的一种基于ssh反向隧道的路由器远程维护方法,其特征在于:所述步骤s3具体为:
5.如权利要求1所述的一种基于ssh反向隧道的路由器远程维护方法,其特征在于:所述步骤s4具体为:
6.一种基于ssh反向隧道的路由器远程维护系统,其特征在于:包括如下模块:
7.如权利要求6所述的一种基于ssh反向隧道的路由器远程维护系统,其特征在于:所述服务器连接模块具体用于:
8.如权利要求6所述的一种基于ssh反向隧道的路由器远程维护系统,其特征在于:所述ssh隧道开启指令下发模块中,所述ssh隧道开启指令下发前通过国密算法进行加密。
9.如权利要求6所述的一种基于ssh反向隧道的路由器远程维护系统,其特征在于:所述ssh隧道建立模块具体用于:
10.如权利要求6所述的一种基于ssh反向隧道的路由器远程维护系统,其特征在于:所述路由器远程维护模块具体用于: