【ZeroNews】OpenWrt路由器小存储开启内网穿透

【ZeroNews】OpenWrt路由器小存储开启内网穿透

背景

想远程登录和管理路由器,但wan口没有公网IP或无固定公网IP,我们可以使用内网穿透技术轻松解决这些问题,以下介绍ZeroNews产品,因为每个用户有一个永久免费的域名、端口映射,满足大部分普通用户的日常需求。

ZeroNews最新版本3.x.x软件包大小约15M+,很多路由器剩余存储不足30M,并且空间都在/tmp目录,针对这种情况,无法按常规步骤把压缩包上传到路由器后再安装,接下来从0带你在存储不足30M的路由器上进行安装ZeroNews

准备工作

前提是你的路由器已经成功刷了OpenWrt固件

注册&登录ZeroNews

  • 浏览器打开官网: https://user.zeronews.cc/login
  • 成功登录后,就可以看到token,后续会用到

查看路由器架构型号

运行命令

shell 复制代码
uname -m

比如我的路由器输出如下信息

shell 复制代码
root@OpenWrt-K2:/tmp# uname -m
mips

下载Agent包

在个人PC上下载对应架构的Agent

shell 复制代码
# 下载x86_64
curl -SLk https://download.zeronews.cc/openwrt/x86_x64/zeronews-openwrt-v2-3.0.0.tar -o zeronews.tar
# 下载arm
curl -SLk https://download.zeronews.cc/openwrt/arm/zeronews-openwrt-v2-3.0.0.tar -o zeronews.tar
# 下载aarch64
curl -SLk https://download.zeronews.cc/openwrt/arm64/zeronews-openwrt-v2-3.0.0.tar -o zeronews.tar
# 下载mips
curl -SLk https://download.zeronews.cc/openwrt/mips/zeronews-openwrt-v2-3.0.0.tar -o zeronews.tar

解压tar包

  • 解压zeronews.tar,得到2个文件,分别是
    • zeronews/zeronews
    • zeronews/init.d/zeronews

准备工作准备就绪,接下来开始正式安装

使用WinSCP工具登录路由器

  • 新建一个会话,协议选择SCP
  • 填入你的路由器IPSSH端口,默认是22
  • 输入路由器的账号和密码

上传zeronews/zeronews

把之前从tar包解压出来的zeronews/zeronews文件上传到路由器的/tmp目录下

上传zeronews/init.d/zeronews

把之前从tar包解压出来的zeronews/init.d/zeronews文件上传到路由器的/etc/init.d目录下

通过putty登录路由器

设置软链

shell 复制代码
cd /usr/bin
ln -s /tmp/zeronews zeronews

测试下命令

shell 复制代码
zeronews --help

设置token

shell 复制代码
zeronews set token <YOUR_TOEKN>

启动

shell 复制代码
/etc/init.d/zeronews restart

查看已连接的设备

如果在Agent下能看到你的设备,说明安装成功

把默认HTTPS端口换成TCP

  • 免费版本,只允许创建1个端口
  • 如果是想登录路由器web管理界面,那就使用https端口
  • 如果想ssh登录路由器,那就使用tcp端口
  • 如果两者都需要,那就只能麻烦点,每次都先删除再添加

添加TCP端口映射

通过公网域名登录路由器

总结

  • 通过以上步骤,可以在一个存储有限的路由器等IoT设备上安装内网穿透工具ZeroNews
  • 这种方式不要求公网IP,不要求DDNS,更加方便,能操控的自由度更高
  • /tmp目录,每次路由器重启后会自动删除,所以需要重新上传zeronews/zeronews/tmp,放在/tmp目录是因为只有这个目录有少量剩余空间,如果其它目录空间足够,就不要放在/tmp目录下,能够放在/usr/bin最好