如何把小米路由器刷入OpenWRT系统并通过内网穿透工具实现公网远程访问

小米路由器4A千兆版刷入OpenWRT并远程访问

文章目录

  • 小米路由器4A千兆版刷入OpenWRT并远程访问
    • 前言
    • 1. 安装Python和需要的库
    • 2. 使用 OpenWRTInvasion 破解路由器
    • 3. 备份当前分区并刷入新的Breed
    • 4. 安装cpolar内网穿透
      • 4.1 注册账号
      • 4.2 下载cpolar客户端
      • 4.3 登录cpolar web ui管理界面
      • 4.4 创建公网地址
    • 5. 固定公网地址访问

前言

OpenWRT是一个高度模块化、高度自动化的嵌入式Linux系统,可以让路由器变得更智能,简单的说,路由器刷了OpenWrt就相当于一个Linux系统带无线带多网卡的电脑。

举个栗子:有usb功能的路由器刷后可以实现多端文件共享 ,挂站,远程监控甚至智能家居 ;无线可桥接,可以无线连接一般的chinanet热点并拨号;组建局域网无线网络传输数据等。

今天就分享一下如何在小米路由器4A千兆版刷入OpenWRT并通过内网穿透工具实现公网远程访问。

1. 安装Python和需要的库

首先打开 www.python.org 下载一个 Python3 的安装包并安装。

安装完成后执行以下命令升级pip与安装需要的库:

python -m pip install --upgrade pip
pip install pycryptodome
pip install requests

2. 使用 OpenWRTInvasion 破解路由器

打开 OpenWRTInvasion 的 releases 页面,下载一个可用的版本,我这里选择的是支持Windows的版本的是0.0.7。

下载后得到的压缩包名为:OpenWRTInvasion-0.0.7,将改文件解压缩到一个无中文的路径即可。

image-20231110132110564

小米路由器联网,登录路由器,在地址栏中找到参数stok并复制等号后的字符,保持网页不要关闭。

image-20231110132322135

在解压OpenWRTInvasion的目录打开cmd(本教程中使用的是Windows PowerShell)

输入python remote_command_execution_vulnerability.py指令运行破解脚本

根据提示输入路由器IP(192.168.31.1),粘贴之前复制的stok等号后的字符,开始破解

破解成功后会有提示,可以复制提示的指令连接Telent或者SSH,用户名、密码都是root

1699594102179

3. 备份当前分区并刷入新的Breed

首先执行以下指令查看与备份分区

cat /proc/mtd   #显示路由分区
dd if=/dev/mtd0 of=/tmp/all.bin   #备份所有分区到/tmp/all.bin
dd if=/dev/mtd1 of=/tmp/Bootloader.bin   #备份引导分区到/tmp/Bootloader.bin

2.png

然后使用WinSCP或者其他FTP工具创建FTP连接,地址是路由器IP,用户名root,没有密码,连接后将刚才备份的两个文件all.bin,Bootloader.bin传输出来,并且将 breed-mt7621-pbr-m1.bin 上传到tmp目录下。

image-20231110133106317

上传完成后执行mtd -r write /tmp/breed-mt7621-pbr-m1.bin Bootloader刷入Breed,刷入完成后重启路由器

image-20231110133436834

使用浏览器打开192.168.1.1打开Breed控制台,刷入openwrt-ramips-mt7621-xiaomi_r4a-squashfs-sysupgrade.bin。点击确定后,会进行更新读条。

image-20231110133222053

等待读条结束后,浏览器输入192.168.31.1即可看到OpenWrt登录界面

默认账号为root,密码是 coolxiaomi,登录后显示下方界面即刷入成功。

image-20231110133305818

4. 安装cpolar内网穿透

此时已经可以成功登录OpenWrt并运行,不过只能在本地访问,如果打算在公网环境随时随时访问内网的OpenWrt进行文件传输等操作,我们需要安装cpolar内网穿透工具来实现。

4.1 注册账号

进入cpolar官网:https://www.cpolar.com/

点击右上角的免费注册,使用邮箱免费注册一个cpolar账号并登录

20221117173301

4.2 下载cpolar客户端

登录成功后,点击下载cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

20221117173307

4.3 登录cpolar web ui管理界面

在浏览器上访问127.0.0.1:9200,使用所注册的cpolar邮箱账号登录cpolar web ui管理界面(默认为本地9200端口)

20221117173316

4.4 创建公网地址

登录成功进入主界面后,我们点击左侧仪表盘的隧道管理——隧道列表,再点击创建隧道.

image-20231110162208198

  • 隧道名称:可自定义命名,不能与已有的隧道名重复,这里我填写了website

  • 协议:选择http

  • 本地地址:192.168.31.1:80

  • 域名类型:免费套餐选择随机域名

  • 地区:China Top

点击创建

image-20231110162518951

此时,点击左侧状态中的在线隧道列表,可以看到刚才创建的wamp隧道,生成了两个公网地址,有两种访问方式,分别是http 和https,随意复制一个地址,在公网电脑浏览器打开即可,如下图所示即代表成功实现公网访问本地内网路由器的OpenWrt。

image-20231110162548764

5. 固定公网地址访问

需要注意的是,本次教程中使用的是免费cpolar所生成的公网随机临时地址,该地址24小时内会发生变化,对于需要长期在外使用OpenWrt的用户来讲,配置一个固定地址就很有必要。

我一般会使用固定二级子域名,原因是这样一个固定、易记的公网地址(例如:open.cpolar.cn),这样远程路由器时更方便也更快捷。

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称。

image-20231110163339847

以本次教程为例,地区选择China VIP,二级域名填写open,描述填写1,点击保留

image-20231110163454502

保留成功后复制保留的二级子域名地址,登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道:website,点击右侧的编辑

image-20231110163710840

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名open
  • 地区:选择China VIP

点击更新

image-20231110163829552

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。

image-20231110163857679

最后,我们使用固定的公网地址进行连接访问,复制二级子域名:http://open.vip.cpolar.cn/到另一台公网电脑浏览器打开,无报错和连接异常,可以看到连接成功,这样一个固定不变的地址访问就设置好了,您可以随时随地使用该域名来公网访问内网路由器OpenWrt进行操作了。

image-20231110163939222

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/192463.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

11.10 知识总结(数据的增删改查、如何创建表关系、Django框架的请求生命周期流程图)

一、 数据的增删改查 1.1 用户列表的展示 把数据表中得用户数据都给查询出来展示在页面上 添加数据 id username password gender age action 修改 删除 1.2 修…

44. Adb调试QT开发的Android程序实用小技巧汇总

1. 说明 使用QT开发Android应用时,如果程序本身出现了问题,很难进行调试。不像在linux或者windows系统中,可以利用QtCreator软件本身进行一些调试,安卓应用一旦在系统中安装后,如果运行中途出现什么BUG,定位问题所在很麻烦。不过,好在有adb这种调试工具可以代替QtCreat…

【数据结构】反射、枚举

⭐ 作者:小胡_不糊涂 🌱 作者主页:小胡_不糊涂的个人主页 📀 收录专栏:浅谈数据结构 💖 持续更文,关注博主少走弯路,谢谢大家支持 💖 反射、枚举 1. 反射1.1 定义1.2 反射…

数据结构上机实验——图的实现(以无向邻接表为例)、图的深度优先搜索(DFS)、图的广度优先搜索(BFS)

文章目录 数据结构上机实验1.要求2.图的实现(以无向邻接表为例)2.1创建图2.1.1定义图的顶点、边及类定义2.1.2创建无向图和查找2.1.3插入边2.1.4打印函数 2.2图的深度优先搜索(DFS)2.3图的广度优先搜索(BFS&#xff09…

为什么PDF文件不能打印?

正常的PDF文件是可以打印的,如果PDF文件打开之后发现文件不能打印,我们需要先查看一下自己的打印机是否能够正常运行,如果打印机是正常的,我们再查看一下,文件中的打印功能按钮是否是灰色的状态。 如果PDF中的大多数功…

使用vue2实现todolist待办事项

个人名片: 😊作者简介:一名大二在校生 🤡 个人主页:坠入暮云间x 🐼座右铭:懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。 🎅**学习目标: 坚持每一次的学习打卡 文章…

Python接口自动化之unittest单元测试

以下主要介绍unittest特性、运行流程及实际案例。 一、单元测试三连问 1、什么是单元测试? 按照阶段来分,一般就是单元测试,集成测试,系统测试,验收测试。单元测试是对单个模块、单个类或者单个函数进行测试。 将…

微信小程序display常用属性和子元素排列方式介绍

wxss中display常用显示属性与css一致,介绍如下: 针对元素本身显示的属性: displayblock,元素显示换行displayinline,元素显示换行,但不可设置固定的宽度和高度,也不可设置上下方向的margin和p…

计算机视觉:人脸识别与检测

目录 前言 识别检测方法 本文方法 项目解析 完整代码及效果展示 前言 人脸识别作为一种生物特征识别技术,具有非侵扰性、非接触性、友好性和便捷性等优点。人脸识别通用的流程主要包括人脸检测、人脸裁剪、人脸校正、特征提取和人脸识别。人脸检测是从获取的图…

ReportLab创建合同PDF

一、前言 有一个项目需要将电子签名后的报价合同和生成的发票发送给客户,这种发送给客户的文件一般都是使用PDF格式,主要是因为PDF特别适合阅读且不同平台打开文件格式不会变形,不过要在程序中生成PDF还是比较麻烦的,我们的发票是…

Fortinet 聚焦核心业务增长领域,巩固网安市场领导地位,持续推动行业创新

近日,专注于推动网络与安全融合的全球网络安全领导者 Fortinet(NASDAQ:FTNT)发布第三季度财报。同期,Fortinet做出重大战略宣布,未来将重点聚焦高速增长的差异化市场。Fortinet 将紧紧围绕安全组网、Univer…

Jenkins入门——安装docker版的Jenkins 配置mvn,jdk等 使用案例初步 遇到的问题及解决

前言 Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。 官网:https://www.jenkins.io/zh/ 本篇博客介绍docker版的jenkins的安装和使用,maven、jdk,汉语的配置…

docker安装AWVS 23.9.231005181

本文声明仅AWVS用作学习使用 将镜像文件secfa_awvs.tar复制到目标机器上。 我的百度网盘文件路径: 链接:https://pan.baidu.com/s/1Pe4qlVp9XKbZ3dLrouaP2w 提取码:67mc –来自百度网盘超级会员V6的分享 在目标机器上,使用以下命…

Git-工作流

前言 一、工作流概述二、Git flow1.主要流程2.优缺点3.适用场景 三、Github flow1.主要流程2.优缺点3.适用场景 四、Gitlab flow1.主要流程2.优缺点3.适用场景 总结参考 一、工作流概述 开发人员通过Git可以记录和追踪代码的变化,包括添加、删除和修改文件。如果是…

NLP在网安领域中的应用(初级)

NLP在网安领域的应用 写在最前面NLP在网络安全中的角色案例分析 NLP技术的关键应用最新行业数据和研究1. 威胁情报分析1.1 社交媒体情报分析(后面有详细叙述)1.2 暗网监测与威胁漏洞挖掘 2. 恶意软件检测2.1 威胁预测与趋势分析 3. 漏洞管理和响应4. 社交…

python数据处理作业4:使用numpy数组对象,随机创建4*4的矩阵,并提取其对角元素

每日小语 真理诚然是一个崇高的字眼,然而更是一桩崇高的业绩。如果人的心灵与情感依然健康,则其心潮必将为之激荡不已。——黑格尔 难点:如何创建?取对角元素的函数是什么? gpt代码学习 import numpy as np# 随机创…

Istio学习笔记-体验istio

参考Istio 入门(三):体验 Istio、微服务部署、可观测性 - 痴者工良 - 博客园 (cnblogs.com) 在本章中,我们将会学习到如何部署一套微服务、如何使用 Istio 暴露服务到集群外,并且如何使用可观测性组件监测流量和系统指标。 本章教程示例使用…

Haproxy实现七层负载均衡

目录 Haproxy概述 haproxy算法: Haproxy实现七层负载 ①部署nginx-server测试页面 ②(主/备)部署负载均衡器 ③部署keepalived高可用 ④增加对haproxy健康检查 ⑤测试 Haproxy概述 haproxy---主要是做负载均衡的7层,也可以做4层负载均衡 apache也可…

haproxy端口耗尽no free ports

用haproxy配置负载均衡时出现端口不足错误;后端服务连接一会高一会儿低,从0到1w、2w跳变;实际连接数为4w左右; haproxy[8765]: Connect() failed for backend 09e581: no free ports. 问题描述 在请求很少的时候,工作…

VS Code打造Rust的开发环境

文章目录 rust-analyzerCodeLLDB Rust据说是一门永远也不会发生内存错误的语言,并且因其反人类的学习曲线,而长期占据编程鄙视链的最顶端。而且就连微软都准备把Windows挪到Rust上面,可见其受欢迎程度。 rust-analyzer 在插件栏中直接搜索r…