当前位置:论坛首页 > Linux面板 > Linux面板教程

【教程贴】宝塔面板5分钟实现FRP内网穿透

发表在 Linux面板2024-9-4 21:32  关闭 [复制链接] 3 3827

此使用帮助适用宝塔面板9.2.0以上的版本(2024年9月5日后发布)

如何在5分钟内快速实现内网穿透?(首次配置可能需要5-10分钟)
下面我们通过宝塔面板的Docker应用服务,简单高效的达成目标

应用商店已经支持100+应用,欢迎更多应用服务商和宝塔面板用户联系我们持续更新,最下方有我们联系方式

【真实使用场景】
张三有一台服务器在X地区,因为特殊原因无法直接通过公网IP访问这台服务器的业务,此时张三有一台公网服务器,这台公网IP有独立的IP,希望通过内网穿透的功能,通过这台公网服务器来访问X地区服务器的指定业务
此时最简单的方案就是:
在有独立公网IP的服务器中安装【FRP服务端】,在X地区服务器中安装【FRP客户端】,将X地区服务器的某个端口穿透到有独立公网IP的指定端口,以进行访问

【场景实现】
准备服务器
  1. FRP服务端(假设它为张三的公网服务器)
  2. IP:192.168.11.62
  3. 系统:ubuntu22

  4. FRP客户端
  5. IP:192.168.11.63(假设它为张三的X地区服务器)
  6. 系统:麒麟v10

  7. 两台服务器都安装宝塔面板,并且都安装Docker
复制代码
实现目标
1.通过192.168.11.62的59022端口穿透192.168.11.63的22端口,实现SSH连接
2.通过192.168.11.62的40800端口穿透192.168.11.63的15700端口,实现HTTP协议连接(网站访问),15700端口会在客户端安装一个青龙面板应用

【FRP服务端安装】
点击宝塔面板 --> Docker --> 应用商店 --> FRP服务端 --> 安装
如果你是初次部署,建议所有信息都保持默认,以确保最终实现的成功率,等你真正研究透了再修改相关配置
QQ截图20240904200303.png

现在我们需要记住2个信息,
1.服务端的运行端口:这里我们用默认的7000
2.HTTP端口:这里我们用默认的40800

安装成功后,如果你没有保存前面输入的密码,点击详情即可查看
QQ截图20240904200523.png

随后我们先确保服务端的7500端口是可以访问的,如图(访问后上方会提示输入账号密码,按照提示填写即可):
QQ截图20240904200443.png
QQ截图20240904200454.png
当出现此页面,说明服务端已经部署成功,接着我们开始到客户端服务器部署客户端

【FRP客户端安装】
点击宝塔面板 --> Docker --> 应用商店 --> FRP客户端 --> 安装
这里需要注意一个地方,服务端IP(公网服务器请替换为公网IP)和服务端端口,请填写前面部署的服务端信息,如图:
QQ截图20240904200805.png
如果后面无法正常穿透,极有可能是这里填错了,请卸载客户端,重新安装配置后再试!
服务端7000端口无法访问?
开放安全组示例(必需):
阿里云
腾讯云

安装成功后,如果你没有保存前面输入的密码,点击详情即可查看
QQ截图20240904201130.png

此时使用浏览器访问客户端ip+7400,查看web页面是否可以正常访问,如果无法访问请尝试重新安装客户端,首次访问这里应该是空的
QQ截图20240904210856.png

【开始配置内网穿透】
准备客户端的服务
1.SSH服务一般服务器都有,监听的端口是22,所以不需要额外配置
2.安装一个青龙面板,监听15700端口,安装步骤如下:
QQ截图20240904202321.png

安装成功后,访问客户端IP+15700,验证是否可以正常访问
QQ截图20240904202830.png

客户端服务准备完成后,开始配置客户端
  1. [[proxies]]
  2. name = "ssh"
  3. type = "tcp"
  4. localIP = "127.0.0.1"
  5. localPort = 22
  6. # remotePort 是服务端将通过哪个端口访问客户端的22端口
  7. remotePort = 59022

  8. [[proxies]]
  9. name = "web"
  10. type = "http"
  11. # 这个是客户端某一个服务的端口,比如青龙面板就运行在15700端口上
  12. localPort = 15700
  13. # customDomains 填写域名,这里演示直接填写服务端的IP,可以替换成域名,如:xxx.bt.cn
  14. customDomains = ["192.168.11.62"]
复制代码
点击客户端的【configure】页面,将上面的配置粘贴到如图位置
QQ截图20240904202013.png
粘贴后点击上方的【upload】按钮更新客户端配置文件,如果配置文件无误,此时客户端首页会显示2行已经配置好的穿透内容
QQ截图20240904211410.png

此时再回到服务端的web控制台,首页会出现1个客户端和2个正在穿透的服务
QQ截图20240904203401.png

再点击 Proxies --> TCP,此时会出现一个正在监听的TCP穿透服务,这个就是刚刚配置的客户端SSH,打开SSH终端,使用服务端的IP+59022端口访问
QQ截图20240904203701.png
查看连接成功后的SSH终端,这里查询IP已经出现了客户端的IP地址,SSH穿透已经成功
注意:59022端口并未在Docker创建时直接控制,如果59022端口无法访问,需要到【安全】-->【系统跟防火墙】添加端口访问

接下来验证HTTP服务是否穿透成功,点击HTTP,会出现监听的HTTP穿透服务,打开浏览器,使用服务端IP+40800端口访问
QQ截图20240904203835.png
查看访问结果,是客户端的青龙面板,HTTP穿透已经成功

目标已经达成,如果你还有疑问,可以直接查阅FRP原始帮助文档

如果无法正常安装/拉取镜像,请尝试设置加速站:https://www.bt.cn/bbs/thread-134771-1-1.html

注意:除了SSH服务的端口,应用内其他端口不经过系统防火墙,勾选【允许外部访问】后是直接允许外部访问,如果您是云服务器,勾选【允许外部访问】后,请到服务器安全组放行此数据库的端口
开放安全组示例(必需):
阿里云
腾讯云

使用遇到问题欢迎帖子留言,或者加入Docker官方交流QQ群:662047798
使用道具 举报 只看该作者 回复
发表于 2024-9-23 19:46:40 | 显示全部楼层
frp的镜像没有了
使用道具 举报 回复 支持 反对
发表于 2024-9-24 09:19:47 | 显示全部楼层

如果你是安装了宝塔面板 9.0 lts稳定版的话,docker应用商店是搜不到的,需要宝塔面板 9.2.0 正式版的docker应用商店才可以

镜像是正常的,snowdreamtech/frpc
你这边部署遇到什么问题了?可以附带截图详细说说,也许我可以帮到你

https://hub.docker.com/r/snowdreamtech/frpc
https://gofrp.org/zh-cn/docs/

QQ截图20240924092126.png
QQ截图20240924091906.png
使用道具 举报 回复 支持 反对
发表于 2024-11-18 17:22:51 | 显示全部楼层
安装frp服务端后,web页面无法访问,已在宝塔和阿里云放行该端口
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

立即付费处理

工作时间:09:00至24:00

快速回复 返回顶部 返回列表