Files
tvbox_collect/_posts/2024-08-21-share-shellcrashadguardhome-mihomo-ruleset.md
T
2026-07-19 04:51:50 +00:00

25 KiB
Raw Blame History

title, description, date, categories, tags
title description date categories tags
分享 ShellCrash 搭载 mihomo 内核搭配 AdGuard Home 采用 ruleset 方案的一套配置 此配置搭载 mihomo 内核,采用 <code>RULE-SET</code> 规则搭配 .list 和 .mrs 规则集合文件 2024-08-21 18:23:54 +0800
分享配置
Router
Clash
mihomo
ShellCrash
AdGuard Home
ruleset
rule-set
分享
Router

声明 {: .prompt-warning }

  1. 此方案采用 ShellCrash 作为上游,AdGuard Home 作为下游的模式
  2. 请根据自身情况进行修改,适合自己的方案才是最好的方案,如无特殊需求,可以照搬
  3. 此方案中 ShellCrash 采用了绕过 CN_IP 的模式(仍与 AdGuard Home 配合完美)
  4. 此方案适用于 ShellCrash(以 ARM64 架构为例,且安装路径为 /data/ShellCrash{: .filepath}
  5. 此方案适用于 AdGuard Home(以 ARM64 架构为例,且安装路径为 /data/AdGuardHome{: .filepath}
  6. 此方案不建议启用 ShellCrash 配置脚本 → 2) 功能设置 → 3) 透明路由流量过滤 → 2) 过滤局域网设备,因不经过内核的设备在访问 漏网之鱼 域名时会遇到无法访问的情况
  7. 本人将路由器设置了每天早上 6 点重启,使得《》中设置的定时任务生效

一、 生成配置文件 .yaml 文件直链

具体方法此处不再赘述,请看《生成带有自定义策略组和规则的 mihomo 配置文件直链-ruleset 方案》,贴一下我使用的配置:

proxy-providers:
  🛫 机场订阅:
    type: http
    # 修改为你的 Clash 订阅链接
    url: "https://example.com/xxx/xxx&flag=clash"
    path: ./proxies/airport.yaml
    interval: 86400
    filter: "(?i)(🇭🇰|港|hk|hongkong|hong kong|🇹🇼|台|tw|taiwan|tai wan|🇯🇵|日|jp|japan|🇸🇬|新|sg|singapore|🇺🇸|美|us|unitedstates|united states)"
    health-check:
      enable: true
      url: https://www.gstatic.com/generate_204
      interval: 600

  🆓 免费订阅:
    type: http
    # 修改为你的 Clash 订阅链接
    url: "https://example.com/xxx/xxx&flag=clash"
    path: ./proxies/free.yaml
    interval: 86400
    health-check:
      enable: true
      url: https://www.gstatic.com/generate_204
      interval: 600

# 若没有单个出站代理节点,须删除所有 `🆚 vless 节点` 相关内容
proxies:
  - name: 🆚 vless 节点
    type: vless
    server: example.com
    port: 443
    uuid: {uuid}
    network: ws
    tls: true
    udp: false
    sni: example.com
    client-fingerprint: chrome
    ws-opts:
      path: "/?ed=2048"
      headers:
        host: example.com

proxy-groups:
  - {name: 节点选择, type: select, proxies: [香港节点, 台湾节点, 日本节点, 新加坡节点, 美国节点, 免费节点, 🆚 vless 节点], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/proxy.png"}
  - {name: 网络测试, type: select, proxies: [节点选择, 香港节点, 台湾节点, 日本节点, 新加坡节点, 美国节点, 免费节点, 🆚 vless 节点], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/networktest.png"}
  - {name: 游戏平台, type: select, proxies: [节点选择, 香港节点, 台湾节点, 日本节点, 新加坡节点, 美国节点, 🆚 vless 节点], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/games.png"}
  - {name: AI 平台, type: select, proxies: [节点选择, 香港节点, 台湾节点, 日本节点, 新加坡节点, 美国节点, 🆚 vless 节点], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/ai.png"}
  - {name: 游戏服务, type: select, proxies: [全球直连, 节点选择], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/games-cn.png"}
  - {name: 微软服务, type: select, proxies: [全球直连, 节点选择], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/microsoft-cn.png"}
  - {name: 谷歌服务, type: select, proxies: [全球直连, 节点选择], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/google-cn.png"}
  - {name: 苹果服务, type: select, proxies: [全球直连, 节点选择], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/apple-cn.png"}
  - {name: 国外域名, type: select, proxies: [节点选择, 香港节点, 台湾节点, 日本节点, 新加坡节点, 美国节点, 免费节点, 🆚 vless 节点], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/global.png"}
  - {name: 电报消息, type: select, proxies: [节点选择, 香港节点, 台湾节点, 日本节点, 新加坡节点, 美国节点, 免费节点, 🆚 vless 节点], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/telegram.png"}
  - {name: 私有网络, type: select, proxies: [全球直连], hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/private.png"}
  # 若机场的 UDP 质量不是很好,导致某游戏无法登录或进入房间,可以添加 `disable-udp: true` 配置项解决
  - {name: 漏网之鱼, type: select, proxies: [节点选择, 香港节点, 台湾节点, 日本节点, 新加坡节点, 美国节点, 免费节点, 🆚 vless 节点, 全球直连], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/match.png"}
  - {name: 全球直连, type: select, proxies: [DIRECT], hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/direct.png"}

  - {name: 香港节点, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇭🇰|港|hk|hongkong|hong kong)", icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/hongkong.png"}
  - {name: 台湾节点, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇹🇼|台|tw|taiwan|tai wan)", icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/taiwan.png"}
  - {name: 日本节点, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇯🇵|日|jp|japan)", icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/japan.png"}
  - {name: 新加坡节点, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇸🇬|新|sg|singapore)", icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/singapore.png"}
  - {name: 美国节点, type: url-test, tolerance: 100, use: [🛫 机场订阅], filter: "(?i)(🇺🇸|美|us|unitedstates|united states)", icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/unitedstates.png"}
  - {name: 免费节点, type: url-test, tolerance: 100, use: [🆓 免费订阅], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/free.png"}

rule-providers:
  fakeip-filter-lite:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/fakeip-filter-lite.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/fakeip-filter-lite.mrs"
    interval: 86400

  private:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/private.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/private.mrs"
    interval: 86400

  microsoft-cn:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/microsoft-cn.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/microsoft-cn.mrs"
    interval: 86400

  apple-cn:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/apple-cn.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/apple-cn.mrs"
    interval: 86400

  google-cn:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/google-cn.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/google-cn.mrs"
    interval: 86400

  games-cn:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/games-cn.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/games-cn.mrs"
    interval: 86400

  games:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/games.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/games.mrs"
    interval: 86400

  ai:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/ai.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/ai.mrs"
    interval: 86400

  networktest:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/networktest.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/networktest.mrs"
    interval: 86400

  proxy:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/proxy.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/proxy.mrs"
    interval: 86400

  cn:
    type: http
    behavior: domain
    format: mrs
    path: ./ruleset/cn.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/cn.mrs"
    interval: 86400

  privateip:
    type: http
    behavior: ipcidr
    format: mrs
    path: ./ruleset/privateip.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/privateip.mrs"
    interval: 86400

  cnip:
    type: http
    behavior: ipcidr
    format: mrs
    path: ./ruleset/cnip.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/cnip.mrs"
    interval: 86400

  telegramip:
    type: http
    behavior: ipcidr
    format: mrs
    path: ./ruleset/telegramip.mrs
    url: "https://github.com/DustinWin/ruleset_geodata/releases/download/mihomo-ruleset/telegramip.mrs"
    interval: 86400

rules:
  - RULE-SET,private,私有网络
  - RULE-SET,microsoft-cn,微软服务
  - RULE-SET,apple-cn,苹果服务
  - RULE-SET,google-cn,谷歌服务
  - RULE-SET,games-cn,游戏服务
  - RULE-SET,games,游戏平台
  - RULE-SET,ai,AI 平台
  - RULE-SET,networktest,网络测试
  - RULE-SET,proxy,国外域名
  - RULE-SET,privateip,私有网络,no-resolve
  - RULE-SET,cnip,全球直连
  - RULE-SET,telegramip,电报消息,no-resolve
  - MATCH,漏网之鱼

proxy-groups 私货 {: .prompt-tip }

注:

  • ① 本 proxy-groups 配置中,将不同的节点类型(如:ShadowsocksTrojan)分别配置 type: url-test 进行延迟测试,且配置 hidden: true 以简化 Dashboard 面板中的显示。再将延迟测试最低的策略组配置 type: load-balance 进行负载均衡供用户选择使用
  • ② 将不同的优选节点分别配置 type: fallback 进行故障转移,且配置 hidden: true 以简化 Dashboard 面板中的显示。再将故障转移后的策略组配置 type: url-test 进行延迟测试供用户选择使用
proxy-groups:
  - {name: 香港节点, type: load-balance, strategy: consistent-hashing, proxies: [香港-ss, 香港-trojan], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/hongkong.png"}
  - {name: 香港-ss, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)((🇭🇰|港|hk|hongkong|hong kong).*ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/shadowsocks.png"}
  - {name: 香港-trojan, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇭🇰|港|hk|hongkong|hong kong)", exclude-filter: "(?i)(ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/trojan.png"}
  - {name: 台湾节点, type: load-balance, strategy: consistent-hashing, proxies: [台湾-ss, 台湾-trojan], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/taiwan.png"}
  - {name: 台湾-ss, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)((🇹🇼|台|tw|taiwan|tai wan).*ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/shadowsocks.png"}
  - {name: 台湾-trojan, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇹🇼|台|tw|taiwan|tai wan)", exclude-filter: "(?i)(ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/trojan.png"}
  - {name: 日本节点, type: load-balance, strategy: consistent-hashing, proxies: [日本-ss, 日本-trojan], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/japan.png"}
  - {name: 日本-ss, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)((🇯🇵|日|jp|japan).*ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/shadowsocks.png"}
  - {name: 日本-trojan, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇯🇵|日|jp|japan)", exclude-filter: "(?i)(ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/trojan.png"}
  - {name: 新加坡节点, type: load-balance, strategy: consistent-hashing, proxies: [新加坡-ss, 新加坡-trojan], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/singapore.png"}
  - {name: 新加坡-ss, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)((🇸🇬|新|sg|singapore).*ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/shadowsocks.png"}
  - {name: 新加坡-trojan, type: url-test, tolerance: 50, use: [🛫 机场订阅], filter: "(?i)(🇸🇬|新|sg|singapore)", exclude-filter: "(?i)(ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/trojan.png"}
  - {name: 美国节点, type: load-balance, strategy: consistent-hashing, proxies: [美国-ss, 美国-trojan], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/unitedstates.png"}
  - {name: 美国-ss, type: url-test, tolerance: 100, use: [🛫 机场订阅], filter: "(?i)((🇺🇸|美|us|unitedstates|united states).*ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/shadowsocks.png"}
  - {name: 美国-trojan, type: url-test, tolerance: 100, use: [🛫 机场订阅], filter: "(?i)(🇺🇸|美|us|unitedstates|united states)", exclude-filter: "(?i)(ss)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/trojan.png"}
  - {name: 免费节点, type: url-test, tolerance: 100, proxies: [移动优选节点, CF 优选节点], icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/free.png"}
  - {name: 移动优选节点, type: fallback, use: [🆓 免费订阅], filter: "(?i)(cmcc)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/cmcc.png"}
  - {name: CF 优选节点, type: fallback, use: [🆓 免费订阅], filter: "(?i)(cfip)", hidden: true, icon: "https://github.com/DustinWin/ruleset_geodata/releases/download/icons/cfip.png"}

二、 导入 mihomo 内核CN_IP 文件

连接 SSH 后执行如下命令:

curl -sS -o /tmp/CrashCore.upx -L https://ghfast.top/https://github.com/DustinWin/proxy-tools/releases/download/mihomo/mihomo-meta-linux-arm64.upx
curl -sS -o $CRASHDIR/cn_ip.txt -L https://cdn.jsdelivr.net/gh/DustinWin/geoip@ips/cn_ipv4.txt
curl -sS -o $CRASHDIR/cn_ipv6.txt -L https://cdn.jsdelivr.net/gh/DustinWin/geoip@ips/cn_ipv6.txt
sc

此时脚本会自动“发现可用的内核文件”,选择 1 加载,后选择 3 Mihomo(Meta) 内核

三、 编辑 user.yaml 文件

连接 SSH 后执行命令 vi $CRASHDIR/yamls/user.yaml,按一下 Ins 键(Insert 键),粘贴如下内容:
注:

  • ① 由于 ShellCrash 采用的 DNS 模式为 mixShellCrash 传给 AdGuard Home 的国外域名对应 IP 为假 IP,会导致 AdGuard Home 检查更新和下载更新 DNS 黑名单时失败
  • dns.fake-ip-filter 中添加了 AdGuard Home 常用域名,包括:adguardteam.github.ioAdGuard Home 自带 DNS 黑名单下载域名)、adrules.top(常用广告拦截下载域名)、anti-ad.net(常用广告拦截下载域名)和 static.adtidy.orgAdGuard Home 检查更新域名),可使这些域名不走 fakeip
  • ③ 不推荐使用自带更新去更新,推荐《》中通过定时任务去自动更新(AdGuard Home 程序已被压缩,节省空间)
    编辑 user.yaml 文件
log-level: error
allow-lan: true
unified-delay: true
tcp-concurrent: true
profile: {store-selected: true, store-fake-ip: true}

hosts:
  dns.alidns.com: [223.5.5.5, 223.6.6.6, 2400:3200::1, 2400:3200:baba::1]
  doh.pub: [1.12.12.12, 120.53.53.53]

dns:
  enable: true
  prefer-h3: true
  ipv6: true
  listen: 0.0.0.0:1053
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.0/15
  fake-ip-range6: fc00::/16
  fake-ip-filter-mode: rule
  fake-ip-filter:
    - RULE-SET,fakeip-filter-lite,real-ip
    - RULE-SET,private,real-ip
    - RULE-SET,microsoft-cn,real-ip
    - RULE-SET,apple-cn,real-ip
    - RULE-SET,google-cn,real-ip
    - RULE-SET,games-cn,real-ip
    - RULE-SET,games,fake-ip
    - RULE-SET,ai,fake-ip
    - RULE-SET,proxy,fake-ip
    - RULE-SET,cn,real-ip
    - MATCH,real-ip
  nameserver:
    - quic://dns.alidns.com:853
    - https://doh.pub/dns-query
  nameserver-policy:
    'rule-set:private': [system]

按一下 Esc 键(退出键),输入英文冒号 :,继续输入 wq 并回车


DNS 私货 {: .prompt-tip }

注:

  • ① 本 dns 配置中,国内域名走国内 DNS 解析,国外域名走 fake-ip,未知域名也走 fake-ip,在匹配 RULE-SET:cn 规则时会由国外 DNS 解析且配置 ecs 提高了兼容性,解析出 IP 在国内则走 国内 IP 规则,否则走 漏网之鱼 规则(有效解决了“心理 DNS 泄露问题”,详见《搭载 mihomo 内核配置 DNS 不泄露教程-ruleset 方案》)
  • ② 推荐将 ecs 设置为当前宽带运营商分配的默认 DNS(可进入光猫或路由器拨号页面查看,或者前往公共 DNS 大全查询)的 IP 段,如默认 DNS 为 211.137.58.20,可设置为 211.137.58.0/24
hosts:
  dns.alidns.com: [223.5.5.5, 223.6.6.6, 2400:3200::1, 2400:3200:baba::1]
  doh.pub: [1.12.12.12, 120.53.53.53]
  dns.google: [8.8.8.8, 8.8.4.4, 2001:4860:4860::8888, 2001:4860:4860::8844]
  dns11.quad9.net: [9.9.9.11, 149.112.112.11, 2620:fe::11, 2620:fe::fe:11]

dns:
  enable: true
  ipv6: true
  listen: 0.0.0.0:1053
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.0/15
  fake-ip-range6: fc00::/16
  fake-ip-filter-mode: rule
  fake-ip-filter:
    - RULE-SET,fakeip-filter-lite,real-ip
    - RULE-SET,private,real-ip
    - RULE-SET,microsoft-cn,real-ip
    - RULE-SET,apple-cn,real-ip
    - RULE-SET,google-cn,real-ip
    - RULE-SET,games-cn,real-ip
    - RULE-SET,games,fake-ip
    - RULE-SET,ai,fake-ip
    - RULE-SET,proxy,fake-ip
    - RULE-SET,cn,real-ip
    - MATCH,real-ip
  respect-rules: true
  nameserver:
    # 推荐将 `ecs` 设置为当前宽带运营商分配的默认 DNS 的 IP 段
    - 'https://dns.google/dns-query#ecs=211.137.58.0/24&ecs-override=true'
    - 'quic://dns11.quad9.net:853#ecs=211.137.58.0/24&ecs-override=true'
  proxy-server-nameserver:
    - quic://dns.alidns.com:853
    - https://doh.pub/dns-query
  direct-nameserver:
    - quic://dns.alidns.com:853
    - https://doh.pub/dns-query
  direct-nameserver-follow-policy: true
  nameserver-policy:
    'rule-set:private': [system]
    'rule-set:fakeip-filter-lite,microsoft-cn,apple-cn,google-cn,games-cn,cn': [quic://dns.alidns.com:853, https://doh.pub/dns-query]

四、 添加定时任务

  1. 连接 SSH 后执行命令 vi $CRASHDIR/configs/task/task.user,按一下 Ins 键(Insert 键),粘贴如下内容:
201#curl -sS -o $CRASHDIR/cn_ip.txt -L https://ghfast.top/https://github.com/DustinWin/geoip/releases/download/ips/cn_ipv4.txt && curl -sS -o $CRASHDIR/cn_ipv6.txt -L https://ghfast.top/https://github.com/DustinWin/geoip/releases/download/ips/cn_ipv6.txt >/dev/null 2>&1#更新CN_IP文件
202#curl -sS -o /data/AdGuardHome/AdGuardHome -L https://ghfast.top/https://github.com/DustinWin/proxy-tools/releases/download/AdGuardHome/AdGuardHome_beta_linux_arm64 >/dev/null 2>&1#更新AdGuardHome
  1. 按一下 Esc 键(退出键),输入英文冒号 :,继续输入 wq 并回车
  2. 执行 sc,进入 ShellCrash 配置脚本 → 5) 自动任务 → 1) 添加自动任务,可以看到末尾就有添加的定时任务,输入对应的数字并回车后可设置执行条件
    添加定时任务

五、 ShellCrash 设置

  1. 设置可参考《ShellCrash 搭载 mihomo 内核的配置-ruleset 方案/设置部分》,此处只列举配置的不同之处

  2. 进入 ShellCrash 配置脚本 → 2) 功能设置 → 2) DNS 设置 → 7) DNS 劫持端口,设置为“5353”(须完成《》后才可设置)

  3. 进入 2) DNS 设置 → 9) 修改 DNS 服务器,设置如下:
    ShellCrash 设置 2

  4. 进入 2) 功能设置 → 6) 自定义端口及密钥 → 5) 修改面板访问端口,修改为 9090

六、 安装 AdGuard Home

连接 SSH 后执行如下命令:

mkdir -p /data/AdGuardHome
curl -sS -o /data/AdGuardHome/AdGuardHome -L https://ghfast.top/https://github.com/DustinWin/proxy-tools/releases/download/AdGuardHome/AdGuardHome_beta_linux_arm64
chmod +x /data/AdGuardHome/AdGuardHome
cat <<'EOF' > /data/AdGuardHome/AdGuardHome.sh
#!/bin/sh /etc/rc.common

START=95
STOP=01
USE_PROCD=1

WORK_DIR="/data/AdGuardHome"
CONFIG_FILE="$WORK_DIR/AdGuardHome.yaml"

start_service() {
    echo "AdGuard Home 正在启动..."
    procd_open_instance
    procd_set_param command "$WORK_DIR/AdGuardHome" -s run
    procd_append_param command -c "$CONFIG_FILE"
    procd_append_param command -w "$WORK_DIR"
    procd_set_param pidfile /var/run/AdGuardHome.pid
    procd_close_instance
    echo "AdGuard Home 启动成功!"
}

stop_service() {
    echo "AdGuard Home 正在停止..."
    sleep 3
    echo "AdGuard Home 停止成功!"
}
EOF
cp -f /data/AdGuardHome/AdGuardHome.sh /etc/init.d/AdGuardHome
chmod +x /etc/init.d/AdGuardHome && /etc/init.d/AdGuardHome start
iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
cat <<EOF >> /data/auto_ssh/auto_ssh.sh
sleep 20s
cp -f /data/AdGuardHome/AdGuardHome.sh /etc/init.d/AdGuardHome
chmod +x /etc/init.d/AdGuardHome && /etc/init.d/AdGuardHome start
iptables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
ip6tables -t nat -A PREROUTING -p tcp --dport 53 -j REDIRECT --to-ports 5353
ip6tables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 5353
EOF

七、 AdGuard Home 设置

设置可参考《全网最详细的解锁 SSH ShellCrash 搭载 mihomo 内核搭配 AdGuard Home 安装和配置教程/AdGuard Home 配置

八、 访问面板

  1. 打开 zashboard 在线面板地址 http://board.zash.run.place 后,直接在 Clash API 标签里将“主机”修改为 192.168.31.1,点击“提交”即可访问 Dashboard 面板
  2. 打开 http://miwifi.com:3000 即可访问 AdGuard Home 面板

推荐设置 {: .prompt-tip } 进入 zashboard → 设置 → 后端设置 → 修改后端配置,可设置“标签 (可选)”来快速识别不同设备