适用于: 本地电脑(windows)或者Linux(本篇未介绍)
工具:FRP(fast reverse proxy)
系统:Linux、Windows
架构:x86、amd
Frp版本:frp_0.62.1_windows_amd64
准备工作:有一个云服务器(Liunx系统)、有个本地的windows的系统
第一步:下载 frp
首先在云服务上输入命令:uname -m
查看自己的电脑是什么系统架构
- 输出示例:
x86_64
: 表示 64 位 x86 架构(也称为 AMD64)。i686
或i386
: 表示 32 位 x86 架构。aarch64
: 表示 64 位 ARM 架构。mips
: 表示 MIPS 架构。
因为我的云服务器是AMD64,所以我下载的版本是amd的版本,进入到服务器的home目录下,执行以下的命令
# 下载 Linux x86_64 版本
wget https://github.com/fatedier/frp/releases/download/v0.62.1/frp_0.62.1_linux_amd64.tar.gz# 解压
tar -zxvf frp_0.62.1_linux_amd64.tar.gz
cd frp_0.62.1_linux_amd64# 赋予执行权限
chmod +x frps frpc
进入目录下之后,可以看到相关文件:
frpc:客户端文件,frpc.toml:客户端配置文件
frps:服务端文件,frps.toml:服务端配置文件
因为我的服务器是作为服务端用,所以只要配置frps.toml:服务端配置文件就可以了,并且在云服务器中启动frps服务
第二步:配置服务端(frps)
配置frps.toml的配置如下
# frps.toml - 服务端配置# 基础配置
bindPort = 7000 # frps 监听端口# 安全配置
[auth]
method = "token"
token = "dcx123456" # 请修改为复杂密码# Web 管理界面(可选)
[webServer]
addr = "0.0.0.0"
port = 7500
user = "admin"
password = "admin"# 日志配置
[log]
to = "./frps.log"
level = "info"
maxDays = 7
第三步:启动服务端
在云服务骑上启动服务,进入目录:
/home/frp_0.62.1_linux_amd64
运行与以下命令
# 前台启动(测试用)
./frps -c frps.toml# 后台启动(生产环境)
nohup ./frps -c frps.toml > frps.out 2>&1 &# 检查运行状态
ps -ef | grep frps
netstat -tunlp | grep 7000
在服务器中访问:云服务器IP+7500(云服务器的7500端口要在防火墙中放开)
以上为止,在服务器端的配置都算已经结束了
第四步:下载客户端(frpc)
因为我的客户端就是我家中的电脑,在局域网中,并且是windows系统,所以我要下载对应的版本的windows的frp服务:https://github.com/fatedier/frp/releases/download/v0.62.1/frp_0.62.1_windows_amd64.zip
下载完成之后,放在指定目录,解压缩
frpc.toml
配置文件
serverAddr = "云服务器ip"
serverPort = 7000
auth.token = "dcx123456" # 与服务端保持一致# SSH 服务穿透
[[proxies]]
name = "zhangbotcp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 8886
remotePort = 18886#视频流
[[proxies]]
name = "video2"
type = "tcp" #rtsp属于tcp协议
localIP = "192.168.1.123" #摄像头的内网ip地址
localPort = 554 #内网rtsp的端口,默认为554
remotePort = 30000 #远程映射端口
在文件夹中启动cmd命令:
frps.exe -c frps.toml
[frps/root.go:105] frps uses config file: frps.toml
[server/service.go:237] frps tcp listen on 0.0.0.0:7000
[server/service.go:305] http service listen on 0.0.0.0:80
[server/service.go:319] https service listen on 0.0.0.0:443
[frps/root.go:114] frps started successfully
[server/service.go:351] dashboard listen on 0.0.0.0:7500
之后就能访问:云服务ip+端口了
http路径设置:因为http的底层也是tcp协议,所以将本地的一个java服务的端口是:9119,映射出去,所以文件frpc.toml
按照如下配置即可
[[proxies]]
name = "screen"
type = "tcp"
localIP = "127.0.0.1"
localPort = 9119
remotePort = 9119
最后在浏览器访问:云服务器ip+9119即可