Frp客户端实现反向代理

当我们使用公益的Frp服务端时,我们对Frp服务器没有管理权限,此时,我们可用的端口可能就只有一个,为了能够在内网机器部署多个应用,我们就需要在内网机实现反向代理和Https。那么要如何实现呢?请听我娓娓道来。

域名购买

要实现反向代理,必须要有一个域名,建议在阿里云购买域名,因为阿里云域名可以很方便的实现 Let's Encrypt 证书 DNS 认证及自动更新。

安装 Frp 客户端

软件安装教程,请自行在网上获取,本人采用 scoop 安装,可以使用 scoop install frp 进行安装。

配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 连接frp服务器
[common]
server_addr = xxx.xxx.xxx.xxx
# frp 服务连接的端口
server_port = 4431
token= asfsdf32894sdf

# 网站1
[http1]
type = https
custom_domains = web1.example.com
local_port = 443

# 网站2
[http2]
type = https
custom_domains = web2.example.com
local_port = 443

客户端这样设置,是为了将所有流量原封不动的转发到本机的443端口,然后再由本机的宝塔面板安装反向代理软件(推荐 nginx)来反向代理请求。

安装宝塔面板

不论是 Linux 或者 Windows Server,都可以安装宝塔面板。宝塔面板可以很方便搭建网络环境,也可以很方便实现 SSL 证书的自动更新。对于新手来说,非常友好。

下载地址:https://www.bt.cn

宝塔面板安装完成后,就可以在上面建立网站了,由于所有流量都聚集在本机的 443 端口,所以,宝塔面板首先要安装反向代理软件,然后再将请求代理到不同的网站。

由于 frp 原封不动地转发了 https 流量,所以 https 的证书就可以在反向代理软件中配置了。宝塔面板网站安装及申请 SSL 教程请在网上自行查找。