Skip to content

FRP安装配置

约 679 字大约 2 分钟

2026-02-11

Go开发的一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信

下载&安装

#根据系统架构下载,系统架构查看命令: uname -m
wget https://github.com/fatedier/frp/releases/download/v0.67.0/frp_0.67.0_linux_amd64.tar.gz

#解压
tar -zxvf frp_0.67.0_linux_amd64.tar.gz

#重命名
mv frp_0.54.0_linux_amd64 /usr/local/frp

配置

提示

.ini配置文件的行内不能有注释,不然会算作内容;现在frp推荐使用yml格式配置了

服务端

  • 配置文件: vim /usr/local/frp/frps.ini
# frp 服务端监听端口(和客户端通信用) 
[common] 
bind_port = 7000 

#仪表盘信息(方便查看连接状态 可选配置)
dashboard_port = 7500 
dashboard_user = admin 
dashboard_pwd = yourpassword 

# 可选:设置令牌,防止别人蹭用你的 frp 服务  自己设置一个复杂的密钥(比如字母+数字)
token = yoursecretkey

sudo ./frps -c ./frps.ini 测试启动 输出 start frps success 就成功了

  • 配置服务开机启动: vi /etc/systemd/system/frps.service
[Unit] 
Description=FRP Server Service 
After=network.target 

[Service] 
Type=simple User=root 
ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini 
Restart=on-failure RestartSec=5s 

[Install] 
WantedBy=multi-user.target
# 重新加载服务配置 
sudo systemctl daemon-reload 
# 启动 frps 服务 
sudo systemctl start frps 
# 设置开机自启 
sudo systemctl enable frps 
# 查看服务状态(确认 running) 
sudo systemctl status frps

客户端

解压都一样

  • 配置
[common]
# 阿里云服务器的公网 IP
server_addr = 你的阿里云公网IP
# frp 服务端的监听端口(和服务端 bind_port 一致)
server_port = 7000
# 和服务端的 token 一致(必须匹配)
token = yoursecretkey       

# 示例1:转发 NAS 的 Web 管理页面(比如群晖/威联通的 5000 端口)
[nas-web]
type = tcp                   
local_ip = 127.0.0.1        
local_port = 5000            
remote_port = 5000          

# 示例2:转发 NAS 的 SSH 端口(方便远程管理 NAS)
[nas-ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22              
remote_port = 2222          

# 示例3:转发 NAS 的 SMB 文件服务(比如 445 端口)
[nas-smb]
type = tcp
local_ip = 127.0.0.1
local_port = 445
remote_port = 4450

设置服务自启动服务

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

[Service]
Type=simple
User=root
ExecStart=/usr/local/frp/frpc -c /usr/local/frp/frpc.ini
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target
#设置开机启动
sudo systemctl enable frps 
# 检查服务是否已启用开机启动
systemctl is-enabled frpc.service
# 如果显示 disabled,则启用它
sudo systemctl enable frpc.service

# 模拟启动顺序(不会真的重启)
sudo systemctl list-dependencies multi-user.target | grep frpc

升级为yaml格式的配置

Server
bindPort = 7777

#仪表板
webServer.addr = "0.0.0.0"
webServer.port = 7888
webServer.user = "admin"
webServer.password = "password"

#连接验证
auth.method = "token" 
auth.token = "abc123"

#TLS连接
#接受tls连接
transport.tls.force = false
Client
clientID = "clientid"
user = "username"

serverAddr = "47.1.26.3"
serverPort = 7777

auth.method = "token"
auth.token = "abc123"

[[proxies]]
name = "nas-web"
type = "tcp"
localIP = "192.168.1.3"
localPort = 5000
remotePort = 5555

[[proxies]]
name = "nas-ssh"
type = "tcp"
localIP = "192.168.1.3"
localPort = 22
remotePort = 22222

[[proxies]]
name = "nas-mysql"
type = "tcp"
localIP = "192.168.1.3"
localPort = 3306
remotePort = 3306

[[proxies]]
name = "nas-tlbb_login"
type = "tcp"
localIP = "192.168.1.3"
localPort = 7384
remotePort = 7384

[[proxies]]
name = "nas-tlbb_game"
type = "tcp"
localIP = "192.168.1.3"
localPort = 3731
remotePort = 3731