前缀、文档修改记录
20260417 初始化编辑此文章,完稿。 因软件更新和版本问题,技术课程有一定的时效,仅供参考。
章节1、需求描述
all in one 容易出现设备炸了,全部功能无法使用,于是乎,家里,还是需要把路由功能从all in one里面拆开,这样的好处是,即便all in one的设备挂了,我家里的网络还是okay的。故而,选择单独一台2网口的小主机部署openwrt即可。
章节2、 环境描述
2.5英寸的移动硬盘盒1个
120GB的2.5英寸的固态硬盘1个
网线2根
双网口的D525处理器的小主机1个
用于刷机的Windows主机1台
章节3、 软件准备
1、 openwrt官网: https://downloads.openwrt.org/ , 下载最新的镜像文件,目录路径为: https://downloads.openwrt.org/releases/25.12.2/targets/x86/64/,我这里,因为是旧D525的处理器,下载 ext4 / 非uefi的固件generic-ext4-combined.img.gz ,你们买的新款的小主机,基本都是要下载 ext4 / uefi的固件 generic-ext4-combined-efi.img.gz。
我这里下载到的文件: openwrt-25.12.2-x86-64-generic-ext4-combined.img.gz 日期 2026-4-17
2、 rufus官网:https://rufus.ie/downloads/ , 下载最新的rufus程序,用于写openwrt镜像到移动硬盘。
我这里下载到的文件: rufus-4.13.exe 日期 2026-4-17
章节4、 写入镜像
在Windows电脑上,解压 文件: openwrt-25.12.2-x86-64-generic-ext4-combined.img.gz ,得到格式为.img的镜像文件,使用rufus写入到2.5英寸的固态硬盘,写入过程很快,不到1分钟就可以完工。
章节5、 Openwrt初始化配置
电脑网口配置1个 192.168.1.101 / 255.255.255.0 的私网地址,使用电脑的任意浏览器登录
https://192.168.1.1 默认用户名 root 默认密码 空
修改,系统,系统,常规设置,主机名: GW 修改,系统,系统,常规设置,时区: Asia/Shanghai 修改,系统,管理权,SSH访问,接口,LAN 修改,系统,管理权,HTTP(S)访问,勾选 重定向到https 修改,网络,接口,确认LAN/WAN端口工作于哪个物理端口,贴标签纸 修改,网络,接口,WAN口,协议,PPPoE,输入自己的宽带账号,宽带密码 修改,网络,接口,LAN口,修改LAN的ipaddr,到10.X.X.X的内网网段,这个可以不设置,我自己用10的段,习惯了。 系统,关机
章节6、 安装常态需要的软件并扩容文件系统
我整个固体硬盘是120GB的,系统内只占用了100多个MB,需要扩容一些容量进文件系统,通过Powershell之类的SSH工具登录进openwrt系统,如下的操作,是扩容50G的容量进文件系统。
// 如果为2.5英寸的SSD盘 apk update apk add parted losetup resize2fs blkid unzip lsblk losetup parted -s /dev/sda resizepart 2 50GB losetup -a losetup /dev/loop0 /dev/sda2 resize2fs -f /dev/loop0 reboot

章节7、 安装中文界面
还是命令行里面,执行如下的命令,即可安装中文的语言包
apk add luci-i18n-base-zh-cn

安装完毕之后,不必重启,直接刷新openwrt的网页,即可看到中文,如果没有,则在路径 系统,系统,语言界面的路径下,语言选择 简体中文,保存并应用。

常规来说,安装到这里,一个稳定的路由器系统,就安装完成了。
章节8、 安装软件passwall
首先,还是在命令行中,安装必要的依赖软件。
apk add coreutils apk add coreutils-base64 apk add coreutils-nohup apk add curl apk add ip-full apk add libuci-lua apk add lua apk add luci-compat apk add luci-lib-jsonc apk add resolveip apk add ca-bundle apk add libev apk add libuv apk add libpcre2 apk add iptables-nft kmod-nft-socket kmod-nft-tproxy apk add haproxy
因为国内环境,还是用文件本地下载后,传到路由器,然后安装,会比较稳定可靠。
从github下载所需的文件 https://github.com/Openwrt-Passwall/openwrt-passwall/releases 共计下载2个apk文件。

从这里下载所需的依赖组件 https://sourceforge.net/projects/openwrt-passwall-build/files/releases/packages-25.12/x86_64/passwall_packages/ 共计下载33个apk文件。

先安装33个组件,再安装主程序和语言的2个,大概就这样的安装步骤即可。
可以直接全部安装,也可以针对自己用的协议,选择性安装对应的程序。
OpenWrt 的软件包管理器 apk 开启了安全校验,而你下载的第三方 .apk 文件没有包含系统认可的数字签名(或是本地公钥库缺失)。使用 –allow-untrusted 参数,忽略签名验证直接安装。
apk add --allow-untrusted v2ray-geoip-202604090028.1.apk apk add --allow-untrusted v2ray-geosite-202604122227.1.apk apk add --allow-untrusted xray-core-26.3.27-r1.apk apk add --allow-untrusted geoview-0.2.5-r1.apk apk add --allow-untrusted tcping-0.3-r1.apk apk add --allow-untrusted shadowsocks-libev-ss-local-3.3.5-r13.apk apk add --allow-untrusted shadowsocks-libev-ss-redir-3.3.5-r13.apk apk add --allow-untrusted shadowsocks-libev-ss-tunnel-3.3.5-r13.apk apk add --allow-untrusted shadowsocks-rust-*apk apk add --allow-untrusted chinadns-ng-2025.08.09-r1.apk apk add --allow-untrusted dns2socks-2.1-r2.apk apk add --allow-untrusted ipt2socks-1.1.4-r3.apk apk add --allow-untrusted microsocks-1.0.5-r2.apk
上面是我最小化的安装,安装好了,安装主程序的包和语言包。
apk add --allow-untrusted 25.12+_luci-app-passwall-26.4.15-r1.apk apk add --allow-untrusted 25.12+_luci-i18n-passwall-zh-cn-26.4.15.apk
不用重启,直接网页重新登录一下openwrt即可看到,菜单里多出一个“服务”和“passwall”软件。
修改 passwall/高级设置/转发设置/防火墙/nftables
章节9、 添加自定义脚本的开机启动
编辑文件 /etc/init.d/initscript
#!/bin/sh /etc/rc.common
# 启动优先级,通常 99 是最后启动
START=99
USE_PROCD=1
start_service() {
procd_open_instance
procd_set_param command /bin/sh /root/sh/run_command.sh
procd_set_param respawn # 如果进程崩溃自动重启
procd_set_param stdout 1 # 将日志输出到系统日志
procd_set_param stderr 1
procd_close_instance
}
附录1、视频操作演示
附录2、@Dasmz
博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者。技术层面,闻道有先后,如有疏漏、错误,欢迎指正。技术博客的内容,一般具有一定的环境依赖,具有一定的年代依赖,酌情参考其中的内容,请勿完全照搬照抄。
对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费
Twitter: Dasmz
Youtube: @DasmzStudio
Telegram: @Dasmz

























