在局域网内利用frp及SSR搭建局域网代理服务器

本文讲述了如何在局域网内搭建VPN,使公网用户可以通过该VPN访问内网资源。

工作原理

工作原理如下图所示。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
     SSR服务端                                                 SSR客户端
(监听本机12345端口) ----------------- 连接IP为公网IP,连接端口为4321
| | | /|\
| 公网IP:**.**.**.** | |
\|/ \|/ |
----------- ---------- -------- |
| 内 | | 公 | | 客 | |
| 网 | | 网 | | | |
| 服 | ------FRP------ | 服 | ---INTERNET--- | 户 | |
| 务 | | 务 | | | |
| 器 | | 器 | | 机 | |
| A | | B | | | |
----------- ---------- -------- |
/|\ /|\ |
| | |
| | |
frp客户端 frp服务端 |
(主动向公网的7000端口发起连接) (监听本机7000端口) |
| |
(设置本地服务端口为12345) |
(设置远程服务端口为4321) ------------------------------------------------------

客户机向公网IP:4321发送数据报后,公网服务器B收到数据报并将其发送给本机7000端口所连接的内网服务器:12345。从而达到内网穿透的目的。

frp安装及配置

frp-S的安装及配置

安装命令如下:

1
2
3
wget https://github.com/fatedier/frp/releases/download/v0.16.0/frp_0.16.0_linux_amd64.tar.gz
tar -zxvf frp_0.16.0_linux_amd64.tar.gz
cd frp_0.16.0_linux_amd64

进入nano frps.ini编辑配置信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[common]
bind_port = 7000
dashboard_addr = $公网IP的域名$
dashboard_port = 7500
dashboard_user = $管理用户的用户名$
dashboard_pwd = $管理用户密码$
log_file = ./frps.log
log_level = info
log_max_days = 3
privilege_token = $ token值,简单起见可以填写公网IP的域名$
heartbeat_timeout = 90
privilege_allow_ports = 2000-3000,3001,3003,4000-50000
max_pool_count = 5
max_ports_per_client = 0
authentication_timeout = 900
tcp_mux = true

在公网服务器B后台运行frps

1
./frps -c ./frps.ini &

frp-C的安装及配置

1
2
3
wget https://github.com/fatedier/frp/releases/download/v0.16.0/frp_0.16.0_linux_amd64.tar.gz
tar -zxvf frp_0.13.0_linux_amd64.tar.gz
cd frp_0.13.0_linux_amd64

进入nano frpc.ini编辑配置信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[common]
server_addr = $公网IP的域名,为了让域名更有层次感,我填写的是zuccvpn.公网IP的域名$
server_port = 7000
log_file = ./frpc.log
log_level = info
log_max_days = 3
privilege_token = $ token值与服务器端填写一致,简单起见可以填写公网IP的域名$
pool_count = 5
tcp_mux = true
user = zucc
login_fail_exit = false
protocol = tcp

[zuccvpn]
type = tcp
local_ip = 127.0.0.1
local_port = 12345
use_encryption = false
use_compression = false
remote_port = 4321

在内网服务器A后台运行frpc

1
2
3
screen -dmS frp
screen -r frp
./frpc -c ./frpc.ini &

ssr的安装

请参考 SSR的安装

本文标题:在局域网内利用frp及SSR搭建局域网代理服务器

文章作者:Jerry

发布时间:2018年03月09日 - 19:28:33

最后更新:2018年03月14日 - 11:39:48

原始链接:https://jerryma0912.github.io/2018/03/09/10-frp-install/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。