admin管理员组

文章数量:1558085

1、原理

FRP是一个内网穿透的神器,可以通过一个有公网IP的服务器搭建FRP服务端,去转发流量实现内网穿透。

2、下载【linux服务端】frp

FRP在Github开源:https://github/fatedier/frp

在releases页面下载对应的版本。压缩包只是对应平台不同,每个包解压都包含服务器端和客户端。

登录阿里云服务器,在 home 目录下 执行 wget命令下载

wget https://github/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz

下载完毕,解压

tar -xvf frp_0.37.0_linux_amd64.tar.gz

解压完毕后进入目录

[root@iZbp15u7gzwghc34ibt80dZ /]# cd /home/zhanghl/frp_0.37.0_linux_amd64
[root@iZbp15u7gzwghc34ibt80dZ frp_0.37.0_linux_amd64]# ll
总用量 22656
-rwxr-xr-x 1 zhanghl_halo docker  9973760 6月   3 01:02 frpc
-rw-r--r-- 1 zhanghl_halo docker     9503 6月   3 01:06 frpc_full.ini
-rw-r--r-- 1 zhanghl_halo docker      126 6月   3 01:06 frpc.ini
-rwxr-xr-x 1 zhanghl_halo docker 13180928 6月   3 01:02 frps    
-rw-r--r-- 1 zhanghl_halo docker     5051 6月   3 01:06 frps_full.ini
-rw-r--r-- 1 zhanghl_halo docker      131 7月   7 09:10 frps.ini
-rw-r--r-- 1 zhanghl_halo docker    11358 6月   3 01:06 LICENSE
drwxr-xr-x 2 zhanghl_halo docker     4096 6月   3 01:06 systemd
[root@iZbp15u7gzwghc34ibt80dZ frp_0.37.0_linux_amd64]#

解压文件夹内:

“frps”、“frps_full.ini”、"frps.ini"是放在服务器端运行的可执行文件和配置文件。

“frpc”、“frpc_full.ini”、"frpc.ini"是放在客户端端运行的可执行文件和配置文件。

3、修改【服务端】配置

修改配置文件

使用命令vi frps.ini修改frps.ini文件,然后保存退出:

[common]
bind_addr=0.0.0.0
bind_port = 7000
token=12345678

dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin123

说明:

"bind_addr"是服务器本地IP,不改。

"bind_port"是frp监听端口。

"token"是验证token建议设置上。

"dashboard_port"是frp面板端口。

“dashboard_user”"dashboard_pwd"是面板的账户密码。

除了"bind_addr"参数之外的其他参数,都可以根据需求自行修改,务必记住改过的参数。

配置项中用到的端口,需要在服务器上开启

4、然后给服务器端frps赋予执行权限

sudo chmod 755 ./frps

5、运行【服务端】frps

./frps -c ./frps.ini

启动成功标记日志如下:

[root@iZbp15u7gzwghc34ibt80dZ frp_0.37.0_linux_amd64]# ./frps -c ./frps.ini
2021/07/07 10:32:35 [I] [root.go:200] frps uses config file: ./frps.ini
2021/07/07 10:32:35 [I] [service.go:192] frps tcp listen on 0.0.0.0:7000
2021/07/07 10:32:35 [I] [service.go:294] Dashboard listen on 0.0.0.0:7500
2021/07/07 10:32:35 [I] [root.go:209] frps started successfully
2021/07/07 10:32:35 [I] [service.go:449] [fd33f13ab3697a1e] client login info: ip [125.122.67.170:22446] version [0.37.0] hostname [] os [windows] arch [amd64]
2021/07/07 10:32:35 [I] [service.go:449] [afe1c58d9e50f5d8] client login info: ip [125.122.67.170:22447] version [0.37.0] hostname [] os [windows] arch [amd64]
2021/07/07 10:32:35 [I] [tcp.go:63] [fd33f13ab3697a1e] [RDP] tcp proxy listen port [33389]
2021/07/07 10:32:35 [I] [control.go:444] [fd33f13ab3697a1e] new proxy [RDP] success

6、访问frp控制面板

面板仅供参考,可用可不用。访问 http://服务器ip:7500

上面配置的7500端口,使用上面配置的用户名和密码 admin/admin123

登陆可以看到如下界面:

6、下载【Win客户端】frp

8、修改【客户端】配置

解压后修改这个文件“frpc.ini”

本地演示用到程序是windows远程桌面,使用3389端口。需要用frp将windows客户端的3389转发到服务器端上。比如将客户端的3389转发到服务器端的33389端口。

用文本编辑器打开"frpc.ini"文件

[common]
server_addr = 公网IP
server_port = 7000
token=12310086

[RDP]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 33389

9、运行【客户端】frp

.\frpc.exe -c .\frpc.ini

10、一键启动【客户端】

@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit

:begin
REM
.\frpc.exe -c .\frpc.ini

📎start-client.bat 可直接下载该脚本,每次双击打开即可后台运行客户端frp

11、后台运行【服务端】、【客户端】

## 服务端后台运行
nohup ./frps -c frps.ini >/dev/null 2>&1 &
## 客户端后台运行
nohup .\frpc.exe -c .\frpc.ini >/dev/null 2>&1 &

##  说明:>/dev/null 2>&1 & 表示丢弃

12、客户端连接成功标记

13、配置完毕,可以通过外网访问了

本文标签: 阿里内网服务器