docs+cleanup: mihomo 幽灵引用清理(CLAUDE.md 重写 frp 段/删过时脚本); 设计文档补 2026-07-15 落地修正(锚点迁 ali/家内DNS改DNS Server/smartRoute 注意)
This commit is contained in:
@@ -30,15 +30,15 @@ docker/
|
||||
│ ├── .env.example # 复制为 .env 填入真实 token
|
||||
│ └── runner/
|
||||
│ └── config.yaml # act-runner 配置
|
||||
└── proxy/
|
||||
├── docker-compose.yml # mihomo 容器
|
||||
├── mihomo/
|
||||
│ ├── config.yaml # 透明代理规则(uuid 用 <VLESS_UUID> 占位)
|
||||
│ └── .env.example # 复制为 .env 填入真实 UUID
|
||||
└── dnsmasq/
|
||||
└── dnsmasq.conf # 预备 DHCP 配置(暂未启用)
|
||||
├── frp/
|
||||
│ ├── docker-compose.yml # 历史遗留(实际部署走二进制+systemd,见 scripts/)
|
||||
│ └── frpc.toml.example # frpc 配置模板(token 占位,真值在 Bitwarden)
|
||||
└── derp/ # Tailscale 自建 DERP(可选,未部署)
|
||||
```
|
||||
|
||||
> mihomo 透明代理 + dnsmasq 已于 2026-07-05 下线删除(配置见 git 历史 `docker/proxy/`)。
|
||||
> ⚠️ 若 Windows(192.168.3.88)网关/DNS 仍指向 NAS,需改回路由器,否则断网。
|
||||
|
||||
NAS 上实际路径:`/volume1/docker/<服务名>/`,与仓库 `docker/` 目录一一对应。
|
||||
|
||||
## Docker 服务
|
||||
@@ -65,46 +65,20 @@ NAS 上实际路径:`/volume1/docker/<服务名>/`,与仓库 `docker/` 目
|
||||
ssh nas "tail -f /volume1/docker/forgejo/data/gitea/log/gitea.log"
|
||||
```
|
||||
|
||||
### mihomo(透明代理)
|
||||
### frp 内网穿透(frpc,systemd 常驻)
|
||||
|
||||
局域网透明代理网关,Windows 设备(192.168.3.88)以 NAS 为默认网关。
|
||||
在外经 `nas/git/win.yanmeiai.com` 访问家里(frps 锚点在 ali 北京,方案见 `docs/remote-access-frp.html`):
|
||||
|
||||
**架构:**
|
||||
```
|
||||
Windows (192.168.3.88)
|
||||
└─ 网关 = 192.168.3.200,DNS = 192.168.3.200
|
||||
|
||||
NAS mihomo (TUN 模式, Meta 接口)
|
||||
├─ 国内流量 → DIRECT(GEOSITE/GEOIP CN 匹配)
|
||||
└─ 国外流量 → ec2-sg(新加坡 AWS,VLESS + Reality)
|
||||
```
|
||||
|
||||
**关键配置:**
|
||||
- 配置文件:`/volume1/docker/proxy/mihomo/config.yaml`
|
||||
- DNS:端口 53,fake-ip 模式,范围 198.18.0.0/15,`fake-ip-persist: true`
|
||||
- 混合代理端口:7890(HTTP/SOCKS5,局域网可用)
|
||||
- 管理 API:`http://192.168.3.200:9090`
|
||||
- 代理节点:VLESS + Reality(**不使用** `flow: xtls-rprx-vision`,客户端和服务端均已移除)
|
||||
- **frpc 二进制** `/usr/local/bin/frpc`,配置 `/volume1/docker/frp/frpc.toml`(root:600,含 token 不入 git,模板见 `docker/frp/frpc.toml.example`)
|
||||
- systemd 服务 `frpc.service`(Restart=always + MemoryLimit=64M);转发:git SSH/Web、DSM 5001、NAS SSH→10022、Windows RDP 3389 / SSH→10023
|
||||
- 一键部署/重装:Mac 上跑 `bash scripts/setup-frp-remote.sh`(自动从 Bitwarden 取 token、代下载二进制、经 ssh 推送执行)
|
||||
|
||||
```bash
|
||||
# 热重载配置(不重启容器)
|
||||
ssh nas "curl -s -X PUT 'http://127.0.0.1:9090/configs?force=true' \
|
||||
-H 'Content-Type: application/json' \
|
||||
-d '{\"path\":\"/root/.config/mihomo/config.yaml\"}'"
|
||||
|
||||
# 测试代理节点
|
||||
ssh nas "curl -s 'http://127.0.0.1:9090/proxies/ec2-sg/delay?timeout=5000&url=https://www.cloudflare.com/cdn-cgi/trace'"
|
||||
|
||||
# 测试出口 IP
|
||||
ssh nas "curl -s --max-time 10 --proxy 'socks5h://127.0.0.1:7890' https://ifconfig.me"
|
||||
|
||||
# 查看实时日志
|
||||
ssh nas "curl -s http://127.0.0.1:9090/logs -N --max-time 10"
|
||||
# 查看 frpc 状态与日志(NAS 上)
|
||||
sudo systemctl status frpc
|
||||
sudo journalctl -u frpc -n 20 --no-pager
|
||||
```
|
||||
|
||||
**dnsmasq(预备,未启用):**
|
||||
配置文件已就绪(`docker/proxy/dnsmasq/dnsmasq.conf`),待未来启用 DHCP 自动分发时使用。启用前需将 mihomo DNS 端口从 53 改为 1053,并将 dnsmasq 加入 docker-compose.yml。
|
||||
|
||||
### jiu-db 自动备份
|
||||
|
||||
每天 02:00(UTC+8)自动备份 jiu 项目 PostgreSQL,存至 `/volume1/docker/backups/jiu-db/`,格式 `jiu_db_YYYYMMDD_HHmmss.sql.gz`,保留约 16 天。
|
||||
@@ -118,18 +92,17 @@ ssh nas "ls -lh /volume1/docker/backups/jiu-db/"
|
||||
| 端口 | 服务 |
|
||||
|------|------|
|
||||
| 22 | SSH |
|
||||
| 53 | mihomo DNS(fake-ip) |
|
||||
| 80 / 443 | Synology nginx(反代 + DSM 重定向) |
|
||||
| 2222 | Forgejo SSH |
|
||||
| 3000 | Forgejo HTTP |
|
||||
| 5000 / 5001 | DSM Web UI(HTTP / HTTPS) |
|
||||
| 5432 | PostgreSQL(localhost only) |
|
||||
| 6690 | Synology Drive |
|
||||
| 7890 | mihomo 混合代理(HTTP/SOCKS5) |
|
||||
| 9090 | mihomo 管理 API |
|
||||
| 41641/udp | Tailscale WireGuard |
|
||||
| 445 / 139 | SMB 文件共享 |
|
||||
|
||||
(frpc 无入站监听——只出站长连接到 ali:7000)
|
||||
|
||||
## Synology 反向代理
|
||||
|
||||
通过 DSM 内置 nginx 管理:**Control Panel → Login Portal → Advanced → 反向代理服务器**
|
||||
|
||||
Reference in New Issue
Block a user