1、前言

服务器简介:雨云 - 新一代云服务提供商 - 智识家 (sw0.top),优势是带宽大还便宜,若无备案域名可购买美区和香港服务器。

服务器官网:雨云 - 新一代云服务提供商 (rainyun.com)

  • 本教程使用FrpsFrpc进行内网穿透,其中Frps需要自购服务器安装,若无法购买服务器则本教程对你无用;

  • 另外还需拥有自己的域名,雨云免费二级域名好像不能申请证书;

  • 推荐购买国内的主机,使用NAT网络不购买独立IP,国内主机独立IP价格很贵,这种方式虽然不能省略端口号,但是可以确保访问速度很快,NAT给的10个端口基本够用,开一个端口作为反向代理,不同站点使用不同二级域名访问;

  • Frps:穿透服务端,部署在服务器;

  • Frpc:穿透客户端,部署在NAS中;

  • 由上述链接注册或输入注册码zsj的用户,可在控制台 - 积分中心 - 积分商城 - 优惠券专区处领取折扣优惠券,湖北地区受限不能使用

2、Frp安装

2.1、服务器安装1panel面板

2.1.1、服务器仅做穿透时,只需购买1核1G的即可;

2.1.2、服务器推荐安装debain11系统,预装APP不选,稍后自行安装;

2.1.3、使用ssh工具连接服务器

  • 连接信息如上图,端口​:22​。

2.1.4、安装1panle

服务器 安装1Panel服务器运维管理面板 - 智识家|智识笔记 (sw0.top)

2.2、安装OpenResty

  • 安装Nginx代理服务器,端口80443不要修改。

2.3、Frps安装

2.3.1、镜像

snowdreamtech/frps:latest

2.3.2、安装Frps

  • 服务端口:Frpc的服务连接端口,需要确保服务器防火墙放行此端口;

  • Dashboard 端口:Frps服务端管理WEB端口,可以被反向代理到80端口下;

  • 用户名和密码:输入一个只会被自己记住的组合即可,此信息用于登录WEB管理端;

  • 注意:使用其他方式按照请确保Frps网络为host;

2.3.2.1、Frps默认配置文件

  • bindPort:服务端口

  • webServer.addr:不要修改;

  • webServer.port:Frps的web管理端口;

  • webServer.userwebServer.password:Frps的web管理端账号和密码。

2.3.2.2、Frps完整的配置文件

  • 此文件不要直接使用,按需摘取所需配置即可;

  • 如无特殊需求,此文件中的配置节一般用不到。

2.3.3、修改Frps配置,增加token认证

auth.method = "token"
auth.token = "xxxxxx"
  • 增加2段代码,xxxxxx必须修改为强密码;

  • 重启Frps服务端,使配置生效。

2.4、Frpc安装

2.4.1、镜像

snowdreamtech/frpc:latest

2.4.2、基础设置

  • 重启策略:容器退出时总是重启容器。

2.4.3、网络

  • 必须选择host

  • 必须选择host

  • 必须选择host

2.4.4、存储空间

  • 装载路径:/etc/frp/frpc.toml

  • 文件:必须选择一个文件作为配置文件映射。

2.4.4.1、配置文件内容

serverAddr = "Frps服务端的ip或者域名"
serverPort = Frps服务端的服务端口

webServer.addr = "0.0.0.0"
webServer.port = 20000
webServer.user = "xxx"
webServer.password = "xxx"
webServer.pprofEnable = false

auth.method = "token"
auth.token = "xxxxxx"

  • serverAddr必须是Frps的ip或域名

  • serverPort必须是Frps的服务端端口,本示例为:30000;

  • webServer.addr不要修改;

  • webServer.port是Frpc的管理端口;

  • webServer.userwebServer.password是Frpc的管理端账户和密码;

  • webServer.pprofEnable不懂不要修改;

  • auth.methodauth.token需要和Frps配置的完全一致

  • 保存上述文本内容为:frpc.toml文件,上传到NAS中,作为Frpc的映射配置文件。

2.4.4.2、Frpc的完整配置文件

  • 此文件不要直接使用,按需摘取所需配置即可;

  • 如无特殊需求,此文件中的配置节一般用不到。

3、Frpc的WEB服务

3.1、登录管理端,添加穿透服务

[[proxies]]
name = "Qbittorrent"
type = "tcp"
localIP = "127.0.0.1"
localPort = xxx
# If remote_port is 0, frps will assign a random port for you
remotePort = 41001

  • 每增加一个穿透服务,就需要增加一组上述代码;

  • name:穿透服务的名称,显示在Frps的连接窗口;

  • type:一般我们的服务只要选择TCP即可,其他特殊需求自行研究;

  • localIP:NAS端的ip,我们使用的host网络,所以默认127.0.0.1即可;

  • localPort:穿透服务的端口,必须是容器的本地端口,不是容器端口,切记;

  • remotePort:在服务端的映射端口,选择一个未被使用的端口即可,范围推荐:10000-50000之间;

  • 修改后点击上方Upload按钮提交穿透服务;

  • 注意:基础配置发生变更,一般需要重启Frpc后生效,提交穿透服务不需要重启。

  • 注意:基础配置发生变更,一般需要重启Frpc后生效,提交穿透服务不需要重启。

  • 注意:基础配置发生变更,一般需要重启Frpc后生效,提交穿透服务不需要重启。

3.2、反向代理穿透服务,隐藏端口号

  • 创建反向代理网站;

  • 主域名:访问这个服务的域名,可以是二级域名;

  • 代号:网站基本配置的文件夹名称,自行定义即可;

  • 代理地址:ip:127.0.0.1端口即为代理的服务端口号,上述示例中QB的穿透端口为41001

  • 注意:代理地址选择http还是https,取决于穿透服务的访问方式,若穿透服务本身是https访问的这里就必须选择https方式,否则选择http即可。

  • 注意:代理地址选择http还是https,取决于穿透服务的访问方式,若穿透服务本身是https访问的这里就必须选择https方式,否则选择http即可。

  • 注意:代理地址选择http还是https,取决于穿透服务的访问方式,若穿透服务本身是https访问的这里就必须选择https方式,否则选择http即可。

3.3、对特定服务进行账号密码验证

  • 只需对该反向代理网站设置密码访问即可完成对站点加密。

4、Frps的WEB服务

4.1、登录管理端

  • 可以随意查看服务在线状态。