[TOC]
下载
文档
https://gofrp.org/docs/setup/
Github 的 Release 页面
https://github.com/fatedier/frp/releases
下载对应架构的软件包, frp_0.35.1_linux_amd64.tar.gz
运行 解压
tar -zxvf frp_0.29.1_linux_amd64.tar.gz
文件配置
- 服务端是配置
Frps.ini
文件,运行Frps
启动 - 客户端是配置
Frpc.ini
文件,运行Frpc
启动
新版使用
toml
格式文件,ini
文件不再适用。
修改服务端配置文件并启动
打开Frps.ini
文件,这里配置web服务服务
[common]
# 内网穿透服务器端监听的IP地址,可以省略,默认为127.0.0.1
bind_addr = 0.0.0.0
# 服务器端监听的端口,默认是7000
bind_port = 7000
# 该端口就是以后访问web服务需要用到的端口
vhost_http_port = 8787
# frp的web面板配置
dashboard_addr = 0.0.0.0
dashboard_port = 7500
# 登陆用户
dashboard_user = admin
# 登陆密码
dashboard_pwd = adminadmin
或frps.toml
bindPort = 7000
vhostHTTPPort = 8787
# auth.token = "wwssaaddbaba123"
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "adminadmin"
启动frps
./frps -c ./frps.ini
# 或
./frps -c ./frps.toml
或后台启动
nohup ./frps -c ./frps.ini &
# 或
nohup ./frps -c ./frps.toml &
查看进程
ps -aux | grep "frps"
可以通过kill杀死进程,终止服务
客户端配置并启动
打开Frpc.ini
文件
[common]
## 服务端的服务器ip
server_addr = 服务器ip地址
## 服务端监听的端口(必须与Frps.ini中的配置一致)
server_port = 7000
# token = wwssaaddbaba123
[myweb111] # 给当前穿透服务起一个唯一名字
type = http
# 要穿透的本地服务地址
local_ip = 192.168.0.121
local_port = 8080
# 绑定的域名
custom_domains = [随便取一个前缀].nat.domain.com;
启动
frpc.exe -c frpc.ini
新版toml
文件的配置
serverAddr = "服务器ip地址"
serverPort = 7000
# auth.token = "wwssaaddbaba123"
[[proxies]]
name = "myHomePage" # 给当前穿透服务起一个唯一名字
type = "http"
localIP = "192.168.0.121"
localPort = 8080
customDomains = ["[随便取一个前缀].nat.domain.com"]
# useEncryption = true
# useCompression = true
# 配置账号密码验证才能打开
# httpUser = "root"
# httpPassword = "root1333."
启动
frpc.exe -c frpc.toml
服务器配置nginx反向代理
server {
listen 80;
server_name *.nat.domain.com; # 这里填你的域名,然后去域名商解析
location / {
proxy_pass http://127.0.0.1:8787;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 禁止缓存
proxy_buffering off;
proxy_cache off;
proxy_no_cache on;
}
}
如果你在用宝塔,记得在宝塔反向代理里修改配置文件内容。关闭缓存。
Linux设置frp进程守护
在/lib/systemd/system/
目录中创建frps.service
文件。内容如下:
[Unit]
Description=fraps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/your/path/frps -c /your/path/frps.ini
[Install]
WantedBy=multi-user.target
之后就可以通过systemctl启动frp
# 启动frps
sudo systemctl start frps
# 打开自启动
sudo systemctl enable frps
# 重启
sudo systemctl restart frps
# 停止应用
sudo systemctl stop frps
# 查看应用日志
sudo systemctl status frps