passwall 换仓库了,我的旁路由差点以为它跑路了

今天打开 LuCI 准备点一下「检查更新」,opkg update 跑完,一片红:

*** Failed to download the package list from https://master.dl.sourceforge.net/project/openwrt-passwall-build/releases/packages-24.10/aarch64_generic/passwall_luci/Packages.gz
opkg_download: 下载失败 ...

我以为是临时网络抽风,挂代理、换 DNS、清缓存再跑——还是一样。连着试了 passwallpasswall2 两个核心包,都是这种 wget returned 8 错误。

然后我去 GitHub 搜了一下,老地址 xiaorouji/openwrt-passwall2 这个仓……已经 404 了。心里一凉:不会吧,跑路了?

passwall 新主仓库 Openwrt-Passwall/openwrt-passwall GitHub 页面

后来发现,没跑路,是换主了


1. 到底发生了什么

passwall / passwall2 是 OpenWrt 上最常用的两个代理插件,老家分别在:

  • xiaorouji/openwrt-passwall(passwall 主仓)
  • xiaorouji/openwrt-passwall2(passwall2 主仓)

今年上半年,社区里陆陆续续有传言「要删库」,搞得一群人慌。事实是作者把仓库迁到了新的组织名下:

顺便说一下:passwall 和 passwall2 是两个不同的项目,不是一个的 v2 版本。passwall 是多内核混跑(Xray/Sing-box/Clash/SS-rust 都能切),passwall2 是基于 Sing-box 为主的重写版。我自己用的是 passwall2,配 1GB 内存的 LEDE 旁路由刚好够。

新主仓都还活着。我去翻了 commit:

  • openwrt-passwall:最后提交 2026-07-09(就是昨天),1,737 个 commit
  • openwrt-passwall2:最后提交 2026-07-04,1,185 个 commit

反而 commit 比之前还勤快,应该是换主后维护团队壮大了。

passwall2 新主仓库 Openwrt-Passwall/openwrt-passwall2 GitHub 页面


2. 软件源也变了

仓库迁了,配套的预编译软件源也跟着换。以前你装 passwall 大概率是往 /etc/opkg/customfeeds.conf 里塞类似这么一行:

src/gz passwall_luci https://github.com/xiaorouji/openwrt-passwall/releases/...

现在这些都失效了。新源用的是 SourceForge 镜像,配合一个新的 build 仓库:

我刷 issue 列表的时候还看到一个特别有代表性的 #4271,题主在 NanoPi R2S 上跑 Kwrt 24.10 升级 passwall 报同样的错,主维护者 bcseputetto 一句话点醒:「你用 snapshot 固件,路径不对,应该是 packages-24.10,不是 packages-24」

passwall 新主仓库的 issues 列表,能看到很多 404/换源类的求助

所以即使换了新源,版本号拼写也得对,我等会教你怎么填。


3. 旁路由升级实操(LEDE 24.10)

我自己的旁路由是 LEDE 24.10.0,arm_cortex-a5 架构,1GB 内存。步骤如下,理论上 OpenWrt 21.02+ 都通用。

第一步:清掉旧源

/etc/opkg/customfeeds.conf 里所有 passwall 相关条目删掉,避免新源和旧源打架:

sed -i '/xiaorouji/openwrt-passwall/d' /etc/opkg/customfeeds.conf
sed -i '/^src/gz passwall_luci /d' /etc/opkg/customfeeds.conf
sed -i '/^src/gz passwall_packages /d' /etc/opkg/customfeeds.conf
sed -i '/^src/gz passwall2 /d' /etc/opkg/customfeeds.conf

第二步:导入新源的 opkg key

cd /tmp
wget -O passwall.pub https://master.dl.sourceforge.net/project/openwrt-passwall-build/passwall.pub
opkg-key add passwall.pub

第三步:写入新源

注意,distro 版本号要填完整,24.10 不是 24:

read release arch <<EOF
$(. /etc/openwrt_release ; echo ${DISTRIB_RELEASE%.*}.$DISTRIB_ARCH)
EOF

for feed in passwall_luci passwall_packages passwall2; do
  echo "src/gz $feed https://master.dl.sourceforge.net/project/openwrt-passwall-build/releases/packages-$release/$arch/$feed" 
    >> /etc/opkg/customfeeds.conf
done

执行完看一下 cat /etc/opkg/customfeeds.conf,路径里应该是 packages-24.10 而不是 packages-24

第四步:升级

opkg update
opkg list-upgradable | grep -i passwall
opkg upgrade luci-app-passwall2
opkg install luci-i18n-passwall2-zh-cn  # 中文包

我这次从 24.12.19-r1 升到了新版的 ipk,没遇到什么坎。最重要的是 先备份

cp /etc/config/passwall2 /etc/config/passwall2.bak.$(date +%Y%m%d)

节点配置、订阅链接、分流规则全在 /etc/config/passwall2 一个文件里,覆盖升级一般不会动它,但别赌。


4. 顺手提一下 6/1 那个公告

升级完之后我顺便看了下 passwall 主仓的公告,2026 年 6 月 1 日起,Xray Core 已经自动弃用 allowInsecure,强制要求自签证书必须配 pinnedPeerCertSha256pcs 参数)。

这句话翻译成人话就是:

如果你机场给的节点用了自签证书(不是正经 CA 签的),而且没带 pcs 参数,从 6 月 1 号起就连不上了。找机场要 pcs,或者换 Sing-box Core。

我自己用的几个节点都是正规 CA 证书的,没踩到这个坑。但我加的几个备用节点里,确实有一个机场是自签的、没给 pcs,连接直接超时了。查 /tmp/log/passwall2.log 看到的报错是 xray: failed to handshake,对照公告一眼就明白了。

这个公告我估计是跟着 Xray-core 的上游 commit 走的,passwall/passwall2 只是同步在 README 里告知一下。


5. 还有几个信息差的地方

写到最后顺便提几个我注意到的事,免得其他人再踩:

  • passwall2.org 这个域名站,首页教程里还是写的 xiaorouji/openwrt-passwall2 老地址,照着走会 404。估计站长还没同步,等他们更新吧。
  • SourceForge 镜像,国内直连有时候抽风(GFW 干扰 + SF 自己的速度问题),最好挂代理或者走 ghproxy 反代。我挂的是 passwall2 的代理本身——嗯,套娃了,但 OpenClash/passwall2 升级到一半挂掉就搞笑了,所以我先挂着别的节点升的。
  • passwall 和 passwall2 别装重了,两个会抢同一个 /etc/config/passwall 配置文件。我之前在 VPS 测试机上同时装过,节点列表互相看不见,得手动改 uci

passwall2.org 教程站还在引用老地址 xiaorouji/openwrt-passwall2


收尾

整个过程从发现升级报错到搞定,大概花了 20 分钟。最坑的不是换库本身,而是老教程散落在各种博客、域名站上,大家还都在引用 xiaorouji 那个旧地址。新主仓 README 倒是写得很清楚(甚至连 opkg 错误的诊断都给你列了),但中文圈很多教程更新不及时。

所以一句话总结:passwall 没跑路,老地址死了就换新地址,软件源也跟着换,distro 版本号要写对。升级前记得备份 /etc/config/passwall2,别的没什么坑。

对普通用户来说,最大的好处其实是——换主之后维护团队壮大了,commit 比之前还勤快。passwall/passwall2 这两个项目还能再用几年,放心。


本文基于 OpenWrt / LEDE 24.10 实操,理论上 21.02+ 都适用。文中所有命令都在我自己的旁路由(LEDE 24.10.0 / arm_cortex-a5_vfpv4 / 1GB RAM)上跑过一遍,没遇到问题。如果你用的是 snapshot 版本,注意 distro 路径要带具体版本号(packages-24.10 而不是 packages-24)。

截图来源:GitHub Openwrt-Passwall/openwrt-passwall + openwrt-passwall2 主仓库页面、passwall2.org 教程站、passwall issue #4271

发表评论