Repository navigation
🚀 MSM beta-2.1.9(Beta 版)
Pre-release
Pre-release
·
10 commits
to main
since this release
✨ 本次更新
🎉 本次亮点(Highlights)
- 代理 IPv6 控制更清晰:代理核心 IPv6 支持跟随全局开关或单独关闭,宿主机网络、MosDNS 与代理核心分别使用对应设置,减少配置互相覆盖。
- 受管反代支持 HTTP→HTTPS 跳转:可为具体域名配置独立 HTTP 监听端口,并生成保留路径和查询参数的 308 跳转;证书、端口和路由条件不满足时会拒绝应用。
- 新增访问诊断工作区:可从 MSM 网络命名空间对比 DNS 解析与目标访问结果,并根据诊断结果提供后续处理入口,帮助定位解析、网络或代理链路问题。
- 组件安装与更新增加兼容性保护:MSM、Clash、MosDNS、Sing-Box、Cloudflare Tunnel 及网络组件在识别、安装或更新前校验系统与 CPU 架构,组件包也采用验证后激活的流程。
- 操作结果反馈更可靠:服务启停、核心切换和组件更新会区分处理中、需要关注及结果未知等状态,网络请求取消或无法确认结果时不再直接显示为普通失败或成功。
🆕 新增功能(Added)
- 访问诊断:系统页新增访问诊断入口,可填写域名和客户端地址,查看 DNS、TCP/HTTPS 访问及代理相关结果,并根据结果跳转到相关处理页面;入口仅对管理员和操作员显示。
- 受管反代 HTTP→HTTPS 跳转:反代路由新增 HTTP 跳转端口配置,启用后为具体域名生成指向 HTTPS 公网端口的 308 跳转,并保留原始路径与查询参数。
- 反代应用适配预设:反代配置提供应用适配预设,可将对应应用所需的配置值应用到当前路由。
- 功能与资源搜索:登录后可通过功能搜索查找页面和设置,并支持资源直达、搜索结果高亮与收藏;资源搜索默认开启,同时遵守用户关闭设置及账号、模块权限。
- 设置页分区索引:设置页增加分区搜索与定位入口,可跳转到系统偏好、API Token、安装配置、IPv6/FakeIP 和网关回程等区域。
- 客户端地址与诊断联动:MosDNS 客户端页面支持展示多个客户端地址;连接列表可按客户端地址筛选,并从相关页面进入访问诊断。
- 网络能力关联入口:Cloudflare Tunnel 和 Networking 页面增加相关网络访问入口,便于在相关网络能力之间切换查看。
- 代理配置应用状态:代理配置面板显示当前核心、保存或应用状态以及未保存修改状态;编辑配置后离开页面时会提示尚未保存的内容。
- 移动端工具入口:移动端工具区域提供许可证查看和更新检查入口,并根据当前账号权限显示对应操作。
✨ 功能增强(Changed)
- 代理核心 IPv6 与全局 IPv6 解耦:
proxy_ipv6支持空值、开启和关闭三种语义;空值跟随全局enable_ipv6,关闭时仅限制代理核心使用 IPv4。MosDNS、宿主机 IPv6 和 EasyTier 仍遵循全局 IPv6 设置。 - IPv6 网络规则按实际用途应用设置:宿主机接口、RA 和转发使用宿主机 IPv6 开关;代理核心接管、策略路由和 FakeIP IPv6 路由使用有效的代理核心 IPv6 设置。
- 配置文件同步不再固化跟随状态:Clash 配置同步会区分配置文件中的有效 IPv6 值与当前跟随状态,设置页保存未变化的代理 IPv6 时也不会用过期页面值覆盖已有配置。
- 旧备份兼容代理 IPv6 设置:恢复缺少
proxy_ipv6字段的旧备份时,根据原有全局 IPv6 设置推导代理核心行为,保留历史配置的跟随语义。 - Sing-Box 配置同步更完整:更新 DNS、Provider、detour、TUN 路由和 IPv6 配置时保留原生字段及不相关的排除项;配置校验或后续写入失败时,会按流程恢复相关运行态与持久化状态。
- 代理核心切换增加目标校验:更新通用配置或规则配置时支持携带预期核心标识;如果请求期间目标核心已变化,服务端会拒绝不匹配的写入,避免配置应用到错误核心。
- 组件更新任务避免旧结果覆盖新任务:组件更新增加任务代次、当前任务和轮询状态判断;相同组件已有任务运行时不会重复发起,旧轮询也不会覆盖较新的结果。
- Cloudflare Tunnel 启动恢复按边缘连接状态判断:Tunnel 恢复流程独立等待边缘连接状态;仪表盘新增
STARTING状态,诊断信息可区分进程运行但尚未建立边缘连接的情况。 - 受管反代配置能力扩展:反代请求支持上游主机模式、流式超时、连接关闭延迟及 HTTP 跳转端口等配置;创建和更新前会校验 TLS 证书选择,HTTPS 路由缺少可用证书时不会继续应用。
- 日志查询与下载覆盖 Edge:日志候选文件支持由服务补充并去重;“全部日志”下载范围包含 Edge、MosDNS、Sing-Box、Clash 和 WireGuard,并继续处理备份日志选项。
- MosDNS 客户端策略写入更加一致:客户端地址清单写入增加清洗、校验、串行化和失败恢复处理,减少策略刷新与编辑同时发生时的相互覆盖;客户端目录页面显示最近扫描时间。
- 网络服务状态展示更准确:网络服务区分未安装、未配置、状态未知、需要授权和已停止等情况;缺少运行时组件时提供安装或配置方向,而不是统一显示为停止。
- 资源列表查询状态统一:Docker 容器和 DDNS 页面使用统一的资源查询过滤逻辑;DDNS 更换查询条件时会回到第一页,避免沿用旧查询条件的页码。
- 登录后返回原目标页面:从受保护页面进入普通登录或 Pro 登录后,登录成功会返回原目标位置,而不是固定回到首页。
- 移动端与抽屉交互更适合触控:导航、用户菜单及快捷操作按钮使用更大的触控区域;抽屉关闭按钮不可用时会选择其他可用焦点目标,并避免错误触发关闭操作。
- 系统移除范围展示更明确:设置页会展示重置或卸载涉及的配置、数据和网络恢复范围;该展示不改变既有执行语义。
⚡ 性能优化
- 受管 Edge 运行时使用受控内存预算:Edge 运行时会结合应用已计算的内存预算设置管理上限,避免运行时配置脱离应用预算;代码证据未提供具体性能提升数值。
🐛 问题修复
- 修复受管回家访问的路由处理:保留全局、订阅和普通节点的网卡绑定,仅为受管回家入站生成对应的系统路由出口,并将内部出口与普通节点编辑、配额和移动端导出路径隔离。
- 修复核心二进制可用性误判:Clash、MosDNS 及相关组件在读取版本、判断安装状态和恢复时增加可执行文件兼容性检查,无法在当前系统或 CPU 架构运行的文件不会继续被当作可用组件。
- 修复组件安装失败后的替换时机:Cloudflare Tunnel 等组件先在临时位置完成文件和版本验证,再提升为当前安装;验证失败时不会直接替换已有版本。
- 修复网络组件安装包识别:EasyTier 和 Tailscale 的安装与版本判断会校验完整组件包及配套文件,减少仅存在单个可执行文件时的状态误判。
- 修复 Sing-Box 版本后缀识别:版本后缀包含更复杂的字符组合时仍可参与版本解析,避免版本比较出现异常。
- 修复 MosDNS 客户端策略并发覆盖:客户端策略基线、当前地址清单和写入操作增加并发保护,降低刷新与编辑同时发生时的覆盖风险。
- 修复操作结果误判:请求取消、服务操作结果未知及核心切换超时等情况改为显示对应状态,不再直接归类为普通失败或成功。
- 修复反代证书状态展示:反代路由未选择受管证书时显示为缺少证书,不再显示为自动 HTTPS。
- 修复网络诊断地址过滤复用:DNS 解析结果过滤逻辑可按诊断场景复用,使不同访问探测流程使用一致的地址筛选规则。
🛡️ 安全加固
- 反代写入增加预期核心校验:服务端在收到
X-MSM-Expected-Proxy-Core时校验请求目标核心,并在目标发生变化时拒绝写入,降低核心切换竞态下误修改其他核心配置的风险。 - 反代 TLS 配置增加应用前校验:创建或更新 HTTPS 反代前校验证书选择、域名类型、监听端口和路由冲突条件,条件不满足时不应用配置。
⚠️ 兼容性变更(Deprecated)
- 代理 IPv6 配置改为三态语义:
proxy_ipv6支持true、false和null;null表示跟随全局 IPv6。旧配置或旧备份缺少该字段时,会按原有全局开关推导。 - HTTP 跳转必须满足启用条件:受管反代 HTTP→HTTPS 跳转要求启用 TLS、使用不同的 HTTP 与 HTTPS 监听端口、绑定具体域名,并具备已签发或导入的可用证书;通配符域名、监听冲突或路由冲突会被拒绝。
- 代理配置接口支持预期核心请求头:更新通用配置或规则配置时可携带
X-MSM-Expected-Proxy-Core;调用方如需避免核心切换期间的竞态,应传递当前预期核心标识。 - 安装与更新增加架构兼容性检查:不兼容当前系统或 CPU 架构的 MSM、Clash、MosDNS、Sing-Box、Cloudflare Tunnel 或网络组件二进制,会在安装、更新或识别阶段被拒绝。
📌 升级提醒
- 确认代理 IPv6 组合设置:升级后请检查“全局 IPv6”和“代理核心 IPv6”的组合是否符合预期;如需让代理核心始终使用 IPv4,请单独关闭代理核心 IPv6。
- 配置 HTTP 跳转前准备证书和端口:启用受管反代 HTTP→HTTPS 跳转前,请确认路由已配置可用的已签发或导入证书,并确保 HTTP 与 HTTPS 使用不同监听端口。
- 关注组件架构提示:不兼容的组件会在激活前被拒绝;通过兼容性检查只表示候选文件满足识别条件,不代表组件服务已经成功运行。
📋 构建信息
| 项目 | 内容 |
|---|---|
| 版本号 | beta-2.1.9 |
| 发布通道 | beta |
| 源仓库 | msm9527/msm |
| 构建分支 | dev 🌿 |
| 源提交 | 5ae70d7 |
| 构建时间 | 2026-11-02 09:26:47 CST ⏰ |
🎯 最新提交详情
优化受管反代与日志能力并升级版本 / Optimize managed edge and logging, bump version
- 📅 时间: 2026-11-02 09:20:00 CST
- 🔗 链接: https://github.com/msm9527/msm/commit/5ae70d7c0ff852f7de9de5556ea023ffc0571c57
💾 下载安装
🖥️ 命令行版本(CLI)
Linux 平台
| 架构 | 文件 | 说明 |
|---|---|---|
| amd64 | msm-beta-2.1.9-linux-amd64.tar.gz |
标准版本(推荐) |
| amd64-v3 | msm-beta-2.1.9-linux-amd64-v3.tar.gz |
优化版(需 AVX2) |
| amd64-musl | msm-beta-2.1.9-linux-amd64-musl.tar.gz |
Alpine Linux |
| amd64-musl-v3 | msm-beta-2.1.9-linux-amd64-musl-v3.tar.gz |
Alpine 优化版 |
| arm64 | msm-beta-2.1.9-linux-arm64.tar.gz |
ARM 64位 |
| arm64-musl | msm-beta-2.1.9-linux-arm64-musl.tar.gz |
ARM Alpine |
| armv7 | msm-beta-2.1.9-linux-armv7.tar.gz |
ARM 32位 (v7) |
| armv6 | msm-beta-2.1.9-linux-armv6.tar.gz |
ARM 32位 (v6) |
💡 提示: amd64-v3 版本针对较新的 CPU 进行了优化(需要支持 AVX、AVX2 等指令集),性能更好但兼容性较低。如果不确定,请使用标准的 amd64 版本。
📡 OpenWrt 原生安装包(IPK / APK + LuCI)
OpenWrt 24.10 及以前使用 IPK(opkg),25.12 及以后使用 APK(apk v3)。选择与设备包架构匹配的 msm 包,再安装同版本 luci-app-msm 插件。
下载 OpenWrt 软件包(x86_64 / ARM64 / ARMv7 / ARMv6)
🧩 派网应用版本(APX)
PanaBit / 派网
| 架构 | 文件 | 说明 |
|---|---|---|
| amd64 | msm-beta-2.1.9-linux-amd64-panabit.apx |
派网 x86_64 安装包 |
| arm64 | msm-beta-2.1.9-linux-arm64-panabit.apx |
派网 ARM64 安装包 |
说明:
.apx安装后会在派网页面中提供 MSM 控制入口- 实际管理界面由派网入口页跳转到 MSM 自身 Web 控制台
- 如果派网设备已有服务占用目标端口,请先处理端口冲突
macOS 平台
| 架构 | 文件 | 说明 |
|---|---|---|
| Intel | msm-beta-2.1.9-darwin-amd64.tar.gz |
Intel 芯片 Mac |
| Apple Silicon | msm-beta-2.1.9-darwin-arm64.tar.gz |
M1/M2/M3 芯片 |
🖼️ 桌面应用版本(Desktop)
macOS 桌面应用
| 架构 | 文件 | 说明 |
|---|---|---|
| Intel | msm-desktop-beta-2.1.9-darwin-amd64.dmg |
Intel 芯片 Mac |
| Apple Silicon | msm-desktop-beta-2.1.9-darwin-arm64.dmg |
M1/M2/M3 芯片 |
安装步骤:
- 下载对应架构的 DMG 文件
- 双击 DMG 文件,将应用拖入 Applications 文件夹
- 首次打开时,如果遇到"无法验证开发者"提示:
- 打开"系统设置" → "隐私与安全性"
- 点击"仍要打开"按钮
- 由于应用未经过 Apple 公证,macOS 可能拦截首次打开,或提示"文件已损坏/无法打开"。可执行以下命令解除隔离属性:
- /usr/bin/xattr -cr "/Applications/msm-desktop.app"
- 该命令仅用于处理 Gatekeeper/隔离属性拦截;发布流程已校验包内后端签名和可执行性。如果执行后仍无法安装服务,请下载最新版本并反馈错误日志。
🚀 快速安装
OpenWrt 请使用上方的原生软件包,按 OpenWrt 安装指南 操作。
一键安装脚本(Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/msm9527/msm-wiki/main/install_beta.sh | sudo bash🔐 完整性校验
- 校验清单:
SHA256SUMS - CLI 发布包使用加固版构建,启动时会校验内嵌官方 SHA-256;若二进制被篡改会拒绝运行
手动安装(以 Linux amd64 为例)
# 下载
wget https://github.com/msm9527/msm-wiki/releases/download/beta-2.1.9/msm-beta-2.1.9-linux-amd64.tar.gz
# 解压
tar -xzf msm-beta-2.1.9-linux-amd64.tar.gz
# 安装
sudo mv msm /usr/local/bin/msm
sudo chmod +x /usr/local/bin/msm
# 验证
msm --versionDocker 安装
# 拉取镜像
docker pull msmbox/msm:beta-2.1.9
# 运行容器
docker run -d \
--name msm \
-p 7777:7777 \
-v /opt/msm:/opt/msm \
msmbox/msm:beta-2.1.9⚖️ 使用与合规
MSM 是用于管理用户自有或已获授权设备的自托管管理平台,不提供代理节点、订阅或违法内容。请勿用于未授权访问、侵权或其他违法活动。