frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,且支持 P2P 通信。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
下载后解压
tar -zxvf frp_0.52.3_linux_amd64.tar.gz
-z:表示使用 gzip 解压缩。
-x:表示解压缩。
-v:表示详细输出,显示解压缩的文件列表。
-f:后面跟着文件名
修改配置文件


bindPort = 7000 # 绑定端口
vhostHTTPPort = 8080 # 监听端口
启动服务
./frps -c ./frps.toml

解压 frp_0.52.3_windows_amd64.zip
修改 frpc.toml
serverAddr = "8.222.184.175" # 服务端IP地址
serverPort = 7000 # 服务端端口
启动服务
frpc.exe -c ./frpc.toml


前提是自定义域名能解析到服务端ip
本地Web页面准备

未添加配置前

配置 frps.toml
serverAddr = "8.222.184.175" # 服务端IP地址
serverPort = 7000 # 服务端端口
[[proxies]]
name = "test"
type = "http"
localPort = 10011
customDomains = ["test.hzy.ink"]
重启服务后成功访问

在 Linux 系统下,使用 systemd 可以方便地控制 frps 服务端的启动、停止、配置后台运行以及开机自启动。
yum install systemd
使用文本编辑器 (如 vim) 在 /etc/systemd/system 目录下创建一个 frps.service 文件,用于配置 frps 服务。
vim /etc/systemd/system/frps.service
[Unit]
# 服务名称,可自定义
Description = frp server
# 定义服务应该在哪些系统服务之后启动
After = network.target syslog.target
# 指定在 network.target 启动时也启动这个服务。
Wants = network.target
[Service]
# 定义服务的类型
Type = simple simple表示这是一个简单的服务,主要用于前台应用。
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /root/frp_0.52.3_linux_amd64/frps -c /root/frp_0.52.3_linux_amd64/frps.toml
[Install]
# 指定服务应该由哪个目标启动。multi-user.target,表示在多用户模式下启动服务。
WantedBy = multi-user.target
# 启动frp
systemctl start frps
# 停止frp
systemctl stop frps
# 重启frp
systemctl restart frps
# 查看frp状态
systemctl status frps

systemctl enable frps
