项目地址:https://github.com/fatedier/frp
从此处下载对应系统的frpc:https://github.com/fatedier/frp/releases
官方文档:https://gofrp.org/zh-cn/docs/overview/
启动方式
使用命令行,执行:
frpc.toml
为配置文件
frpc -c frpc.toml
基础配置
打开frpc.toml
,在最上面填上以下内容:
serverAddr = "your.domain.or.ip" //填写服务器端地址
serverPort = 5443 //填写服务端端口,默认为5443
auth.token = "token" //填写服务端token
TCP与UDP配置
[[proxies]]
name = "name" //通道名称
type = "tcp" //通道类型 tcp 或 udp
localIP = "127.0.0.1" //本地地址
localPort = 22 //本地端口
remotePort = 51000 //远程端口
HTTP配置
“HTTP 和 HTTPS 协议的一个特点是发送的请求都具有 Host 字段,通过该字段描述要访问的服务。基于这个特点,frp 服务端只需要监听在一个端口(通过 vhostHTTPPort
和 vhostHTTPSPort
指定)。就可以根据请求的 Host 来决定需要路由给哪一个代理,而不需要像 TCP 类型那样为每一个服务绑定一个端口。”
HTTP配置的优点就是,可以不需要通过服务器+端口的方式来访问通道,而是可以通过自己的域名来访问,只需要将域名CNAME到frp服务器即可。
[[proxies]]
name = "web" //通道名称
type = "http" //通道类型 http
localPort = 80 //本地端口
customDomains = "test.yourdomain.com" //自定义域名
注:如果 frp 服务器配置了 subdomainHost
,则 customDomains
中不能是属于 subdomainHost
的子域名或者泛域名。
HTTPS配置
HTTPS配置与HTTP配置基本一样,并且需要将域名CNAME到frp服务器。
[[proxies]]
name = "web" //通道名称
type = "https" //通道类型 https
customDomains = "test.yourdomain.com" //自定义域名
[proxies.plugin]
type = "https2http" //不要动
localAddr = "127.0.0.1:80" //本地地址以及端口
# HTTPS 证书相关的配置
crtPath = "./server.crt" //crt位置
keyPath = "./server.key" //key位置
hostHeaderRewrite = "127.0.0.1" //重写host
requestHeaders.set.x-from-where = "frp"
Comments | NOTHING