如何在小米路由器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,将改文件解压缩到一个无中文的路径即可。
小米路由器联网,登录路由器,在地址栏中找到参数stok并复制等号后的字符,保持网页不要关闭。
在解压OpenWRTInvasion的目录打开cmd(本教程中使用的是Windows PowerShell)
输入python remote_command_execution_vulnerability.py
指令运行破解脚本
根据提示输入路由器IP(192.168.31.1),粘贴之前复制的stok等号后的字符,开始破解
破解成功后会有提示,可以复制提示的指令连接Telent或者SSH,用户名、密码都是root
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
然后使用WinSCP或者其他FTP工具创建FTP连接,地址是路由器IP,用户名root,没有密码,连接后将刚才备份的两个文件all.bin
,Bootloader.bin
传输出来,并且将 breed-mt7621-pbr-m1.bin 上传到tmp目录下。
上传完成后执行mtd -r write /tmp/breed-mt7621-pbr-m1.bin Bootloader
刷入Breed,刷入完成后重启路由器
使用浏览器打开192.168.1.1打开Breed控制台,刷入openwrt-ramips-mt7621-xiaomi_r4a-squashfs-sysupgrade.bin。点击确定后,会进行更新读条。
等待读条结束后,浏览器输入192.168.31.1即可看到OpenWrt登录界面
默认账号为root,密码是 coolxiaomi,登录后显示下方界面即刷入成功。
4. 安装cpolar内网穿透
此时已经可以成功登录OpenWrt并运行,不过只能在本地访问,如果打算在公网环境随时随时访问内网的OpenWrt进行文件传输等操作,我们需要安装cpolar内网穿透工具来实现。
4.1 注册账号
进入cpolar官网:https://www.cpolar.com/
点击右上角的免费注册
,使用邮箱免费注册一个cpolar账号并登录
4.2 下载cpolar客户端
登录成功后,点击下载cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。
4.3 登录cpolar web ui管理界面
在浏览器上访问127.0.0.1:9200,使用所注册的cpolar邮箱账号登录cpolar web ui管理界面(默认为本地9200端口)
4.4 创建公网地址
登录成功进入主界面后,我们点击左侧仪表盘的隧道管理
——隧道列表
,再点击创建隧道
.
-
隧道名称:可自定义命名,不能与已有的隧道名重复,这里我填写了
website
-
协议:选择
http
-
本地地址:
192.168.31.1:80
-
域名类型:免费套餐选择
随机域名
-
地区:
China Top
点击创建
此时,点击左侧状态
中的在线隧道列表
,可以看到刚才创建的wamp隧道,生成了两个公网地址,有两种访问方式,分别是http 和https,随意复制一个地址,在公网电脑浏览器打开即可,如下图所示即代表成功实现公网访问本地内网路由器的OpenWrt。
5. 固定公网地址访问
需要注意的是,本次教程中使用的是免费cpolar所生成的公网随机临时地址,该地址24小时内会发生变化,对于需要长期在外使用OpenWrt的用户来讲,配置一个固定地址就很有必要。
我一般会使用固定二级子域名,原因是这样一个固定、易记的公网地址(例如:open.cpolar.cn),这样远程路由器时更方便也更快捷。
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留
,保留成功后复制保留的二级子域名名称。
以本次教程为例,地区选择China VIP
,二级域名填写open
,描述填写1,点击保留
。
保留成功后复制保留的二级子域名地址,登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理
——隧道列表
,找到所要配置的隧道:website,点击右侧的编辑
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择
二级子域名
- Sub Domain:填写保留成功的二级子域名
open
- 地区:选择
China VIP
点击更新
更新完成后,打开在线隧道列表
,此时可以看到公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。
最后,我们使用固定的公网地址进行连接访问,复制二级子域名:http://open.vip.cpolar.cn/到另一台公网电脑浏览器打开,无报错和连接异常,可以看到连接成功,这样一个固定不变的地址访问就设置好了,您可以随时随地使用该域名来公网访问内网路由器OpenWrt进行操作了。
相关文章:

如何在小米路由器4A千兆版刷入OpenWRT并通过内网穿透工具实现公网远程访问
文章目录 前言1. 安装Python和需要的库2. 使用 OpenWRTInvasion 破解路由器3. 备份当前分区并刷入新的Breed4. 安装cpolar内网穿透4.1 注册账号4.2 下载cpolar客户端4.3 登录cpolar web ui管理界面4.4 创建公网地址 5. 固定公网地址访问 前言 OpenWRT是一个高度模块化、高度自…...

diffusers pipeline拆解:理解pipelines、models和schedulers
diffusers pipeline拆解:理解pipelines、models和schedulers 翻译自:https://huggingface.co/docs/diffusers/using-diffusers/write_own_pipeline v0.24.0 diffusers 设计初衷就是作为一个简单且易用的工具包,来帮助你在自己的使用场景中构建…...
Spring 装配Bean详解
一、简介 Spring容器负责创建应用程序中的bean并通过DI来协调这些对象之间的关系。Spring具有非常大的灵活性,它提供了三种主要的装配机制: 在XML中进行显示配置;在Java中进行显示配置;隐式的bean发现机制和自动装配。 二、…...

udp多播组播
import socket ,struct,time# 组播地址和端口号 MCAST_GRP 239.0.0.1 MCAST_PORT 8888 # 创建UDP socket对象 sock socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) # 绑定socket对象到本地端口号 # sock.bind((MCAST_GRP, MCAST_PORT)) …...

逆向修改Unity的安卓包资源并重新打包
在上一篇文章中,我已经讲过如何逆向获取unity打包出来的源代码和资源了,那么这一节我将介绍如何将解密出来的源代码进行修改并重新压缩到apk中。 其实在很多时候,我们不仅仅想要看Unity的源码,我们还要对他们的客户端源码进行修改和调整,比如替换资源,替换服务器连接地址…...

pycharm中py文件设置参数
在py文件中右键 直接对应复制进去即可...

简单实现Spring容器(二) 封装BeanDefinition对象放入Map
阶段2: // 1.编写自己的Spring容器,实现扫描包,得到bean的class对象.2.扫描将 bean 信息封装到 BeanDefinition对象,并放入到Map.思路: 1.将 bean 信息封装到 BeanDefinition对象中,再将其放入到BeanDefinitionMap集合中,集合的结构大概是 key[beanName]–value[beanDefintion…...
信创运维产业的发展与趋势:IT管理的新视角
随着数字化时代的来临,信息技术应用的各个方面都在发生变革。在这个过程中,信创运维产业的发展尤为引人注目。它不仅是数字化转型的关键驱动力,也是国家经济发展的重要支柱。本文将探讨信创运维产业的发展与趋势,以及国家如何管理…...
算法通关村第十七关 | 黄金挑战 | 跳跃游戏
1.跳跃游戏 原题:力扣55. 逐步判断下一步的覆盖范围,根据范围去推断是否能到达终点,不用计较每一步走到哪里。 public boolean canJump(int[] nums) {// 题目规定 nums 长度大于等于1if (nums.length 1) {return true;}int cover 0;// f…...

思科最新版Cisco Packet Tracer 8.2.1安装
思科最新版Cisco Packet Tracer 8.2.1安装 一. 注册并登录CISCO账号二. 下载 Cisco Packet Tracer 8.2.1三. 安装四. 汉化五. cisco packet tracer教学文档六. 正常使用图 前言 这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新…...

【LeetCode热题100】【滑动窗口】找到字符串中所有字母异位词
给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。 示例 1: 输入: s "cbaebabacd", p "…...

logback的使用
1 logback概述 SLF4J的日志实现组件关系图如下所示。 SLF4J,即Java中的简单日志门面(Simple Logging Facade for Java),它为各种日志框架提供简单的抽象接口。 SLF4J最常用的日志实现框架是:log4j、logback。一般有s…...

IntelliJ IDEA无公网远程连接Windows本地Mysql数据库提高开发效率
🔥博客主页: 小羊失眠啦. 🎥系列专栏:《C语言》 《数据结构》 《Linux》《Cpolar》 ❤️感谢大家点赞👍收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,…...

VS Code使用教程
链接远程服务器 https://blog.csdn.net/zhaxun/article/details/120568402 免密登陆服务器 1生成客户机(个人PC)密令 ssh-keygen -t rsa生成的文件在主目录的.ssh文件当中。 查看密令并复制到linux系统当中 cat id_rsa.pub 2复制到服务器中 echo …...

StarRocks数据模型之主键模型(当前版本v3.1)
StarRocks表设计数据模型,有四种:分别是明细模型(Dumplicate Key table),聚合模型(Aggregate table),更新模型(Unique Key table),主键模型&#…...
正确使用React组件缓存
简介 正常来讲的话当我们点击组件的时候,该组件以及该组件的子组件都会重新渲染,但是如何避免子组件重新渲染呢,我们经常用memo来解决 React.memo配合useCallback缓存组件 父组件没有传props const Index ()> {console.log(子组件刷新…...

AMEYA360:大唐恩智浦荣获 2023芯向亦庄 “汽车芯片50强”
2023年11月28日,由北京市科学技术委员会和北京市经济和信息化局指导、北京经济技术开发区管理委员会主办、盖世汽车协办的“芯向亦庄”汽车芯片大赛在北京亦庄成功闭幕。 在本次大赛中 大唐恩智浦的 电池管理芯片DNB1168 (应用于新能源汽车BMS系统) 凭卓越的性能及高…...
在Arch Linux上安装yay
有点麻烦。 准备 # pacman -Syu # pacman -S --needed base-devel git 变身为普通用户 不能使用root下载代码。所以要变身为普通用户: # sueradd tsit # su tsit 下载代码 $ git clone https://aur.archlinux.org/yay.git 编译安装 $ cd yay $ makepkg -si…...
PHP案例:探究MySQL应用开发喜好的网络调查
文章目录 一、知识准备(一)数据库与表的创建(二)录入调查选项(三)创建问卷页面(四)处理投票数据(五)显示调查结果二、实现步骤(一)创建数据库与表(二)录入若干调查选项(三)创建问卷页面(四)创建调查结果页面(五)体验运行结果(六)查看最终生成的HTML代码很…...

力扣第374场周赛题解
这一场周赛的题目是比较难的一次,写了1个多小时就写了两个题目。 首先第一题: 纯水题,遍历然后进行一下判断就可以解决了。这边就不放代码了。 第二题: 这个题目,我觉得难度非常大,其实代码量也不大都是很…...

DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...

2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...
Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成
一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…...

Elastic 获得 AWS 教育 ISV 合作伙伴资质,进一步增强教育解决方案产品组合
作者:来自 Elastic Udayasimha Theepireddy (Uday), Brian Bergholm, Marianna Jonsdottir 通过搜索 AI 和云创新推动教育领域的数字化转型。 我们非常高兴地宣布,Elastic 已获得 AWS 教育 ISV 合作伙伴资质。这一重要认证表明,Elastic 作为 …...