1、准备工作
需要下载好frp安装包Linux端的和Windows端的安装包
网址:Releases · fatedier/frp (github.com)https://github.com/fatedier/frp/releases
2、下载frp_0.53.2_linux_arm64.tar.gz和
frp_0.53.2_windows_amd64.zip
3、服务端部署frp
(1)解压缩、移动新目录
[server root ~] # ls frp_0.52.3_linux_amd64.tar.gz
frp_0.52.3_linux_amd64.tar.gz
[server root ~] # tar -xf frp_0.52.3_linux_amd64.tar.gz
[server root ~] # ls frp_0.52.3_linux_amd64
frpc frpc.toml frps frps.toml LICENSE
[server root ~] # mv frp_0.52.3_linux_amd64/ frp/
(2)服务端配置文件(服务端是frps.toml,客户端是frpc.toml)
bindPort = 7000
dashboard_port = 7500 dashboard_user = admin
dashboard_password = admin
[common]
:通用设置区块,包含所有服务端配置。bindPort
:指定 FRP 服务端监听的端口。客户端将连接到这个端口。dashboard_port
:指定 Web 管理仪表板的端口。允许通过浏览器访问仪表板。dashboard_user
和dashboard_pwd
:设置访问 Web 管理仪表板的用户名和密码。
(3)客户端配置文件(以下以Windows为例)
toml
[common]
server_addr = "x.x.x.x" # 服务器的 IP 地址或者公网IP
server_port = 7000 # 服务端配置中的 bindPort[ssh]
name = "test"
type = "tcp"
localIP = "127.0.0.1"
localPort = 3389 # 如果是Linux系统,这边改成22端口
remote_port = 6000 # 服务器上的端口
[common]
:通用设置区块,包含所有客户端配置。server_addr
和server_port
:指定 FRP 服务端的地址和端口,客户端通过这些信息连接到 FRP 服务端。[ssh]
:一个具体的代理配置,表示将本地的 SSH 服务映射到远程的端口。type
:代理类型,可以是tcp
、udp
或http
等。remote_port
:FRP 服务端上公开的端口。
4、启动服务端
(1)传统启动
# 先cd到frps所在目录
./frps -c ./frps.toml &
(2)系统服务启动
[server root ~] # vim /etc/systemd/system/frps.service
[Unit] # 服务名称,自定义
Description=Frp Server Service
After=network.target[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/frps -c /etc/frp/frps.toml #实际的frp目录启动路径[Install]
WantedBy=multi-user.target# 添加执行权限
[server root ~] # chmod +x /etc/systemd/system/frps.service
[server root ~] # ls -l /etc/systemd/system/frps.service
-rwxr-xr-x 1 root root 232 Sep 2 09:03 /etc/systemd/system/frps.service
[server root ~] ## 需要将frp目录下的frps执行程序复制到 /usr/bin/frps 目录下,并添加执行权限
[server root ~] # cp -r frp/frps /usr/bin/
[server root ~] # chmod +x /usr/bin/frps
[server root ~] # ls -l /usr/bin/frps
-rwxr-xr-x 1 root root 16789504 Sep 2 09:02 /usr/bin/frps
[server root ~] #
(3)重新加载系统文件即可
systemctl daemon-reload
[server root ~] # systemctl daemon-reload
[server root ~] # systemctl restart frps.service
[server root ~] # systemctl status frps
● frps.service - Frp Server ServiceLoaded: loaded (/etc/systemd/system/frps.service; disabled; vendor preset: enabled)Active: active (running) since Mon 2024-09-02 09:04:27 HKT; 3s agoMain PID: 1436557 (frps)Tasks: 6 (limit: 4393)Memory: 8.5MCGroup: /system.slice/frps.service└─1436557 /usr/bin/frps -c /etc/frp/frps.tomlSep 02 09:04:27 server systemd[1]: Started Frp Server Service.
Sep 02 09:04:28 server frps[1436557]: WARNING: ini format is deprecated and the support will be removed in the future, ple>
......
Sep 02 09:04:28 server frps[1436557]: 2024/09/02 09:04:28 [I] [root.go:111] frps started successfully
[server root ~] #
5、启动客户端以及配置
(1)Windows文件如下,需要编辑frpc.toml配置文件
serverAddr = "x.x.x.x" # 服务器的IP或者公网IP
serverPort = 7000 # 服务端的bindPort监听端口7000[[proxies]] # 标识一个代理规则的开始
name = "test" # 定义这个代理规则的名称
type = "tcp" # 指定代理类型
localIP = "127.0.0.1" # 设置本地内网服务的 IP 地址
localPort = 3389 # 设置本地内网服务的端口号
remotePort = 6000 # 设置 FRP 服务器上公开的端口号(和服务端一样)
(2) 启动编辑Windows cmd脚本,保存为.bat后缀文件,双击执行即可
@echo off
if "%1"=="show" goto begin
start mshta vbscript:createobject("wscript.shell").run("%~f0 show",0)(window.close)&&exit
:begincd /d C:\Users\(这里填写存放Windows系统的实际路径)
frpc.exe -c frpc.toml
exit
6、远程测试
Windows远程输入服务端IP+端口
注意:云服务器防火墙需要放行相关端口才能访问。
企业版Windows需要开启允许远程设置:Windows设置→系统→远程桌面开启
家庭版Windows因为不允许开启远程桌面,需要下载RDP软件:GitHub - anhkgg/SuperRDP: Super RDPWrap
软件的具体使用方法安装包里边有详细说明,以上有不懂的或者错误的地方欢迎指出,谢谢~~