Frp 的安装和使用
161 0
Frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
Frp 分为服务端和客户端,以下用 Frps 指代服务端,Frpc 指代客户端
## 下载
wget https://github.com/fatedier/frp/releases/download/v0.38.0/frp_0.38.0_linux_amd64.tar.gz
## 解压
tar -xf frp*linux_amd64.tar.gz
## 进入目录
cd frp*linux_amd64
## 查看版本
./frps -v
[common]
## frpc连接端口
bind_port = 7000
## https请求端口
vhost_https_port = 4443
## http请求端口
vhost_http_port = 8080
## 设置访问密码
authentication_method = token
token = 你的密码
## log级别
## trace, debug, info, warn, error
log_level = warn
可以通过 PM2 启动 frps
pm2 start ./frps -n frps -- -c ./frps.ini
Frpc 的安装和启动同 Frps
[common]
## 服务器IP和服务器连接端口
server_addr = x.x.x.x
server_port = 7000
token = 你的密码
## 首次登录失败时是否退出程序,否则继续重新登录frps
## 默认为true
login_fail_exit = false
log_level = warn
[web1]
type = http
local_port = 80
local_ip = 127.0.0.1
custom_domains = exp1.com
[web2]
type = https
local_port = 443
local_ip = 127.0.0.1
custom_domains = exp2.com
如果你的 Frps 服务端在外网,建议 Frpc 通过加密的代理连接 Frps,减少 IP 被墙的风险。这里推荐使用 Xray,它省略了对 https 流量的二次 tls 加密,使客户端访问本地的服务更快
将 127.0.0.1:7000 这个连接服务端的请求,通过本地的代理软件发送到 Frps 服务端
[common]
server_addr = 127.0.0.1
server_port = 7000
http_proxy = socks5://127.0.0.1:1083
token = 你的密码
...
请注意你的代理软件没有过滤本地 IP 的规则。否则请为 frps 服务端解析一个专用域名,并设置
server_addr = frps.exp.com
server_port = 7000
为了省略域名解析的过程,并且不开放服务端的7000端口,你可以设置服务端的hosts
将frps.exp.com
手动指定到本机
echo '127.0.0.1 frps.exp.com' >> /etc/hosts