背景:在家中闲置电脑上搭建服务,提供远程开发环境(如Mysql、Redis等等)。我的云服务器和家中闲置电脑都为Ubuntu系统。
一、Frp简介
Frp(Fast Remote Port Forwarding)是一款高效、安全、易用的远程端口转发工具,可以在不暴露服务的情况下,通过公网访问内网中的服务。Frp支持多种协议,包括HTTP、HTTPS、TCP等,可以轻松实现反向代理、内网穿透、SSH隧道等功能。
二、Frp下载
根据自己环境选择合适的版本,我这里使用的是frp_0.52.3_linux_amd64.tar.gz。在远程服务器上使用arch查看系统架构,选择对应的版本。
下载后解压得到以下文件。
三、Frp安装
1、修改服务端配置文件frps.toml
bindPort = 7000 # 服务运行端口号
auth.method = "token" # 认证方式
auth.token = "12345678" # 认证密钥
webServer.addr = "0.0.0.0" # 不限制IP访问
webServer.port = 7500 # dashboard端口
webServer.user = "admin" # dashboard登录账号
webServer.password = "admin" # dashboard登录密码
2.修改客户端配置文件frpc.toml
serverAddr = "remoteip" # 远程服务器公网IP
serverPort = 7000 # 远程服务器Frp运行端口
[[proxies]]
name = "test-tcp" # 连接名称
type = "tcp" # 连接类型
localIP = "127.0.0.1" # 本机地址
localPort = 22 # 本机端口
remotePort = 6000 # 远程端口
3、“分包”
我们可以将文件分为 frp_s(server) 和 frp_c(client) ,frp_s装在云服务器,frp_c装在家中闲置电脑上。
四、Frp运行
1、运行服务端
进入服务器frp_s所在目录
./frps -c ./frps.toml
2、运行客户端
./frpc -c ./frpc.toml
3、验证
ssh -p 6000 root@远程服务器IP