Lazy loaded image
技术分享
Lazy loaded imageFrp 0.52及以上版本的全系统保姆级教程(包含frps和frpc的搭建与使用)
字数 3593阅读时长≈ 9 分钟
2024-3-13
2026-7-4
😀
在当下的环境中,家宽 公网IPv4 不是每家每户都有的,但是是谁都想搭建个网站玩玩。或者受不了各大云盘厂商的收费方式和手段想搭个 私有云 以解决自己高要求的存储需求。虽然有 IPv6 等手段解决,但是受限于路由器防火墙和国内IPv6普及率问题。目前的 IPv6 在国内更像是 IPv4 的一种补充手段,并没有实现真正意义上的替代。(毕竟没听过纯IPv6网站)
这时候我们就需要使用 Frp 之类的内网穿透软件来实现在无公网IPv4的情况下实现外网访问
(本篇不涉及对应系统的安装,只涉及frpc和frps的搭建和使用)
(本篇所演示的frps/frpc版本均为0.53.0版本(文章都写一半了来了个大版本更新…),过大的版本差距会导致无法连接等bug)
首先我们要搞清楚 Frp 可以用来干什么,可以用在什么地方?(以下只列举部分常用情景)
家用领域:文件共享,远程监控,远程私有云等游戏领域:我的世界联机/服务器,泰拉瑞亚联机/服务器等可以对局域网开放的联机游戏建站领域:个人主页搭建,博客搭建,反向代理等专业领域:RDP/SSH远程连接,Docker外网访问等
frps为服务端,frpc为客户端
搞清楚 Frp 可以干什么后,我们正式开始实操!
 

📝 1.frps的搭建与配置

1-1.frps常用配置文件介绍

因 frp 0.52.0 版本后支持 TOML、YAML 和 JSON 配置文件,并弃用 INI 配置文件,将在未来版本中删除对 INI 的支持 GitHub公告所以可能互联网上0.52.0版本以前的教程将在未来全部失效(如果你就用老版本当我没说)为了稳定与新功能,本篇的frps/frpc将全部采用 TOML 配置文件演示
frps 是一个轻量级的反向代理客户端,可以实现内网穿透的功能。frps 需要配合 frpc 客户端使用,frps 需要部署在具有公网 IP 的机器上,frpc 部署在需要穿透的内网服务所在的机器上
服务端连接端口(必填)
服务端身份认证及密码(可选,推荐)(OIDC身份认证可参考 gofrp文档 咱这只讲最常用的token)
服务端TLS连接加密(可选)
服务端Web界面(可选)(如果不配置WebSSL,网页将以http方式呈现)
服务端HTTP(s)监听端口(可选)(一般都是80和443,如果被nginx什么的占用了那只能填别的)
服务端端口限制(可选)
服务端连接数限制(可选)
更多常用配置文件请前往 gofrp 查阅
(咱要不是写这篇文章否则咱也不知道INI被弃用了。好多新配置咱自己也没搞明白,为了写这篇文章只能现学现卖)
 
 

1-2.在Windows中搭建frps并配置

1-2-1.准备资源
  • arm/arm64对应arm架构(不会有人用Windows on ARM吧),amd64对应x86架构
  • 如果遇到GitHub无法打开的情况下可以使用本站提供的 123Pan 下载

1-2-2.配置toml文件

以下配置文件只是示例,要根据自己的实际情况进行适当的删改
配置参数参考 1-1

1-2-3.配置启动文件

这里有两种方法,一种是配置好 xxx.bat 后放在
C:\Users\<user>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\
目录下,这样可以在用户登录后自动启动 xxx.bat 这种方法简单直接
还有一种方法,直接使用 nssm.exe 配置frps为系统服务,这种方法可以无需登录用户账号后台运行
咱自己用的是第二种方法,为了稳妥,两种方法都演示一遍
第一种: 在frps目录下新建 xxx.bat 文件,把下方内容填进去
右键创建快捷方式后将快捷方式扔进下方目录即可
C:\Users\<user>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\
如果之后要更新 frps.toml 配置文件,把cmd窗口关闭重启 xxx.bat 就没问题了
第二种:打开 nssm官网 下载 nssm.exe ,国内访问较慢可使用本站提供的 123Pan 下载
解压后在win64/32找到 nssm.exe 放在a目录里,打开 cmd 后cd到a目录下运行
输完命令回车后会弹个窗口,根据实际情况按下图填后按 Install service 即可
notion image
之后到 任务管理器→服务 中找到 frpc 服务后右键开始就没问题了。如果之后要更新 frps.toml 配置文件,再次找到此处右键重新启动就没问题了

1-3.在Linux中搭建frps并配置

1-3-1.准备资源

这一步跟Windows一样,只是选择的版本是Linux
  • arm/arm64对应arm架构,amd64对应x86架构
  • 如果遇到GitHub无法打开的情况下可以使用本站提供的 123Pan 下载
直接 wget 也可以,比如
如果国内GitHub无法下载,那就把文件下载到本地,再手动传到对应目录
无论是上述哪种方式下载,到最后都要解压到某目录下
比如我要解压到 /usr/local/frps 下,那么输入
到这时,我们文件就准备好了,下面开始配置并部署!

1-3-2.配置frps.toml

第一步我们先安装编辑器,如果已经安装过了请忽略此项
  • CentOS:
  • Ubuntu/Debian:
安装好编辑器后 cd 到 /usr/local/frps 目录下后编辑 TOML 配置文件
这时我们配置 frps.toml 文件
(以下配置文件只是示例,要根据自己的实际情况进行适当的删改)
配置参数参考 1-1
配置好后输入 :wq 保存即可

1-3-3.设置启动方式

可以cd到 /usr/local/frps 后使用 ./frps -c frps.toml
也可以直接使用
如果要设置开机自启,请新建一个frps的系统服务
然后在 frps.service 内填入:
保存退出后输入下方内容即可设置frps为开机自启
这时frps应该是正常运行了,如果是云服务器/宝塔有防火墙什么的记得开放端口
(其实Linux还有一种方法就是使用Docker部署,但是感觉容器多少会有点资源开销 还是不推荐)

1-4.在Nas系统中搭建frps并配置

因为我手上只有群晖的nas,所以将以群晖的系统来演示
其他系统其实都大差不差,都是基于Linux系统开发而来,只是有些nas是arm架构,需要换个frps版本而已。但是,私自乱动系统文件会造成一些很严重的后果,尽量别动! 但是如果能用Docker的话基本上所有系统都一样
这里有两个办法安装
一个是第三方套件(非常简单),一个是Docker(相对复杂)
我们先说第一个

1-4-1.使用第三方套件安装

群晖官方套件是没有收录frps的,我们需要添加第三方套件
这里我们打开 套件中心→右上角设置→套件来源→新增
我们添加 矿神源 名称随便填
添加完后点击确定,在左边我们可以看到新增 社群 此时我们打开它,找到 Frps服务端 后安装即可
安装完成后打开,里面是配置文件填写页面,将配置文件填好后保存即可自动运行。配置文件示例:
配置参数参考 1-1

1-4-2.使用Docker安装

一般情况下不推荐,因为有部分nas使用的是 ARM 架构,无法使用Docker。请确保自己的nas可以使用Docker后再安装
打开 Container Manager 如果没有就安装一个,群晖官方套件中心有
点击左侧注册表搜索 snowdreamtech/frps 后双击下载镜像
(标签latest就行,如果想指定版本就输入0.53.0,0.52.1之类的即可)
安装完成到容器里新增容器,映像选择 snowdreamtech/frps 容器名称随便填后点下一步
这时我们到外面手动创建个 frps.toml 配置文件后填写配置。配置文件示例:
配置参数参考 1-1
写好配置文件后保存并复制到nas共享文件夹docker目录内的frps文件夹内
示例:/volume1/docker/frps
此时我们返回 Container Manager 界面
在存储空间设置里选择 添加文件 选择我们刚才创建的 frps.toml 配置文件
示例:/volume1/docker/frps/frps.toml
出来后我们会发现他右边还要求填一个路径,这个是我们Docker容器里的配置文件路径
我们直接填写 /etc/frp/frps.toml 即可
一路下一步就行
这时我们就算是搭好了,记得关闭路由器防火墙或者系统防火墙什么的
 
 
 

🤗 总结归纳

总结文章的内容
这些就是公共frp的常用教程,其他请查看官方文档或者百度
很多地方跟自建其实都一样,只是截至 2023.12.18 公共frp大部分都没更新frp 0.52及以上版本
所以很多都是以前的老教程,gofrp上已经更新了,找不到了
但是翻翻互联网,还是能找到些老教程的

📎 参考文章

 
💡
有任何问题,欢迎您在底部评论区留言,一起交流~
上一篇
Windows 10 LSTC使用WSL编译OpenWrt
下一篇
PVE8 搭配Nvidia显卡开启VGPU

评论
Loading...