QNAP NAS 添加外网访问

最后更新于 12 天前 34 次阅读


起因

实在懒得折腾自建的 Windows NAS 了,最终还是下定决心买一个成品的 NAS 。最终购买的款式是QNAP TS-464C2,考虑到其四盘位基本够用(系统装SSD),支持QutS Hero从而可以支持ZFS文件系统,同时支持硬件解码(新版的AMD处理器反而没那么支持,顶配12代Intel又太贵了)。 随后我配置了其在家庭宽带下的外网访问,记录一下方便以后如果搬家了重新配置。

硬盘选择

扯点题外话,在选硬盘的时候我也纠结了很久。选氦气盘怕漏气,容量太大发热太高噪音巨大(放在卧室晚上得睡觉),太小不够装。最后我折中了一下,选择了希捷 ST8000NM017B 8TB版本,以后估计都会是这个版本。到货后确实没啥噪音,晚上完全能睡觉。

连接方式

具体来说,网络组成是 NAS -> 路由器 -> 光猫 -> 外部设备。那么怎么保证整条链路的安全性呢?我们不考虑使用DMZ主机,通过虚拟服务器和Wireguard就能做到这一点。

为什么考虑使用Wireguard?首先其非常轻量化且在内核中原生支持,所以兼容性较好。

公网IP

具体来说用的是上海电信宽带,直接打电话去找客服就可以调整为公网IP了。不过上海电信的公网IP是没有IPv6只有IPv4的,这点需要注意。

而且上海电信之前整过一个活,默认情况下开通了所有人的云宽带服务(具体来说就是直接接在光猫上的设备不再从物理意义上属于一个子网,而是加入了一个虚拟网络从而导致其无法通过常规方法访问)。这个还需要打电话才能改回去。

虚拟服务器

考虑到连接结构,我们需要将Wireguard的连接端口穿透出去。具体来说,就是通过设置两层虚拟服务器来实现。

我们假设使用端口51820来进行通信。

电信光猫

由于使用了新版的SDN网关,所以我们就下载一个手机APP名叫网络管家,这个软件里面可以配置SDN网关。其实打开管理界面就会有个很大的二维码让你下载,直接下载就行。

设置里面会有个设置虚拟服务器,这里我们设置IP是你的路由器IP,内外端口一致且都为51820。设置好需要等一会儿,然后就能用了(我觉得是电信下发配置不是实时的,而是一个批处理)。

路由器

我用的路由器是TP-Link TL-XDR6088易展Turbo版,不同的路由器设置肯定不太一样。如果你用的是Pandora或者是OpenWRT这些类型的,估计可以跳过这段自己配置。

固定IP配置

首先你需要给路由器配置一个固定IP,防止其IP变动从而导致虚拟服务器无法连通。具体来说是路由设置-上网设置-上网方式设置为固定IP地址,后面的信息分别是IP填写上一步路由器的IP,网关填写光猫地址,子网掩码一般是255.255.255.0,DNS就填写谷歌的DNS就可以了。

虚拟服务器配置

首先得确定NAS的IP地址,这个路由器界面直接看就可以了(因为广播了设备名称,默认就是广播的)。

你需要在路由器的精品应用中找到虚拟服务器下载并安装,随后端口和上面一致51820,地址填写你NAS的IP地址。

Wireguard

QNAP端

我们需要下载个软件叫QVPN,这个直接在自带的软件中心就能找到。然后我们就能看到QVPN的设置界面,直接点击进入VPN服务器-Wireguard生成密钥对,配置IP就可以了。具体教程可以看官方的,写的很详细。

非移动设备端 (台式机等)

到官网下载客户端,允许的IP之类的就按照QNAP端设置的/24走,然后对端直接内网连接走路由器这样比较快。搞完后记得在QNAP设置Peer把设备加上去。

移动设备端 (手机等) (未完待续)

到了移动设备端,这里有一些玄机了:你会同时带着手机出门,晚上也会回家,所以就不能简单粗暴的直接设置,我们可以考虑一种动态设置方案:搞两个Wireguard客户端配置,在Wireguard手机端支持设置On-Demand按需连接。具体来说是在家就和上面的台式机连接方案一致,在外侧或者用流量就通过公网IP(或者DDNS,后面会说怎么搭建定时脚本CloudFlare DDNS)。

在家

设置方案和上面非移动设备端一致,注意按需链接仅选择家里的路由器SSID,就配置完成了。

在外面

设置方案基本一样,注意到我们其实可以设置和在家状态一致的密钥和公钥,这样就省掉了一些麻烦(反正两个连接完全互斥),然后只修改对端的地址为公网IP/DDNS地址即可。

DDNS (未完待续)

感想

很久没写文章了,感觉太荒废了。查了一下统计数据,居然还真有人看(虽然也可能是爬虫),那我肯定得继续写下去。不过最近业余时间确实都在玩游戏了,很少去研究技术方面的东西,特此写一篇。

It is my final heart.
最后更新于 2025-01-06