阿里云FRP内网穿透挂载多台服务器

1. FRP介绍

FRP (Fast Reverse Proxy) 是比较流行的一款。FRP 是一个免费开源的用于内网穿透的反向代理应用,它支持 TCP、UDP 协议, 也为 http 和 https 协议提供了额外的支持。你可以粗略理解它是一个中转站, 帮你实现 公网 ←→ FRP(服务器) ←→ 内网 的连接,让内网里的设备也可以被公网访问到。

2. 工具准备

内网服务器 Ubuntu系统

阿里云服务器 Ubuntu系统 (带有公网IP的云服务器都是可以的)

3. 部署

3.1 云服务器端

下载FRP工具

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

解压

tar -xvf frp_0.36.2_linux_amd64.tar.gz

进入安装目录

cd frp_0.36.2_linux_amd64

编辑frps.ini文件

[common] bind_port = 8000 #与客户端绑定的进行通信的端口

这里我们将云服务器端的bind_port设定为8000,但是云服务器对外依然需要一个或者多个端口进行访问,这里的端口数量取决于你有多少个内网服务器。

然后,需要在阿里云服务器上设置一下开放的端口

阿里云FRP内网穿透挂载多台服务器插图

首先进入云服务器 ESC中找到安全组–>管理规则–>入方向–>手动添加

阿里云FRP内网穿透挂载多台服务器插图1

按照需要的端口进行设置,在目的中输入你想要的端口,这边我们申请三个8000,8812,8813,保存即可。

阿里云FRP内网穿透挂载多台服务器插图2

启动

# 前台启动 ./frps -c ./frps.ini # 后台启动(正常使用后推荐后台启动) nohup ./frps -c ./frps.ini &

3.2 内网服务器端

下载–>解压–>进入安装目录和云服务器端一样

编辑frpc.ini文件 注意文件名称(云服务器那边是frps.ini文件)

服务器1

 [common] server_addr = xx.xx.xx.xx # 公网服务器ip server_port = 8000 # 与服务端bind_port一致 [ssh_1] type = tcp # 连接协议 local_ip = 127.0.0.1 # 内网服务器ip local_port = 22 # ssh默认端口号 remote_port = 8812 # 自定义的访问内部ssh端口号

服务器2

 [common] server_addr = xx.xx.xx.xx # 公网服务器ip server_port = 8000 # 与服务端bind_port一致 [ssh_2] type = tcp # 连接协议 local_ip = 127.0.0.1 # 内网服务器ip local_port = 22 # ssh默认端口号 remote_port = 8813 # 自定义的访问内部ssh端口号

需要注意的问题:

  • [common]部分两个服务器是一致的;
  • 一定要区别[ssh_1]和[ssh_2]如果都是[ssh]的话,另外一个启动时会报占用;
  • local_port是你在内网访问自己服务器用的端口,一般都是默认22,但是有特殊情况需要修改;
  • remote_port是刚才我们在云服务器上开放的端口,也是我们在外网访问时用的端口;

启动

# 前台启动 ./frpc -c ./frpc.ini # 后台启动(正常使用后推荐后台启动) nohup ./frpc -c ./frpc.ini &

启动之后出现 frpc permission denied 这个是权限不足 chmod 777 frpc 可以解决

4. 访问

ssh -p remote_port username@公网ip # 举例 ssh -p 8812 user@106.15.333.9

原文链接:https://blog.csdn.net/qq_29600137/article/details/132256271

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享