利用 FRP 实现外网访问 NAS

您所在的位置:网站首页 nas怎么外网访问 利用 FRP 实现外网访问 NAS

利用 FRP 实现外网访问 NAS

2023-03-21 13:06| 来源: 网络整理| 查看: 265

最近入手了一台群辉入门级的 nas,但是由于用的是长城的宽带,所以你们懂的,群辉自带的外网访问的配置根本不起任何作用。但是在公司里又没法用 quickConnect 访问自己的 nas,所以没办法只能利用 frp 这种方式来实现在公司或者其他地方访问自己的 nas。

刚好自己买的有阿里云的服务器,还有阿里云买的域名。然后说搞就开始搞咯。

第一步

先在自己的域名控制台,解析好一个 A 类的二级域名,指向自己的服务器的 ip。

第二步

在自己购买的服务器上安装配置 frp 服务端

1、查看自己的服务器的 linux 内核 # uname 指令 uname -a # 结果 # a Linux tegra-ubuntu 4.4.38-tegra #1 SMP PREEMPT Fri Jul 28 09:55:22 PDT 2017 aarch64 aarch64 aarch64 GNU/Linux # aarch64就是ARM架构 # b Linux ubuntu 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux # X86架构 # c Linux DrogooBox 3.3.8 #33 Tue Mar 22 15:02:01 CST 2016 mips GNU/Linux # MIPS架构 # arch命令 arch # 结果 # a aarch64 #b x86_64

自己选择对应的版本号即可。 如果 frp 版本选的不对,运营会爆如下错误:

./frpc: cannot execute binary file: Exec format error 2、安装服务端

FRP RELEASE

#1、下载 wget /caseinfo/link/b59c744e59e74e57bd4374ae2c61873b/download/v0.12.0/frp_0.12.0_linux_amd64.tar.gz #2、解压 tar -zxvf frp_0.12.0_linux_amd64.tar.gz #3、进入对应目录 cd frp_0.12.0_linux_amd64 #4、删除客户端内容 rm -f frpc frpc_full.ini frpc.ini #5、配置服务端 vim frps.ini

编辑如下:

[common] bind_port = 7000 vhost_http_port = 8080 max_pool_count = 5 authentication_timeout = 900 subdomain_host = lekee.cc [ssh] listen_port = 6000 auth_token = 和客服端 token 对应

解释:

[common] 必填的 bind_port Frp 服务端口(可自定义) vhost_http_port http 访问端口(可自定义) dashboard_port dashboard 界面端口 (可以不配置) dashboard_user 登录 dashboard 用户名(可以不配置) dashboard_pwd 登录 dashboard 密码(可以不配置) max_pool_count 最大连接池数量 authentication_timeout 超时验证时间 subdomain_host 主域名

[ssh] listen_port ssh 访问端口 auth_token 用户身份认证(自定义)

#6、启动 frp 服务器 nohup ./frps -c ./frps.ini & 第三步

配置 frp 客户端

客户端可以是 PC,Mac,NAS 等。 我是配置自己的 nas。

1、群晖必须开启 ssh

2、开始操作 # 1、登录 nas ssh [email protected] # user nas 的账号,ip nas 的内网 ip # 2、切换 root 用户 sudo -i # 此处输入你的密码 # 3、下载 frp wget /caseinfo/link/b59c744e59e74e57bd4374ae2c61873b/download/v0.12.0/frp_0.12.0_linux_arm.tar.gz # 此处踩了一个坑,因为版本下载的不对,所以配置完发现跑不起来。所以一定要查找适合的版本 # 4、解压 tar -zxvf frp_0.12.0_linux_386.tar.gz # 5、进入文件夹 cd frp_0.12.0_linux_386 # 6、移除服务端配置 rm -f frps frps_full.ini frps.ini # 7、编辑配置 vim frpc.ini

编辑如下:

[common] server_addr = ip (服务器外网 ip) server_port = 7000 auth_token = 和服务器端对应 pool_count = 1 [ssh] type = tcp local_ip = NAS 局域网ip local_port = 22 remote_port = 6000 [nas] type = http local_port = 5000 subdomain = nas(自己定义的二级域名)

简单解释:

[common] 必填的 server_addr 服务器端公网 server_port frp 服务端口,和服务器端 bind_port 一致 auth_token 和前面服务器端 [ssh] auth_token 一致 pool_count 连接池数量

[ssh] type 服务类型(tcp、http、https、udp) local_ip NAS 本地局域网内网 ip local_port NAS 开启 ssh 服务端口号,默认 22 remote_port 服务器端 ssh 端口,和服务器端 [ssh] listen_port 配置一致

[nas] NAS 管理界面 subdomain 二级域名 nas 访问 NAS type = http 服务类型为 http local_port NAS 默认端口 5000

[web] NAS web Station 服务,没用可以不用设置 type = http 类型为 http local_port = 80 NAS web 服务端口 subdomain = web 二级域名 web.lekee.cc 使用自定义二级域名的时候,域名 *.lekee.cc 要解析到服务器 IP

# 8、运行 nohup ./frpc -c ./frpc.ini &

到此结束。你可以愉快地通过自己的域名加上端口号访问自己的 nas 了。

好了,该休息了。

不对扶我起来,报错了。

dial tcp x.x.x.x:xxxx: getsockopt: no route to host 第四步

因为你还得在服务器防火墙中开放对应的端口 就是你在服务端配置的下面两个端口

bind_port = 7000 vhost_http_port = 8080

具体的操作可以参考我的这篇文章

到此你应该能真正地愉快地访问了。

enjoy ~

参考文章

如何用 Frp 实现外网访问群晖 NAS

如何查看linux系统的体系结构

CentOS 防火墙开放端口



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3