前提准备
- 需要1台自己的云服务器
- 需要穿透的内网服务器
1.服务端配置(云服务器)
- 下载解压frp
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
tar -zxvf frp_0.33.0_linux_amd64.tar.gz
- 配置frps.ini
[common]
bind_port = 5443 #通信端口,和客户端一致
vhost_http_port = 8080 #http代理端口,可自定义
dashboard_port = 6443 #管理界面端口
dashboard_user = admin #用户名
dashboard_pwd = admin #密码
log_file = ./frps.log #日志相关
log_level = info #
log_max_days = 3
token = fsskfjsijfis #要和客户端一致
- 启动服务端服务(正常会返回端口号)
nohup ./frps -c ./frps.ini > frps.log 2>&1 &
- 关闭服务(先查询进程,再kill)
ps -aux|grep frp| grep -v grep
kill -9 pid
2.客户端配置(内网服务器)
- 下载解压
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
tar -zxvf frp_0.33.0_linux_amd64.tar.gz
- 配置frpc.ini
[common]
server_addr = 47.xx.x.xx # 公网ip
server_port = 5443 # 和刚才服务端的一致
token=fsskfjsijfis # token一致
[ssh]
type = tcp # 用来ssh连接内网服务器的配置
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000 # 映射的云服务器端口,访问6000时转到客户端的22
[web]
type = http # 可以用来跑服务的端口
local_port = 8080 #内网服务器的服务端口
remote_port = 8080 #映射的云服务器端口
custom_domains = 47.xx.x.xx # 公网ip或者自己的域名(绑定)
- 启动服务
nohup ./frpc -c ./frpc.ini > frpc.log 2>&1 &
- 访问和关闭服务
关闭和上边一致,先查询再kill
ssh -p 6000 root@47.xx.xx.xx #ssh
47.xx.xx.xx:8080 #访问8080端口服务
- 遇到的问题
- 正常启动时只会返回端口号
- 启动不了说明配置文件有问题
- 注意要云服务器要开放相应的安全组
- 可以查看日志找问题
6.未解决问题 - 怎么给内网服务器传文件呀!