frp踩坑 以及进阶教程

🚀 FRP 客户端(frpc)后台运行及开机自启实践笔记

今天在使用 FRP 做内网穿透时,踩了不少坑 🕳️,最终成功实现了 frpc 后台运行 + 开机自启。整理成博客,方便自己和大家参考。


🛠️ 一、环境说明

  • FRP 服务端:已正常运行
  • FRP 客户端可执行文件:/path/to/frpc
  • FRPC 配置文件(toml 格式):/path/to/frpc.toml(替换成实际路径)
  • 本地 SSH 服务:确保已启动 🔑

⚠️ 二、遇到的问题与踩坑

1️⃣ frpc 连接不到服务端

启动 frpc 时,日志报错:

connect to server error: dial tcp 127.0.0.1:xxxx: connect: connection refused
login to the server failed

原因分析

  • frpc 无法读取 toml 配置文件,回退到默认配置(连接 127.0.0.1)
  • 怀疑是配置文件路径或权限问题

2️⃣ 权限问题

尝试修改配置文件权限:

chmod 644 frpc.toml

仍然报错 ❌

真正原因

  • frpc 需要访问低端口(如 22)或系统服务
  • 非 root 用户无法启动

3️⃣ 拼写与路径错误

后台启动时,一度写成:

sudo nohup ./frpc -c frpc.toml &

导致 frpc 读取不到配置文件 ❌


✅ 三、解决方案

1️⃣ 使用 sudo 正确启动

sudo /path/to/frpc -c /path/to/frpc.toml
  • 确认 frpc 能正确连接服务端 ✔️
  • 权限问题解决 ✅

2️⃣ 临时后台运行

cd /path/to/frpc_directory
sudo nohup /path/to/frpc -c /path/to/frpc.toml > frpc.log 2>&1 &
  • 使用 nohup 防止终端关闭杀掉进程
  • 日志输出到 frpc.log 📜

3️⃣ 开机自动运行(推荐 systemd)

创建 systemd 服务文件

sudo nano /etc/systemd/system/frpc.service

内容如下:

[Unit]
Description=FRP Client Service
After=network.target

[Service]
Type=simple
ExecStart=/path/to/frpc -c /path/to/frpc.toml
Restart=on-failure
User=root
WorkingDirectory=/path/to/frpc_directory
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=frpc

[Install]
WantedBy=multi-user.target

启动并设置开机自启

sudo systemctl daemon-reload
sudo systemctl start frpc
sudo systemctl enable frpc
sudo systemctl status frpc
journalctl -u frpc -f   # 查看实时日志 🔍

特点

  • 使用绝对路径,确保 toml 配置文件被正确读取
  • 后台运行,无需占用终端
  • 开机自动启动,长期稳定

📝 四、踩坑总结

  1. 权限问题

    • 低端口或系统服务需要 root 权限
    • 解决:使用 sudo 或端口 > 1024
  2. 路径与拼写

    • toml 配置文件路径必须是绝对路径
    • 拼写错误会导致 frpc 回退到默认配置
  3. 多进程冲突

    • 多次执行 nohup 或 systemd 启动可能端口占用
    • 解决:先 pkill frpc 清理进程

🌟 五、最终收获

  • frpc 成功后台运行
  • systemd 自动启动,日志统一管理
  • 避免默认配置回退和权限问题

经验教训

  1. 配置文件路径用绝对路径
  2. 低端口需要 root 权限
  3. 后台运行 + systemd 是长期稳定方案

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值