4.0 KiB
4.0 KiB
🚨 FRP服务紧急恢复指南
问题说明
FRP客户端配置修改后无法连接,导致:
- ❌ 网站无法访问(502错误)
- ❌ SSH穿透断开(2322端口不可用)
- ❌ 需要通过本地网络恢复
🔧 恢复步骤
方法1:通过本地网络SSH恢复(推荐)
-
确保在同一局域网
- 连接到与NAS相同的网络
-
SSH登录NAS
# 使用NAS的本地IP(请替换为实际IP,如 192.168.1.x)
ssh root@<NAS本地IP>
- 恢复备份配置
# 查看备份文件
ls -lh /mnt/tank/apps/frp/frpc.toml.backup-*
# 恢复最新备份(替换时间戳)
cp /mnt/tank/apps/frp/frpc.toml.backup-20251030-* /mnt/tank/apps/frp/frpc.toml
# 重启FRP容器
docker restart frpc-youyidian
# 等待3秒
sleep 3
# 检查状态
docker ps | grep frpc
docker logs --tail 20 frpc-youyidian
- 验证恢复
# 应该能看到 "login to server success"
# 等待10秒后,从外网测试
curl -I https://3d.yydd.ai
方法2:通过TrueNAS Web界面恢复
-
访问TrueNAS管理界面
- 浏览器打开:
http://<NAS本地IP> - 登录管理账户
- 浏览器打开:
-
打开Shell
- 顶部菜单:System → Shell
-
执行恢复命令
# 恢复配置
cp /mnt/tank/apps/frp/frpc.toml.backup-20251030-* /mnt/tank/apps/frp/frpc.toml
# 重启容器
docker restart frpc-youyidian
方法3:手动编辑正确的配置
如果备份也有问题,使用原始配置:
- 编辑配置文件
vi /mnt/tank/apps/frp/frpc.toml
- 使用以下内容(原始配置):
serverAddr = "180.97.221.140"
serverPort = 7000
[[proxies]]
name = "youyidian-3d"
type = "tcp"
localIP = "127.0.0.1"
localPort = 4320
remotePort = 2320
[[proxies]]
name = "nas-ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 2322
[auth]
method = "token"
token = "LiuYunKu_NAS_2024_SecureToken"
[log]
to = "/mnt/tank/apps/frp/frpc.log"
level = "info"
maxDays = 3
- 保存并重启
# 保存后退出 vi(按 ESC,然后 :wq)
docker restart frpc-youyidian
✅ 验证恢复成功
1. 检查容器日志
docker logs --tail 20 frpc-youyidian
应该看到:
login to server success
start proxy success
2. 从外网测试
# 测试网站
curl -I https://3d.yydd.ai
# 测试SSH
ssh -o ConnectTimeout=10 root@180.97.221.140 -p 2322
应该返回:
- 网站:HTTP/2 200 或 301/302
- SSH:能够连接并输入密码
🎯 恢复后的优化(可选)
服务恢复后,如果还想优化FRP配置,请使用测试过的配置:
serverAddr = "180.97.221.140"
serverPort = 7000
# 传输优化(可选)
[transport]
heartbeatInterval = 30
heartbeatTimeout = 90
tcpMux = true
poolCount = 5
[[proxies]]
name = "youyidian-3d"
type = "tcp"
localIP = "127.0.0.1"
localPort = 4320
remotePort = 2320
transport.useEncryption = false
transport.useCompression = false
[[proxies]]
name = "nas-ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 2322
[auth]
method = "token"
token = "LiuYunKu_NAS_2024_SecureToken"
[log]
to = "/mnt/tank/apps/frp/frpc.log"
level = "info"
maxDays = 3
💡 预防措施
以后修改FRP配置时:
- 先测试连接
# 测试配置文件语法
docker exec frpc-youyidian frpc verify -c /etc/frp/frpc.toml
-
保留备份窗口
- 修改后不要立即关闭SSH连接
- 等待30秒确认FRP重新连接成功
-
监控日志
docker logs -f frpc-youyidian
📞 需要帮助?
如果恢复遇到问题:
-
找不到NAS本地IP
- 登录路由器查看设备列表
- 或在TrueNAS物理屏幕上查看
-
无法访问NAS
- 确保在同一局域网
- 检查防火墙设置
-
容器无法启动
# 查看完整错误
docker logs frpc-youyidian
# 重新创建容器(使用原配置)
docker stop frpc-youyidian
docker start frpc-youyidian
恢复后请告诉我结果,我将继续帮您解决上传问题! 🚀