[本文自2024年此博客英文版翻译而来]
FRP 是一款高性能反向代理解决方案,旨在让那些原本被 NAT 或防火墙遮蔽的本地服务器,能够通过互联网被访问。它同时支持 TCP 和 UDP,以及 HTTP 和 HTTPS 协议,从而将基于域名的请求转发至内部服务。

还在为家里的服务器没有固定公网 IPv4 地址而烦恼吗?Fatedier 的 FRP 项目或许正是你需要的解决方案。
部署
1. 下载
从 https://github.com/fatedier/frp/releases 下载对应服务器系统的 FRP 套件,解压后放到任意目录即可。
2. 安装 Systemd(可选)

"systemd是Linux电脑操作系统之下的一套中央化系统及设定管理程序(init),包括有守护进程、函数库以及应用软件。"
它用于管理 FRPS 服务的启动、自启、重载、关闭等流程。如果你不需要这些,可以跳过本节。
# 通过 yum 安装 systemd (CentOS/RHEL)
yum install systemd
# 通过 apt 安装 systemd (Debian/Ubuntu)
apt install systemd3. 创建 frps.service 文件(需配合第2步)
使用文本编辑器(如 vim)在 /etc/systemd/system 目录下创建名为 frps.service 的文件,用于配置 frps 服务。
写入以下内容:
[Unit]
# 可自定义服务名称
Description = frp server
After = network.target syslog.target
Wants = network.target
[Service]
Type = simple
# 启动命令,需修改为你的 frps 实际安装路径。
ExecStart = /path/to/frps -c /path/to/frps.toml
[Install]
WantedBy = multi-user.target4. 修改 frps.toml 文件
# 可改为任意端口,并在服务器防火墙中放行该端口。
bindPort = 7000
# 如需为 FRPS 启用 Web 管理界面,请添加以下配置;默认监听 127.0.0.1,如需公网访问请改为 0.0.0.0
webServer.addr = "0.0.0.0"
webServer.port = 7001
# 控制面板用户名和密码,选填
webServer.user = "username"
webServer.password = "password"
# 如需客户端与服务端之间进行身份验证,请添加以下配置
auth.method = "token"
auth.token = "password"
FRPS Web 管理界面
启动服务
1. 使用 Systemd
# 使用 systemd 命令管理 FRPS 服务:
# 启动 FRPS
sudo systemctl start frps
# 停止 FRPS
sudo systemctl stop frps
# 重启 FRPS
sudo systemctl restart frps
# 查看 FRPS 状态
sudo systemctl status frps
# 设置 FRPS 开机自启:
sudo systemctl enable frps2. 不使用 Systemd
# 进入 FRPS 所在目录
./frps -c ./frps.toml配置客户端的 frpc.toml 文件
serverAddr = "x.x.x.x"
# FRP 与服务端的通信端口,需与服务端配置文件中的端口设置保持一致。
serverPort = 7000
# (可选)输入与服务端相同的密码
auth.method = "token"
auth.token = "password"
# (可选)Web 控制台
webServer.addr = "127.0.0.1"
webServer.port = 7400
webServer.user = "admin"
webServer.password = "admin"
[[proxies]]
name = "tcp"
# 协议类型,更多信息请参考 GitHub 页面。
type = "tcp"
# 本地 IP(需要被反向代理的 IP)
localIP = "127.0.0.1"
localPort = xxxx
# 访问服务端的以下端口,会将流量转发到上述本地 IP 端口:
remotePort = xxxx以下模板供参考:
启动 FRP 客户端
./frpc -c ./frpc.toml
# Windows 命令行下请使用:
frpc -c ./frpc.toml至此配置完成,应该会看到类似以下的信息:






Comments | NOTHING