【傻呱呱】远程访问家中设备(frp内网穿透)

本文详细指导了如何在云服务器上安装1Panel管理面板,以便可视化操作Docker,接着配置frps和frpc实现内网穿透,包括设置端口、防火墙规则和客户端配置。通过实例演示,确保能够从任何地方访问家庭NAS设备。
摘要由CSDN通过智能技术生成

前期准备

  • 云服务器一台
  • ssh连接工具(这里我用finalshell
  • 家中设备(这里我用群晖NAS)

服务端


安装管理面板

  • 目的是可以可视化操作docker(不用敲代码)

  • 这里我使用1panel,当然也可以用其他的,能安装docker的面板都行,注意如果不是全新服务器不能安装宝塔面板,因为会被清除数据

  • 使用ssh连接工具连接云服务器

  • 运行下面的1panel面板一键安装命令

    curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh
    
  • 若报错:"curl:command not found " ,如何解决?

  • 根据提示一步一步设置访问面板的端口和账号密码

  • 云服务器Web防火墙放行设置好的端口

请添加图片描述

  • 面板安装成功后没有显示面板的登录网址?
    关闭当前ssh连接再重新连接
    运行下面的命令即可获取面板登录网址

    1pctl user-info
    

请添加图片描述

  • 用浏览器登录面板

请添加图片描述


安装frps

  • 其他面板请自行安装docker和创建容器   镜像网址   镜像包
  • 1panel面板直接在应用商店里搜索 “frps”

请添加图片描述

请添加图片描述

  • 配置frps.toml文件

请添加图片描述
请添加图片描述
请添加图片描述

  • 添加这两行代码,表示设置连接这台服务器的密码,客户端必须有token才能连接,123123替换成自己的密码
    auth.method = "token"
    auth.token = "123123" 
    

请添加图片描述

  • 每次修改完配置文件都需要重启服务

请添加图片描述
请添加图片描述


设置防火墙(重要*)

设置系统防火墙

  • 必须开启系统防火墙才能正常使用frp
  • 部分云服务器默认不带系统防火墙,需要手动安装   如何安装?
  • 开启系统防火墙

请添加图片描述

  • 开启防火墙后立即放行 “7000” 、“7500” 端口也就是frp服务端所需要用到的端口,根据 “frps.toml” 里设置的端口来放行,不要照抄

请添加图片描述

请添加图片描述

  • 上面只演示了放行 “7000” 端口,使用同样的步骤再放行 “7500” 端口,根据 “frps.toml” 里设置的端口来放行,不要照抄
     

设置云服务器Web防火墙

  • 在云服务器网页界面的防火墙(安全组策略)里也同样立即放行 “7000” 、“7500” 端口,根据 “frps.toml” 里设置的端口来放行,不要照抄

  • 下面以腾讯云为例

请添加图片描述

请添加图片描述

  • 上面只演示了放行 “7000” 端口,使用同样的步骤再放行 “7500” 端口,根据 “frps.toml” 里设置的端口来放行,不要照抄
     
     

客户端


安装docker

  • 目的是为了能够方便管理frpc程序(亦可运行多个frpc程序   如何操作?)
  • 群晖系统直接在套件中心下载安装即可
  • 其他平台请在docker官网下载安装

安装frpc

  • 下面以群晖系统为例,其他平台也都大同小异
     
  • 启用docker镜像下载加速(国内网络下载慢)
    网易云镜像源:https://hub-mirror.c.163.com
    百度云镜像源:https://mirror.baidubce.com

请添加图片描述

  • 下载frpc镜像

请添加图片描述

  • 配置frpc.toml文件(重要*)

  • 根据下面的拓扑图可以知道frp服务器就相当于一台有了公网IP的 “路由器” ,通过编辑frpc配置文件可以让连接到这台 “路由器” 的客户端的内网服务的端口暴露到公网,从而可以用公网访问

请添加图片描述

  • 下载frpc.toml配置文件模板   点击下载
  • 编辑frpc.toml配置文件

请添加图片描述

  • 注意:“name” 项、“remotePort” 项不能重复
  • 特别说明:“localIP” 可以换成局域网内的其他设备,从而实现穿透没有安装frp客户端的设备,也就是说局域网内只需要有一台设备安装了frp客户端就行了

 

  • 编辑完frpc.toml配置文件后先别急,根据上上面的拓扑图可以知道,必须放行所有的 “remotePort” 端口,内网服务才能正常被访问,所以此刻立即回到1Panel面板云服务器网页界面放行所需端口

  • 放行完端口后将frpc.toml配置文件放到一个能找到的目录里,最好新建一个frp文件夹

  • 下面以群晖系统为例

请添加图片描述

  • 创建docker容器

请添加图片描述
请添加图片描述
请添加图片描述

请添加图片描述

  • 装载路径
    /etc/frp/frpc.toml
    
  • 镜像网址的网页里也可以找到装载路径,理论上不会变

请添加图片描述

请添加图片描述

  • 此时已经能用公网访问内网服务了

 


验证是否穿透成功

  • 使用云服务器的IP地址加上英文冒号加上端口号( 例如:149.28.80.154:12346 )
  • 可以看到成功用公网访问了群晖NAS,说明穿透成功,这样无论在天涯海角只要有网,就可以访问家里的这台NAS了(前提是服务器公网IP没被墙)

请添加图片描述


注意事项

  • 若后续修改了frpc.toml配置文件,则需要重启服务

请添加图片描述

  • 再次强调需要在 “1panl” 面板云服务器网页界面放行所有客户端所需要用到的 “remotePort” 端口以及服务端需要用到的 “7000” 、 “7500” 端口,根据 “frps.toml” 里设置的端口来放行,不要照抄

请添加图片描述
请添加图片描述

  • 如果重启了frp服务端,frp客户端也要重启

 


常见报错

  • 进入容器的日志界面查看是否报错

请添加图片描述

未报错

  • 下面这样没有报错,表示成功连接了服务端

请添加图片描述

报错

  • 下面这样报错说明没有放行相应端口或 “frpc.toml” 里的IP地址填错了

请添加图片描述

  • 下面这样报错说明端口被其他服务占用,"frpc.toml"里的 “remotePort” 改为其他端口即可,如果明明没有其他服务占用端口,那试一试重启frp服务端,注意客户端也要重启

请添加图片描述

  • 下面这样报错说明当前客户端的网络有问题,暂时的解决方法是换一台设备,我的Nas在远程操作就会报这个错,然后我用OpenWrt就没问题,有知道原因的大佬可以在评论区留言一下,感谢!

请添加图片描述

 


相关链接

GitHub   中文文档


END
   
  • 27
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值