commit 762b26b701dce3c51d17e74f032d69148aa01f8b Author: Tyrone CT Date: Mon Apr 20 10:28:05 2026 +0800 初始提交:FRP内网穿透安装配置文档及配置文件备份 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b472a2b --- /dev/null +++ b/.gitignore @@ -0,0 +1,11 @@ +# Git +.git + +# OS +Thumbs.db +Desktop.ini +.DS_Store + +# Editor +.vscode/ +.idea/ diff --git a/Config_Toml/AsusPCConfig/frpc.toml b/Config_Toml/AsusPCConfig/frpc.toml new file mode 100644 index 0000000..2c0f94e --- /dev/null +++ b/Config_Toml/AsusPCConfig/frpc.toml @@ -0,0 +1,4 @@ +serverAddr = "www.orpaon.com" +serverPort = 7000 +auth.token = "MyFrp@2026!SecRet#3102105231" + diff --git a/Config_Toml/NasConfig/frpc.toml b/Config_Toml/NasConfig/frpc.toml new file mode 100644 index 0000000..7c0fadb --- /dev/null +++ b/Config_Toml/NasConfig/frpc.toml @@ -0,0 +1,27 @@ +serverAddr = "www.orpaon.com" +serverPort = 7000 +auth.token = "MyFrp@2026!SecRet#3102105231" + +# 群晖 DSM 管理页面代理 +[[proxies]] +name = "synology-dsm" +type = "tcp" +localIP = "127.0.0.1" +localPort = 5000 +remotePort = 7001 + +# 群晖 WebDAV 文件访问(HTTP) +[[proxies]] +name = "synology-webdav" +type = "tcp" +localIP = "127.0.0.1" +localPort = 5005 +remotePort = 7003 + +# 群晖 Gitea 代码仓库 +[[proxies]] +name = "synology-gitea" +type = "tcp" +localIP = "192.168.0.130" +localPort = 3000 +remotePort = 7004 \ No newline at end of file diff --git a/Config_Toml/frps.service b/Config_Toml/frps.service new file mode 100644 index 0000000..fbb9922 --- /dev/null +++ b/Config_Toml/frps.service @@ -0,0 +1,13 @@ +[Unit] +Description=FRP Server Service +After=network.target + +[Service] +Type=simple +ExecStart=/opt/frp/frp-server/frps -c /opt/frp/frp-server/frps.toml +Restart=on-failure +RestartSec=5s +LimitNOFILE=1048576 + +[Install] +WantedBy=multi-user.target diff --git a/Config_Toml/frps.toml b/Config_Toml/frps.toml new file mode 100644 index 0000000..a6e9268 --- /dev/null +++ b/Config_Toml/frps.toml @@ -0,0 +1,15 @@ +bindPort = 7000 +auth.token = "MyFrp@2026!SecRet#3102105231" + +webServer.addr = "0.0.0.0" +webServer.port = 7500 +webServer.user = "admin" +webServer.password = "MyFrp@3102105231" + +log.to = "/var/log/frps.log" +log.level = "info" +log.maxDays = 7 + +allowPorts = [ + { start = 7001, end = 7020 }, +] diff --git a/FRP内网穿透安装配置文档.md b/FRP内网穿透安装配置文档.md new file mode 100644 index 0000000..13748e2 --- /dev/null +++ b/FRP内网穿透安装配置文档.md @@ -0,0 +1,724 @@ +# FRP 内网穿透安装配置文档 + +> 最后更新:2026-04-20 10:19 +> FRP 版本:v0.68.1 +> 文档用途:记录完整安装步骤、当前状态、配置信息,方便后续查阅和继续配置 +> 服务器域名:www.orpaon.com + +--- + +## 一、整体架构 + +``` +┌──────────────────────────┐ ┌──────────────────────────────────┐ +│ 腾讯云轻量服务器 │ │ 内网客户端 │ +│ www.orpaon.com │ │ │ +│ CentOS Linux │◄──────┤ 1. 群晖 DS925 NAS (Docker) │ +│ FRP Server (frps) │ FRP │ - DSM 管理页面 :7001 │ +│ :7000 连接端口 │ 7000 │ - WebDAV 文件访问 :7003 │ +│ :7500 Dashboard │ │ 2. Windows 11 专业版 │ +│ :7001-7020 代理端口 │ │ - Gitea 代码仓库 :7004 │ +└──────────────────────────┘ └──────────────────────────────────┘ +``` + +- **服务端**:腾讯云轻量服务器(Linux CentOS),域名 www.orpaon.com,运行 `frps` +- **客户端**:群晖 DS925 NAS,Docker 方式运行 `frpc` +- **通信端口**:客户端通过 7000 端口连接服务端 +- **代理端口**:7001-7020,用于外部访问内网服务 +- **Windows 电脑**:仅作为使用端(映射驱动器访问 NAS),不再运行 frpc + +--- + +## 二、服务端配置(腾讯云轻量服务器)✅ 已完成 + +### 2.1 服务器信息 + +| 项目 | 值 | +|------|-----| +| 操作系统 | CentOS Linux | +| 主机名 | VM-16-16-centos | +| 服务器公网 IP | 腾讯云轻量服务器分配的公网 IP(通过 `curl ifconfig.me` 查看) | +| 域名 | www.orpaon.com(DNS A 记录指向公网 IP) | +| 登录方式 | OrcaTerm(腾讯云 Web 终端,免密登录) | +| FRP 安装目录 | `/opt/frp/frp-server/` | +| FRP 版本 | v0.68.1 | +| 架构 | linux_amd64 | + +### 2.2 安装步骤(已执行完成) + +#### 步骤1:创建目录并下载 + +```bash +mkdir -p /opt/frp +cd /opt/frp +# GitHub 直连失败(SSL 问题),使用 ghfast 镜像下载成功 +curl -L -o frp_0.68.1_linux_amd64.tar.gz https://ghfast.top/https://github.com/fatedier/frp/releases/download/v0.68.1/frp_0.68.1_linux_amd64.tar.gz +``` + +> ⚠️ 注意:CentOS 的 wget 无法直连 GitHub(SSL 握手失败),需使用镜像或 curl。 +> 可用镜像:`https://ghfast.top/` + GitHub 原始链接 + +#### 步骤2:解压并重命名 + +```bash +tar -xzf frp_0.68.1_linux_amd64.tar.gz +mv frp_0.68.1_linux_amd64 frp-server +rm frp_0.68.1_linux_amd64.tar.gz +``` + +#### 步骤3:创建配置文件 + +配置文件路径:`/opt/frp/frp-server/frps.toml` + +```bash +cat > /opt/frp/frp-server/frps.toml << 'EOF' +bindPort = 7000 +auth.token = "MyFrp@2026!SecRet#3102105231" + +webServer.addr = "0.0.0.0" +webServer.port = 7500 +webServer.user = "admin" +webServer.password = "MyFrp@3102105231" + +log.to = "/var/log/frps.log" +log.level = "info" +log.maxDays = 7 + +allowPorts = [ + { start = 7001, end = 7020 }, +] +EOF +``` + +#### 步骤4:创建 systemd 服务 + +服务文件路径:`/etc/systemd/system/frps.service` + +```bash +cat > /etc/systemd/system/frps.service << 'EOF' +[Unit] +Description=FRP Server Service +After=network.target + +[Service] +Type=simple +ExecStart=/opt/frp/frp-server/frps -c /opt/frp/frp-server/frps.toml +Restart=on-failure +RestartSec=5s +LimitNOFILE=1048576 + +[Install] +WantedBy=multi-user.target +EOF +``` + +#### 步骤5:启动并设置开机自启 + +```bash +systemctl daemon-reload +systemctl start frps +systemctl enable frps +systemctl status frps +``` + +### 2.3 服务端配置详情 + +| 配置项 | 值 | 说明 | +|--------|-----|------| +| bindPort | 7000 | 客户端连接端口 | +| auth.token | MyFrp@2026!SecRet#3102105231 | 客户端认证令牌(客户端必须一致) | +| webServer.addr | 0.0.0.0 | Dashboard 监听所有网卡 | +| webServer.port | 7500 | Dashboard 端口 | +| webServer.user | admin | Dashboard 登录用户名 | +| webServer.password | MyFrp@3102105231 | Dashboard 登录密码 | +| log.to | /var/log/frps.log | 日志文件路径 | +| log.level | info | 日志级别 | +| log.maxDays | 7 | 日志保留天数 | +| allowPorts | 7001-7020 | 允许客户端使用的代理端口范围 | + +### 2.4 服务端运行状态 + +| 项目 | 值 | +|------|-----| +| 服务状态 | ✅ active (running) | +| 内存占用 | ~2MB(非常轻量) | +| 开机自启 | ✅ 已设置 (systemctl enable) | +| PID | 23283(当前,重启后会变) | + +### 2.5 腾讯云防火墙放行 + +| 协议 | 端口 | 说明 | 状态 | +|------|------|------|------| +| TCP | 7000 | FRP 客户端连接端口 | ⏳ 需在控制台放行 | +| TCP | 7500 | Dashboard 管理面板 | ⏳ 需在控制台放行 | +| TCP | 7001-7020 | 客户端代理端口 | ⏳ 需在控制台放行 | + +> 操作位置:腾讯云控制台 → 轻量应用服务器 → 防火墙 → 添加规则 + +### 2.6 验证方式 + +- Dashboard 访问:`http://www.orpaon.com:7500` +- 登录账号:admin / MyFrp@3102105231 + +### 2.7 常用管理命令 + +```bash +# 启动 +systemctl start frps +# 停止 +systemctl stop frps +# 重启 +systemctl restart frps +# 查看状态 +systemctl status frps +# 查看日志 +tail -f /var/log/frps.log +# 查看进程内存 +ps -o pid,rss,cmd -p $(pgrep frps) +``` + +--- + +## 三、客户端配置 — 群晖 DS925 NAS ✅ 已完成 + +### 3.1 基本信息 + +| 项目 | 值 | +|------|-----| +| 群晖型号 | DS925 | +| NAS 局域网 IP | 192.168.0.130 | +| NAS SSH 访问 | `ssh Tyrone@192.168.0.130`(需在 DSM 控制面板 → 终端机和 SNMP 中启用 SSH) | +| 安装方式 | Docker(Container Manager) | +| Docker 镜像 | docker.1ms.run/snowdreamtech/frpc | +| 容器名称 | frpc | +| 网络模式 | host(使用与 Docker 主机相同的网络) | +| 自动重启 | ✅ 已启用 | +| 运行 ID | b279c17bd10958c7(重启后会变) | +| 连接状态 | ✅ login to server success | +| 代理状态 | ✅ synology-dsm + synology-webdav 已生效,synology-gitea 待确认 | + +### 3.2 Docker 配置详情 + +| 设置项 | 配置 | +|--------|------| +| 存储空间映射 | `/docker/frpc/frpc.toml` → `/etc/frp/frpc.toml` | +| 网络模式 | host(必须选 host,否则无法访问 NAS 本地服务) | +| 端口映射 | 无需设置(host 网络直接使用 NAS 端口) | +| 环境变量 | 无需设置 | +| 特权模式 | 不需要 | + +### 3.3 客户端配置文件 + +配置文件路径:`/docker/frpc/frpc.toml`(群晖共享文件夹路径) + +**当前配置(已生效,包含 DSM + WebDAV 代理):** + +```toml +serverAddr = "www.orpaon.com" +serverPort = 7000 +auth.token = "MyFrp@2026!SecRet#3102105231" + +# 群晖 DSM 管理页面代理 +[[proxies]] +name = "synology-dsm" +type = "tcp" +localIP = "127.0.0.1" +localPort = 5000 +remotePort = 7001 + +# 群晖 WebDAV 文件访问(HTTP) +[[proxies]] +name = "synology-webdav" +type = "tcp" +localIP = "127.0.0.1" +localPort = 5005 +remotePort = 7003 +``` + +> ⚠️ 当前使用 HTTP WebDAV(端口 5005),HTTPS WebDAV(端口 5006)因证书域名不匹配暂不可用,详见下方说明 + +### 3.4 代理服务 + +| 代理名称 | 类型 | 本地地址 | 本地端口 | 远程端口 | 说明 | 状态 | +|----------|------|----------|----------|----------|------|------| +| synology-dsm | tcp | 127.0.0.1 | 5000 | 7001 | 群晖 DSM 管理页面 | ✅ 已生效 | +| synology-webdav | tcp | 127.0.0.1 | 5005 | 7003 | 群晖 WebDAV 文件访问(HTTP) | ✅ 已生效 | +| synology-gitea | tcp | 192.168.0.130 | 3000 | 7004 | 群晖 Gitea 代码仓库 | ⏳ 待确认 | + +### 3.5 访问方式 + +- DSM 管理页面:`http://www.orpaon.com:7001` ✅ 已验证可访问 +- WebDAV 文件访问(HTTP):`http://www.orpaon.com:7003` ✅ 已验证可访问 +- Gitea 代码仓库:`http://www.orpaon.com:7004` ⏳ 待验证 +- Git 克隆地址:`http://www.orpaon.com:7004/用户名/仓库名.git` +- Windows 映射驱动器:`Y:` 盘 ✅ 已映射成功,可正常访问文件 +- 常用目录:`Y:\MyWorkFile` + +### 3.6 WebDAV HTTPS 证书问题说明 + +> **为什么当前使用 HTTP 而非 HTTPS?** + +群晖的默认 SSL 证书签发给 `orpaon.synology.me`,而非 `www.orpaon.com`。Windows WebClient 在 HTTPS 模式下会验证证书域名,不匹配则拒绝连接(系统错误 59)。 + +- **当前方案**:使用 HTTP WebDAV(端口 5005),功能正常 +- **长期方案**:为 `www.orpaon.com` 申请 Let's Encrypt 免费证书,替换群晖默认证书后可切换为 HTTPS +- **安全性**:HTTP 模式下数据明文传输,但 FRP 连接本身可通过启用 TLS 加密来保障安全 + +**HTTPS 证书导入尝试记录:** +- 已导入 `root.pem`(ISRG Root X1)到 Windows 受信任根证书存储 ✅ +- 已导入 `cert.pem` 到中间证书存储(非根证书,无法导入 Root) +- 浏览器访问 `https://www.orpaon.com:7003` 提示证书来自 `orpaon.synology.me`,域名不匹配 +- `net use` HTTPS 映射失败(系统错误 59:意外的网络错误) +- 改用 HTTP 后映射成功 + +### 3.7 Docker 运行命令(备用,SSH 方式) + +```bash +docker run -d \ + --name frpc \ + --network=host \ + --restart=always \ + -v /volume1/docker/frpc/frpc.toml:/etc/frp/frpc.toml \ + docker.1ms.run/snowdreamtech/frpc +``` + +### 3.8 Docker 容器文件隔离说明 + +> **为什么 NAS 上 /docker/frpc/ 只能看到 frpc.toml,看不到 frpc 程序文件?** + +这是 Docker 容器化隔离的正常现象。与其他 Docker 应用不同,frpc 容器只挂载了配置文件,程序本身打包在镜像内部。 + +``` +┌──────────────────────────────────────────────┐ +│ NAS 宿主机文件系统 │ +│ /docker/frpc/frpc.toml ← 你能看到的 │ +│ │ +│ ┌──────────────────────────────────────────┐ │ +│ │ Docker 容器(frpc) │ │ +│ │ /etc/frp/frpc.toml ← 映射自宿主机 │ │ +│ │ /usr/bin/frpc ← 程序在这里 │ │ +│ │ /etc/frp/ ← 默认配置目录 │ │ +│ │ (整个镜像内的文件系统,宿主机不可见) │ │ +│ └──────────────────────────────────────────┘ │ +└──────────────────────────────────────────────┘ +``` + +- **宿主机可见**:只有挂载的 `/docker/frpc/frpc.toml` 配置文件 +- **容器内部**:frpc 可执行文件、依赖库等都在 Docker 镜像层中,宿主机文件管理器看不到 +- **与其他 Docker 应用对比**:有些 Docker 应用会映射整个数据目录到宿主机(如数据库映射 /config、/data),而 frpc 只需要配置文件,所以只映射了一个 toml 文件 + +**查看容器内文件的方法(通过 SSH):** + +```bash +# 查看 frpc 程序位置 +docker exec frpc which frpc + +# 查看容器内配置文件内容 +docker exec frpc cat /etc/frp/frpc.toml + +# 列出容器内 /etc/frp/ 目录 +docker exec frpc ls -la /etc/frp/ + +# 进入容器内部交互 +docker exec -it frpc sh +``` + +**这是正常的,不需要做任何修改。** 只要容器运行正常、代理工作正常即可。如果需要修改配置,只需修改 NAS 上的 `/docker/frpc/frpc.toml`,然后重启容器生效: + +```bash +docker restart frpc +``` + +--- + +## 四、Windows 电脑 — 仅作为使用端 + +> Windows 电脑不再运行 frpc 客户端,仅通过映射网络驱动器访问 NAS 文件。 +> 之前的 RDP 远程桌面代理已移除(不需要远程访问 Windows 电脑)。 + +### 4.1 访问 NAS 文件 + +- 映射驱动器:`Y:` 盘 → `http://www.orpaon.com:7003` +- 常用目录:`Y:\MyWorkFile` +- 映射命令: + +```powershell +net use Y: http://www.orpaon.com:7003 /user:webdav_tyrone WebDAV@3102105231 /persistent:yes +``` + +### 4.2 映射驱动器管理 + +```powershell +# 断开映射 +net use Y: /delete +# 重新映射 +net use Y: http://www.orpaon.com:7003 /user:webdav_tyrone WebDAV@3102105231 /persistent:yes +# 查看当前映射 +net use +``` + +### 4.3 历史记录(已弃用) + +
+点击展开:Windows frpc 客户端配置历史(已移除) + +Windows 11 专业版曾配置 frpc 客户端,用于远程桌面(RDP)代理: + +- 安装目录:`C:\frp\` +- 代理名称:`windows-ANUS-rdp`,远程端口 7002 +- 开机自启方式:Windows 任务计划程序(schtasks) +- 曾尝试 nssm 注册服务,因 SERVICE_PAUSED 问题改用任务计划程序 + +**已执行的清理操作:** + +```powershell +# 停止并删除任务计划 +schtasks /end /tn "frpc" +schtasks /delete /tn "frpc" /f +# 结束进程 +taskkill /F /IM frpc.exe +``` + +如需彻底清理,可删除 `C:\frp\` 目录。 + +
+ +--- + +## 五、关键信息汇总 + +### 5.1 认证信息 + +| 项目 | 值 | +|------|-----| +| auth.token | MyFrp@2026!SecRet#3102105231 | +| Dashboard 用户名 | admin | +| Dashboard 密码 | MyFrp@3102105231 | +| WebDAV 用户名 | webdav_tyrone | +| WebDAV 密码 | WebDAV@3102105231 | + +### 5.2 端口规划 + +| 端口 | 用途 | 状态 | +|------|------|------| +| 7000 | FRP 客户端连接 | ✅ 服务端已配置 | +| 7500 | Dashboard | ✅ 服务端已配置 | +| 7001 | 群晖 DSM 管理页面 | ✅ 已配置(frpc 连接成功,可访问) | +| 7002 | ~~Windows 远程桌面~~ | ❌ 已移除(不需要远程访问 Windows) | +| 7003 | 群晖 WebDAV 文件访问(HTTP) | ✅ 已配置(frpc 代理成功,Windows 映射驱动器可访问) | +| 7004 | 群晖 Gitea 代码仓库 | ⏳ 待验证(frpc.toml 已添加,需重启容器 + 防火墙放行) | +| 7005-7020 | 预留 | ⏳ 按需分配 | + +### 5.3 配置文件本地备份 + +本地备份目录:`Config_Toml/` + +| 文件路径 | 说明 | +|----------|------| +| `Config_Toml/NasConfig/frpc.toml` | 群晖 NAS frpc 配置(当前生效版本,含 DSM + WebDAV + Gitea 代理) | +| `Config_Toml/AsusPCConfig/frpc.toml` | Windows 电脑 frpc 配置(已弃用,仅保留连接信息,无代理) | +| `Config_Toml/frpc.toml` | 旧版 NAS 配置(历史参考) | +| `Config_Toml/frps.toml` | 服务端 frps 配置(当前生效版本) | +| `Config_Toml/frps.service` | 服务端 systemd 服务文件 | + +**NasConfig/frpc.toml(当前生效):** + +```toml +serverAddr = "www.orpaon.com" +serverPort = 7000 +auth.token = "MyFrp@2026!SecRet#3102105231" + +# 群晖 DSM 管理页面代理 +[[proxies]] +name = "synology-dsm" +type = "tcp" +localIP = "127.0.0.1" +localPort = 5000 +remotePort = 7001 + +# 群晖 WebDAV 文件访问(HTTP) +[[proxies]] +name = "synology-webdav" +type = "tcp" +localIP = "127.0.0.1" +localPort = 5005 +remotePort = 7003 + +# 群晖 Gitea 代码仓库 +[[proxies]] +name = "synology-gitea" +type = "tcp" +localIP = "192.168.0.130" +localPort = 3000 +remotePort = 7004 +``` + +**AsusPCConfig/frpc.toml(已弃用):** + +```toml +serverAddr = "www.orpaon.com" +serverPort = 7000 +auth.token = "MyFrp@2026!SecRet#3102105231" +``` + +> ⚠️ 修改 NAS 配置时,需同步更新 `NasConfig/frpc.toml` 备份,并将内容复制到 NAS `/docker/frpc/frpc.toml`,然后 `docker restart frpc` 生效 + +### 5.4 端到端数据流 + +每个服务从内网到公网的完整链路: + +``` +┌─────────────────────────────────────────────────────────────────────────┐ +│ 端到端数据流 │ +├─────────────────────────────────────────────────────────────────────────┤ +│ │ +│ 1. DSM 管理页面 │ +│ 浏览器 → http://www.orpaon.com:7001 │ +│ → 腾讯云 frps :7001 │ +│ → NAS frpc (synology-dsm) │ +│ → 127.0.0.1:5000 (DSM) │ +│ │ +│ 2. WebDAV 文件访问 │ +│ Windows Y:盘 → http://www.orpaon.com:7003 │ +│ → 腾讯云 frps :7003 │ +│ → NAS frpc (synology-webdav) │ +│ → 127.0.0.1:5005 (WebDAV HTTP) │ +│ │ +│ 3. Gitea 代码仓库 │ +│ 浏览器/Git → http://www.orpaon.com:7004 │ +│ → 腾讯云 frps :7004 │ +│ → NAS frpc (synology-gitea) │ +│ → 192.168.0.130:3000 (Gitea Docker) │ +│ │ +│ 4. Dashboard 监控 │ +│ 浏览器 → http://www.orpaon.com:7500 │ +│ → 腾讯云 frps Dashboard :7500 │ +│ │ +└─────────────────────────────────────────────────────────────────────────┘ +``` + +### 5.5 服务依赖关系 + +每个远程服务正常工作需要以下组件全部在线: + +| 远程服务 | 需要在线的组件 | 依赖说明 | +|----------|----------------|----------| +| DSM 管理页面 | 腾讯云 frps + NAS frpc 容器 + NAS DSM 服务 | frps 接收请求 → frpc 转发到本地 5000 端口 | +| WebDAV 文件访问 | 腾讯云 frps + NAS frpc 容器 + NAS WebDAV Server 套件 | WebDAV Server 需在 DSM 套件中心启用 HTTP(5005) | +| Gitea 代码仓库 | 腾讯云 frps + NAS frpc 容器 + NAS Gitea Docker 容器 | Gitea 容器需运行在 192.168.0.130:3000 | +| Dashboard | 腾讯云 frps | 仅服务端自身功能,不依赖客户端 | +| Windows Y:盘 | 腾讯云 frps + NAS frpc 容器 + NAS WebDAV Server + Windows WebClient 服务 | WebClient 需运行(默认自动) | + +### 5.6 下载地址 + +| 平台 | 下载链接 | +|------|----------| +| Linux amd64 | https://github.com/fatedier/frp/releases/download/v0.68.1/frp_0.68.1_linux_amd64.tar.gz | +| Linux arm64 | https://github.com/fatedier/frp/releases/download/v0.68.1/frp_0.68.1_linux_arm64.tar.gz | +| Windows amd64 | https://github.com/fatedier/frp/releases/download/v0.68.1/frp_0.68.1_windows_amd64.zip | +| 镜像加速 | https://ghfast.top/ + 上方链接 | + +--- + +## 六、日常维护指南 + +### 6.1 FRP Dashboard(最简单的监控方式) + +浏览器访问 `http://www.orpaon.com:7500` + +- 用户名:`admin` +- 密码:`MyFrp@3102105231` + +可查看内容: +- 当前连接的客户端数量 +- 每个代理的在线状态(synology-dsm、synology-webdav) +- 流量统计 + +> 建议每周打开一次 Dashboard 确认客户端在线状态 + +### 6.2 Windows 电脑上检查 + +**检查 Y: 盘是否正常:** +- 打开此电脑,看 Y: 盘是否显示红叉(红叉 = 断开) +- 双击 Y: 盘,能打开就说明 FRP + WebDAV 连接正常 + +**重新连接映射驱动器(断开后):** + +```powershell +# 断开旧连接 +net use Y: /delete +# 重新映射 +net use Y: http://www.orpaon.com:7003 /user:webdav_tyrone WebDAV@3102105231 /persistent:yes +``` + +> Windows 电脑不再运行 frpc,无需检查 frpc 进程。只需关注 Y: 盘是否正常即可。 + +### 6.3 群晖 NAS 上检查 + +**查看 frpc 容器状态(GUI):** +- 打开 Container Manager → 容器 → 看 frpc 容器是否为 **运行中**(绿色图标) + +**查看 frpc 日志(SSH):** + +```bash +docker logs --tail 20 frpc +``` + +正常输出应包含: +- `login to server success` +- `start proxy success`(每个代理各一条) + +**重启 frpc 容器:** + +```bash +docker restart frpc +``` + +**修改配置后生效:** + +```bash +# 1. 编辑配置文件(通过 File Station 或 SSH) +# 2. 重启容器 +docker restart frpc +# 3. 确认生效 +docker logs --tail 10 frpc +``` + +### 6.4 腾讯云服务器上检查 + +**查看 frps 服务状态:** + +```bash +systemctl status frps +``` + +`active (running)` 表示正常。 + +**查看日志:** + +```bash +tail -f /var/log/frps.log +# 或查看最近 50 行 +tail -50 /var/log/frps.log +``` + +**重启 frps:** + +```bash +systemctl restart frps +``` + +### 6.5 常见问题排查 + +| 现象 | 可能原因 | 解决方法 | +|------|----------|----------| +| Y: 盘打不开 | 群晖 frpc 容器停了 | 群晖 Container Manager 重启 frpc 容器 | +| Y: 盘显示红叉 | 网络波动导致断开 | `net use Y: /delete` 再重新映射 | +| DSM 页面打不开 | 服务器 frps 停了 | 服务器执行 `systemctl restart frps` | +| 映射驱动器报错 | WebDAV 服务未启用或 frpc 断开 | 检查群晖 WebDAV Server 是否启用 + `docker restart frpc` | +| 两个客户端都连不上 | 服务器 frps 停了或防火墙问题 | 检查 `systemctl status frps` + 腾讯云防火墙 | +| frpc 容器反复重启 | frpc.toml 配置错误 | `docker logs frpc` 查看错误信息,修正配置 | +| Y: 盘访问很慢 | 网络延迟或带宽不足 | 正常现象,FRP 穿透速度取决于服务器带宽 | + +### 6.6 维护频率建议 + +| 频率 | 操作 | +|------|------| +| 无需主动维护 | 服务端和客户端都设置了开机自启,正常情况自动运行 | +| 每周一次 | 打开 Dashboard 确认客户端在线 | +| 异常时 | Y: 盘打不开 → 按上面排查表处理 | + +### 6.7 服务器或 NAS 变更迁移指南 + +#### 场景1:更换腾讯云服务器 + +1. 新服务器安装 frps(参照第二章步骤) +2. 将 `frps.toml` 和 `frps.service` 复制到新服务器对应位置 +3. 新服务器启动 frps 并设置开机自启 +4. 新服务器防火墙放行 7000、7500、7001-7020 +5. **更新域名 DNS**:将 www.orpaon.com 的 A 记录指向新服务器公网 IP +6. NAS frpc.toml 中的 `serverAddr` 无需修改(域名不变则自动连接新服务器) +7. 如果使用 IP 直连而非域名,需修改 NAS `/docker/frpc/frpc.toml` 中的 `serverAddr`,然后 `docker restart frpc` + +#### 场景2:更换群晖 NAS + +1. 新 NAS 安装 Container Manager,下载 snowdreamtech/frpc 镜像 +2. 将 `NasConfig/frpc.toml` 复制到新 NAS 的 `/docker/frpc/frpc.toml` +3. **修改 localIP**:如果新 NAS 局域网 IP 变了,修改 Gitea 代理的 `localIP` +4. 创建 frpc 容器(参照 3.2 Docker 配置详情),网络模式必须选 host +5. 启动容器并确认 `docker logs --tail 20 frpc` 显示连接成功 +6. 新 NAS 安装并启用 WebDAV Server 套件(HTTP 端口 5005) +7. 新 NAS 安装并启动 Gitea Docker 容器(端口 3000) +8. Windows 重新映射 Y: 盘(如果域名不变则无需操作) + +#### 场景3:NAS 局域网 IP 变更 + +只需修改 NAS frpc.toml 中 Gitea 代理的 `localIP`: + +```bash +# SSH 登录 NAS,编辑配置 +vi /docker/frpc/frpc.toml +# 修改 synology-gitea 的 localIP 为新 IP +docker restart frpc +``` + +> 其他代理使用 127.0.0.1(本机),不受 IP 变更影响 + +#### 场景4:域名变更 + +1. 新域名 DNS A 记录指向服务器公网 IP +2. 修改 NAS `/docker/frpc/frpc.toml` 中的 `serverAddr` 为新域名 +3. `docker restart frpc` +4. Windows 重新映射 Y: 盘(使用新域名) +5. 更新本文档中所有涉及 www.orpaon.com 的地方 + +### 6.8 FRP 版本升级 + +如需升级 FRP 版本: + +**服务端(腾讯云):** + +```bash +# 停止服务 +systemctl stop frps +# 备份配置 +cp /opt/frp/frp-server/frps.toml /opt/frp/frp-server/frps.toml.bak +# 下载新版本(替换版本号) +cd /opt/frp +curl -L -o frp_new.tar.gz https://ghfast.top/https://github.com/fatedier/frp/releases/download/v新版本号/frp_新版本号_linux_amd64.tar.gz +tar -xzf frp_new.tar.gz +cp frp_新版本号_linux_amd64/frps /opt/frp/frp-server/frps +rm -rf frp_new.tar.gz frp_新版本号_linux_amd64 +# 启动服务 +systemctl start frps +``` + +**群晖 NAS(Docker):** + +1. Container Manager → 停止 frpc 容器 +2. 下载新版镜像(snowdreamtech/frpc 对应新版本标签) +3. 用相同配置重新创建容器 + +> ⚠️ 升级前建议先升级服务端,再升级客户端,保持版本一致 +> Windows 电脑不再运行 frpc,无需升级客户端 + +--- + +## 七、当前进度 + +- [x] 服务端 FRP 安装(腾讯云轻量服务器) +- [x] 服务端配置文件创建 +- [x] 服务端 systemd 服务创建与启动 +- [x] 服务端开机自启设置 +- [ ] 腾讯云防火墙端口放行(7000、7500、7001-7020)— 客户端已能连接说明 7000 可能已放行,其余待确认 +- [ ] Dashboard 验证访问(http://www.orpaon.com:7500) +- [x] 群晖 DS925 NAS 客户端安装配置(Docker 方式,frpc 已连接成功) +- [x] 群晖 DSM 管理页面远程访问验证通过(http://www.orpaon.com:7001) +- [x] Windows 映射网络驱动器(Y: 盘 → http://www.orpaon.com:7003,可正常访问文件) +- [x] Windows RDP 代理已移除(不需要远程访问 Windows 电脑) +- [ ] WebDAV HTTPS 升级(需为 www.orpaon.com 申请 Let's Encrypt 证书替换群晖默认证书) +- [ ] 腾讯云防火墙端口放行确认(7000、7500、7001-7020) +- [ ] Dashboard 验证访问 +- [ ] 群晖 Gitea 代码仓库远程访问验证(http://www.orpaon.com:7004) +- [ ] 腾讯云防火墙放行 7004 +- [ ] 群晖添加更多代理服务(按需)