1. 背景

由于联通不知道什么原因,把整个省的个人动态公网IP都给停止了,所以需要找别的方式来访问我的NAS,.

在网上搜索得知,有以下几种方式:

  • 使用花生壳或者别的ddns服务
  • 使用开源的frp方案

查询了下 花生壳的服务收费如下:

image-20220321202518926

368元一年不算贵, 但是这个速率才 1Mbps,换算下来才 128K/s, 实在是太慢了.

而Frp需要自己配置Server端, 也有第三方开发者提供免费的服务端, 如: Free FRP 免费 FRP 内网穿透

而目前国内的服务器价格也比较划算, 比如: 【腾讯云】爆款2核2G云服务器首年40元,企业首购最高获赠300元京东卡

image-20220321203407987我购买的是上图的 2核4G 的套餐, 6Mbps 带宽算下来 0.75M/s, 日常使用还算可以了, 同步大文件可以到家以后 使用局域网同步.

2. 配置Frp Server端

根据官网的说明, 修改 frps.ini 文件如下:

[common]
bind_port = 443
token=[自己设置一个Token]

vhost_http_port = 80
vhost_https_port = 443

# 服务端 Dashboard 
dashboard_port = 7400
# dashboard 用户名密码,可选,默认为空
dashboard_user = admin
dashboard_pwd = admin

# TCP 多路复用 
tcp_mux = false
# 连接池上限
max_pool_count = 5

然后根据说明启动服务端:

./frps -c ./frps.ini

看到命令行输出如下,则说明服务器端启动成功:

C:\Users\Administrator\Downloads\frp_0.39.1_windows_amd64>frps.exe -c frps.ini
2022/03/21 20:43:09 [I] [root.go:200] frps uses config file: frps.ini
2022/03/21 20:43:09 [I] [service.go:193] frps tcp listen on 0.0.0.0:443
2022/03/21 20:43:09 [I] [service.go:236] http service listen on 0.0.0.0:80
2022/03/21 20:43:09 [I] [service.go:292] Dashboard listen on 0.0.0.0:8081
2022/03/21 20:43:09 [I] [root.go:209] frps started successfully

3. 安装客户端

打开威联通的 ContainerStation, 在 Create 界面输入: stilleshan/frpc,然后搜索如下:

image-20220321204704454

点击 install 按钮, 选择最新版

image-20220321204734521

然后点击 高级设置(Advanced Setting)

image-20220321204857268

网络设置设置位 host:

image-20220321204938116

然后 共享文件夹部分设置如下:

image-20220321205101387

其中NAS目录如下:

image-20220321205218415

然后点击 create, 等待创建完成

4. 配置Frp客户端

打开NAS上刚才配置的目录, 并上传Frp项目文件, 编辑 frpc.ini文件:

[common]
server_addr = 服务器的ip
server_port = 服务器的 bind_port
token=服务器的token

# Admin UI 管理界面配置
admin_addr = 127.0.0.1
admin_port = 7400
admin_user = admin
admin_pwd = admin

# TCP 多路复用 
tcp_mux = false

# 连接池上限
max_pool_count = 1

[nas]
type = http
local_ip=127.0.0.1
local_port=80
custom_domains = 你的nas的域名

[nas_https]
type = https
custom_domains = 你的nas的域名
plugin = https2http
plugin_local_addr = 127.0.0.1:80
# HTTPS 证书相关的配置
# 在上图的 ssl 文件夹存放 你的证书 key 和 crt 或者 key 和 pem文件
plugin_key_path = /frp/ssl/nas.key
plugin_crt_path = /frp/ssl/nas.crt
plugin_host_header_rewrite = 127.0.0.1
plugin_header_X-From-Where = frp

启动 frpc 查看结果如下则正常:

2022/03/21 20:43:10 [I] [service.go:175] [5f8e02cd963489f2] try to reconnect to server...
2022/03/21 20:43:10 [I] [service.go:327] [5f8e02cd963489f2] login to server success, get run id [5f8e02cd963489f2], server udp port [0]
2022/03/21 20:43:10 [I] [proxy_manager.go:144] [5f8e02cd963489f2] proxy added: [nas nas_https]
2022/03/21 20:43:10 [I] [control.go:181] [5f8e02cd963489f2] [nas] start proxy success
2022/03/21 20:43:10 [I] [control.go:181] [5f8e02cd963489f2] [nas_https] start proxy success

然后输入你刚设置的域名测试结果:

image-20220321205941908

5. 后记

此处特别感谢 思有云 - IOIOX - 个人博客 提供的 Dockers镜像以及技术支持.

Stille 的博客: 思有云 - IOIOX - 个人博客

使用的Docker 镜像地址: Docker Hub

如有关于镜像的问题,请在GitHub上添加 issue: stilleshan/frpc

最后修改:2022 年 05 月 17 日
如果觉得我的文章对你有用,请随意赞赏