手动维护的 iOS Anywhere Rules 屏蔽规则 / 去开屏广告模块
小火箭免费替代品:Anywhere 屏蔽开屏广告规则
手动维护的 iOS Anywhere Rules 屏蔽规则 / 去开屏广告模块
SR_AppAd for Anywhere 使用说明
本规则由小火箭 sr_app_ad.conf 转换而来,适配 Anywhere。小火箭 Shadowrocket 的功能丰富,支持各种冷门协议;Anywhere ,完全由 Swift 从零编写,无 Electron、WebView 或第三方框架封装,仅支持基础功能和主流协议,路由规则、MITM、模块等可满足大部分人需求。
1. 文件说明
| 文件 | 类型 | 内容 | 建议策略 |
|---|---|---|---|
SR_AppAd.amod | 模块 | 内含两部分: ① MITM 重写规则(处理开屏、信息流等 URL 级广告) ② 广告域名 Reject 规则 | MITM 部分自动生效;Reject 部分自动设为 REJECT |
SR_AppAd_Direct.arrs | 路由规则集 | 小火箭中标记为 DIRECT 的规则,用于避免误杀、保证国内服务直连 | DIRECT |
SR_AppAd_Proxy.arrs | 路由规则集 | 小火箭中标记为 PROXY 的规则 | 选择你的代理策略 |
2. 导入步骤
- 导入模块 SR_AppAd.amod:复制链接在 Anywhere 的模块导入入口使用订阅模块导入。
- 导入路由规则集 SR_AppAd_Direct.arrs 和 SR_AppAd_Proxy.arrs:复制链接在路由页面选择使用订阅规则集导入。
- 导入秋风广告规则 AWAvenue:点击 Ads_AWAvenue,点击链接会先打开一个 HTTPS 跳转页,再通过 anywhere://add-rule-set deep link 唤起 Anywhere。
- 调整规则集顺序:把 Reject 放在 Direct/Proxy 上面。
- 其他可选规则集:访问 Anywhere Rules,这个仓库的规则集可按需导入。
3. 开启 MITM
MITM 是让 Anywhere 解密并改写 HTTPS 请求的功能,只有开启后,模块里的 URL 重写规则才会生效。仅靠域名 Reject 无法拦截这些广告,因为它们和正常内容在同一个域名下。
3.1 安装并信任根证书(HTTPS 必需)
- 在 Anywhere 的 MITM 设置里生成并导出根证书(CA),安装到系统;前往手机的设置,→ 看到已下载描述文件 → 安装 → 输入手机的解锁密码 → 安装
- 在 iPhone 上打开 设置 → 通用 → 关于本机 → 证书信任设置,打开 Anywhere 根证书的完全信任开关。
没有信任证书时,HTTPS 拦截会失败,对应 App 可能出现无法联网。纯 HTTP 请求不涉及证书,不需要信任。
3.2 开启开关
- 打开 MITM 总开关。
- 确认模块里的 MITM 规则集处于 启用 状态(每个规则集有单独开关,关闭的规则集不生效)。
3.3 已知限制
- 做了证书固定的 App 无法被拦截,这是正常现象,没有解决办法。
- 开启 MITM 后,被拦截主机的流量会经过解密再加密,会略增加耗电和延迟,请只对需要的规则集保持启用。
- 请只在你有权检查的流量上使用 MITM。
4. 优先级说明
Anywhere 的匹配优先级是固定的,从高到低:
- ADBlock 内置规则
- 内置服务规则集
- 用户自定义规则集(本规则属于这一层)
- Default
- Country Bypass(绕过中国大陆)
要点:
- Country Bypass 优先级最低,不会覆盖已设为
REJECT的自定义规则集。 - 如果你给某个内置服务(如Google、telegram、YouTube、TikTok)指定了明确的 DIRECT 或 PROXY,它会先于本规则命中,导致对应的广告域名没被拦截。解决办法是把这些内置服务改回 Default。
- 同一层内,更长(更具体)的域名后缀优先;同样的后缀则列表靠上的优先。
- CIDR(IP)规则主要用于直接用 IP 的连接。开启 Prevent DNS Leak 后,域名解析后再匹配 IP 的兜底会被关闭。
- 使用 HTTPDNS 或自带 DoH 的 App 不经过 Anywhere 的 DNS,域名级拦截对它们可能失效。
6. 更新规则
上游 sr_app_ad.conf 会更新广告域名和 URL 重写。更新方式:
- 如果是订阅导入的,刷新订阅即可(策略保持你本地设置不变)。
- 如果发现某个 App 的开屏又出现了,通常是接口路径改了,在请求日志里找到对应的请求 URL,补充到 MITM 规则里。
7. 转换限制
以下内容没有转换,因为 Anywhere 路由规则集不支持:
- 小火箭的
GEOIP、FINAL、URL-REGEX路由规则,其中 5 条URL-REGEX已改写为 MITM 规则。 [Host]段(只有localhost = 127.0.0.1,对去广告无影响)。[MITM]段的ca-p12(小火箭自己的证书,Anywhere 使用自己生成的根证书)。- 小火箭的
REJECT-DROP、REJECT-DICT、REJECT-IMG在路由规则里统一成了REJECT;在 MITM 里REJECT和REJECT-DICT统一返回{},图片返回 1×1 透明 gif,视频返回默认二进制内容。
This post is licensed under CC BY 4.0 by the author.
