折腾笔记

折腾笔记

内网穿透-frp搭建教程

2022-03-12

内网穿透frp穿透教程来了,不多bb直接上教程,想了解frp具体原理和详情的请百度搜索名,这里最终演示的目的是通过frp登陆群晖。 本教程适用于一下人群: 没有公网想进行外网访问nas的 有公网在公网出问题增加一个外网访问保障的

友情提示,如果对linux或者命令不怎么熟悉的,就完全按照我的教程做(本教程已经尽力最简化了),我这里怎么操作,你就怎么操作,先保证成功,然后在根据自身个性化设置。

服务端操作

前提条件

  • SSH工具:FinalShell 下载地址
  • 一台具有公网ip的云服务器

1、 首先登陆腾讯云,重置系统为centos7.6(其他系统也行,不清楚系统之前区别的请完全按照本教程的操作步骤)。 重装系统 2、 重置服务器root密码。 ssh重置密码

3、 用ssh工具登陆云服务器。 登陆服务器 4、 因为frps官方安装需要vi编辑器和linux等命令,这里为了简便,采用github上开源的一键脚本安装frps,脚本有两个源,国外VPS用Github的源,国内的VPS建议使用Aliyun的源,要不可能很慢。

Aliyun(阿里云源)
#下载脚本(依次复制输入)
wget https://code.aliyun.com/MvsCode/frps-onekey/raw/master/install-frps.sh -O ./install-frps.sh
#设置脚本权限
chmod 700 ./install-frps.sh
#运行脚本
./install-frps.sh install

Github(谷歌源)
#下载脚本
wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install-frps.sh -O ./install-frps.sh
#设置脚本权限
chmod 700 ./install-frps.sh
#运行脚本
./install-frps.sh install

5、本教程使用的是腾讯云国内服务器,因此使用Aliyun的源,依次输入命令,如下图。 image.png 6、输入第三条命令以后回车进入配置界面,选择下载frps的下载地址,这里面我们选择【1】。 image.png 下面的一些端口号及配置请根据自身选择输入,不要完全按照我的照搬,如果不明白端口的意思就按照我的输入,在教程完成之后,明白了端口的意义,在根据自身需求修改。(尤其标记重要的请一定要修改) 7、 输入frps的通信端口,请根据自己需求输入,我这里输入【7000】. image.png 8、 输入http通信端口,我这里输入【8880】(重要)。 image.png 9、 输入https通信端口,我这里输入【8443】(重要)。 image.png 10、输入frp信息面板端口,我这里输入【8444】 image.png 11、分别输入管理面板用户名和密码,例如用户名为admin,管理密码为admin。 image.png 12、输入通信密码,我这里输入去、12345678(重要) image.png 13、设置域名,如果有就填写,没有就默认IP,这里我选择默认。 image.png 14、 接下来的步骤一路默认敲击回车就行 15、出现这个界面核对之前输入的信息是否正确,然后继续下一步。 image.png 16、 稍等片刻,会出现如下界面。 image.png 17、登陆腾讯云控制台找到【防火墙设置】开放7、8、9、10步骤的端口,这里我开放【7000】【8880】【8443【8444】】端口。(多个端口请用英文输入状态下的,隔开) image.png 18、 浏览器输入域名(ip):端口号,如果出现下面网页说明后台搭建成功,这里我输入 http://152.136.119.20:8444 用户名和密码为步骤11设置。 image.png 19、 服务器端成功部署完成,总体来说使用一键脚本部署还是非常简单的,感谢一键脚本的开发作者。

群辉客户端

  1. 登录群辉,打开file station在docker目录下新建frp文件夹,在桌面新建立一个文本文档,然后将文本文档拖动到frp目录中。 QQ截图20220312162726

  2. 双击文本文档,粘贴下如下命令,请根据自己情况灵活改变配置,这里举两个例子,一个是使用http协议访问NAS,一个是使用tcp协议登录ssh,然后ctrl+s保存,将文件重命名为frpc.ini

[common]
# 服务器ip
server_addr = 152.136.119.20
token = 12345678
# 端口
server_port = 7000
#名字,自定义
[nas]
# 类型                              
type = tcp
# 局域网内设备ip                         
local_ip = 192.168.31.11
# 局域网内设备端口           
local_port = 5000
# 监听端口*可以修改为任意字母,等号后面的数字            
remote_port = 5002     
#名字,自定义
[ssh]
 # 类型  ssh类型为tcp                              
type = tcp
# 局域网内设备ip                        
local_ip = 192.168.31.11
# 局域网内设备端口          
local_port = 22 
# 监听端口*可以修改为任意字母,等号后面的数字                
remote_port = 11122                

image.png 注意:所有监听端口都需要在服务区防火墙中开放。 3、 打开群辉docker→注册表搜索'stilleshan'选择stilleshan-frpc下载镜像,下载好以后再镜像中启动。 QQ截图20220312171422 4、 下载完成以后启动映像,容器名称默认,勾选使用高级权限执行容器,然后点击高级设置。 QQ图片20220312171705 5、 按照下面设置。 高级设置:勾选启用自动重新启动 存储空间:建立如下链接 image.png 映射路径为:/frp/frpc.ini 网络:勾选与docker host相同的网络 端口设置、链接、环境保持默认设置不用修改 6、按照第5步配置完成以后,容器成功启动,如下图。 image.png 7、这时候我们在浏览器中输入(域名)服务器ip:端口号即可以成功在外网访问。 域名方式:http://152.136.119.20:5002 image.png

总结

2021年的8月份的以前,因为在北京租的公寓房,必须使用房东的网,因此无法安装宽带,访问家里的nas服务器等服务都是frp穿透来实现的,一直也很稳定,因此我对frp很有好感,即使我现在有了一条还不错的公网宽带,我也会搭建一个frp备用,所以写了此篇文章记录一下,不错今天在搭建的时候无论用任何端口均发现会提示备案,如下。 image.png所以这里演示用服务器ip方式,如果国外服务器可以考虑用域名访问这样免去了记住ip的麻烦,当然记住ip不用怕,我也写过导航页服务,有兴趣的可以参考一下,谢谢大家。