1. 免插件离线ROOT(开启 SSH)

【参考】极路由云平台倒闭,路由器免插件离线ROOT方法_木子三水的专栏-CSDN博客_极路由云平台挂了怎么root

准备工作:路由器接通电源,并链接互联网;电脑通过网线链接到极路由器。

访问:极路由ROOT local-ssh利用工具

(1)点击  获取local_token
注意该网页不要关闭,后续获得 cloud token,填入并提交,即可临时获得ssh权限,即:http://192.168.199.1/local-ssh/

(2)点击 获取uuid,即:http://192.168.199.1/cgi-bin/turbo/proxy/router_info 返回是json数据,见“uuid”字段信息

(3)回到 http://www.hiwifi.wtf/ 填入 local token 和 uuid 信息,提交可见 cloud token 信息

(4)回到 http://192.168.199.1/local-ssh/ 的页面,填入上面的 cloud token 提交,即可有提示 Success: ssh port is 22

(5)可成功SSH(用户名:root,密码:路由器管理密码),不过是临时ssh权限,此时退出ssh后,就不能继续,所以需要执行命令永久开启ssh

/etc/init.d/dropbear enable && /etc/init.d/dropbear start

2. 下载和安装Breed

(1)下载 Breed 固件,下载链接:https://breed.hackpascal.net/breed-mt7621-hiwifi-hc5962.bin

(2)使用MobaXterm,以SSH方式(root/admin)登陆 192.168.199.1,将下载的Breed固件上传至路由器的 /tmp 目录下(自行替换文件路径)。

(3)执行如下命令刷 Breed 固件

mtd -r write /tmp/breed-mt7621-hiwifi-hc5962.bin u-boot

(4)【非常重要,否则无法进入breed界面】拔掉电源,按住复位键不放开的同时插上电源并保持 5 秒以上,然后放开reset键,这时方可成功进入 breed 界面 (192.168.1.1)。

3. 刷入老毛子 Padavan 固件(灯大和H大杂交固件)
(1)进入 https://opt.cn2qq.com/padavan/ 下载 B70 开头的固件。
在 Breed 中选择固件更新,选中固件并上传文件确认更新。
然后耐心地等待一会,输入 http://192.168.123.1/ 进入 Padavan 管理页面(用户名密码均为 admin,WiFi 初始密码是 1234567890,HTTPS方式无法打开,需要用HTTP方式)

tixi不建议采用本页面的方法:极路由4刷OpenWrt(LEDE) - 云+社区 - 腾讯云

4. 路由器Padavan 固件功能设置(WIFI连接方式会很卡,建议路由器断开外网之后,采用有线方式连接路由器进行设置)

5. 添加Torjan支持

路由器添加trojan支持 (bandwh.com)

在 Padavan 上使用 trojan | 三土 | AmBeta

6. 内网映射

公网IP地址:ipa   极路由IP地址:ipr   连接到路由上的设备Pi3B局域网IP地址:ipd

(1) 登录路由器Padavan web管理端,外部网络 --> 端口转发 --> 启用手动端口映射,添加端口映射,首先选择内建的服务器应用(如SSH),设置端口范围为1022(外网访问用),如

SSH * 1022 192.168.199.6(ipd) 22 TCP

(2) 设置完成之后,在极路由所在的局域网Host PC中,可使用

ssh -p 1022 username@ipr

来访问设备Pi3B。

(3) 登录学校VPN接入学校内网,然后通过ipr和1022号端口,即可直接访问极路由上连接的设备。

(4) 在ipa所属Host PC上,通过sudo apt install nginx-extras 添加 stream模块,配置`http://etc/nginx/nginx.conf` 实现

$ tail -11 conf/nginx.conf   --增加11行内容,详细如下 
stream {
         upstream ssh {
                 server 192.168.0.21:22;
         }
         server {
                 listen 2222;
                 proxy_pass ssh;
                 proxy_connect_timeout 30m;
                 proxy_timeout 30m;
         }
 }
$ sudo nginx      --启动服务

 配置代理多台ssh服务器

$ cat stream_ssh_host 
stream {
    log_format proxy '[$time_local] $remote_addr '
                 '$protocol $status $bytes_sent $bytes_received '
                 '$session_time '
                 '$upstream_addr $upstream_bytes_sent $upstream_bytes_received $upstream_connect_time';
    access_log logs/stream_access.log proxy;
    error_log logs/stream_error.log warn;
    server {
        listen 2221;
        proxy_pass 192.168.0.21:22;
    }
    server {
        listen 2222;
        proxy_pass 192.168.0.22:22;
    }    
}

启动  systemctl start nginx
重启  systemctl restart nginx
测试配置文件语法是否正确 nginx -t
重载配置文件   systemctl reload nginx
停止          systemctl stop nginx
启动开机启动   systemctl enable nginx

使用ssh客户端连接并测试
$ ssh -p 2222 mai@ipr        --ipr为本机IP,端口为刚刚nginx配置端口2222

通过这种方式,可以直接将ssh服务通过nginx一种代理的服务来实现。如果是一个服务群体,那么可以做到的是这个配置了nginx的服务其实当成了跳板机器使用,数据都是流向这台nginx的服务器,然后通过它来进入这个局域网服务群,这种方法也是可以在某一种程度上是相对的安全了。

参考资料:
[1] https://blog.csdn.net/sanshuei/article/details/114108513
[2] https://zerol.me/2020/03/30/HiWifi-B70-Breed-Padavan/
[3] https://post.smzdm.com/p/avwq97lp/
[4] https://github.com/garypang13/OpenWrt

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐