NAS 安全

作者:Debian-拓普龙 8 盘-萌新 XD+

NAS 安全 1

  1. 前提 3
  2. 基础篇 3
    1. 不必要的服务尽可能不要放到公网去 3
    2. 根据不同服务的危险程度,制定不同的安全策略 3
    3. 可以使用 VPN 来保护你的内网 4
    4. 在没搞定 IPv6 的防火墙之前,建议关闭 5
    5. 及时升级系统和软件 5
    6. 尽可能的避免使用默认端口(感谢群主提供意见) 6
    7. 避免使用一些常见的用户名 6
  3. 高级篇:适合有经验的用户,以及其他 DIY 的用户 6
    1. 尽可能避免用 root 用户去启动服务 6
    2. 用虚拟机等手段隔离服务 6
    3. 合理的权限设置,不要无脑 777 一把梭 6
    4. 开启 SeLinux 7
  4. 最后附常见攻击的防御手段 7

前提

如果你没有公网 IP(v4 和 v6),则只要将你的 nas 帐号密码设置复杂点,再开个二级验证、再限制下密码尝试失败过多封 IP 就行了,然后跳过这篇文章。

如果你有公网IP 的,并且使用公网 IP 的,请往下看。

基础篇

不必要的服务尽可能不要放到公网去

在你开放了大量服务到公网,方便自己的同时,也方便了黑客。举例 1:SSH 远程连接服务,默认端口是 22

像 SSH 这种服务,可以远程连接后控制你整个 nas,是一个非常危险的服务,然后这个服务,通常情况下我们很少会用到的,如果映射出去的话,危险度高于便利度,就完全没必要了。

举例 2:samba 共享服务,默认端口是 139、445 等

samba 是共享文件的服务,如果被黑了后,可以加密你所有的共享文件来勒索,samba 的端口本身就是攻击的重灾区,所以可以考虑用其他更安全的协议来共享你的文件。

在你想开放一个服务到公网上的时候,先考虑下,这个服务的风险度如何,是否一定要放到公网上等等一系列问题

根据不同服务的危险程度,制定不同的安全策略

一些举例:假设这些服务必须放公网的前提

服务

风险评估(考虑被黑后能被做啥)

安全策略

nas 管理服务

被黑后,加密你的文件来勒索,做

肉鸡,挖矿等无所不能

设置超级复杂的密码,开启两步

验证,能用的手段都用上

qbittorrent 远程

连接服务

被黑后,最多可以删除你正在下载

的和下载完的小姐姐

设置复杂一点的密码等

WebDav 文件共

享服务

被黑后,可以删除加密你的共享文

件,来勒索

设置超级复杂的密码,白名单啥

的能用的安全手段都用上

Jellyfin 服务

被黑后,最多删除你的小姐姐影视

隐藏登入用户,设置复杂一点的

密码等

DDNS-go 服务

被黑后,除了把你服务搞停外,没

设置个差不多复杂的密码即可

啥影响

可以使用 VPN 来保护你的内网

家庭网络

NAS 管理服务

路由器

NAS

qbittorrent 服务

WebDav 服务

SSH 服务

其他各种服务

家庭网络

路由器

NAS

需要分享给朋友的文件共享服务

需要分享给朋友的影视服务

VPN 服务

结合第一点,一些必要的对外服务可以开放到公网上,一些只有自己使用的服务,可以用过

VPN 的形式来访问。

比如:nas 的管理服务,samba 服务等等。

VPN 基本概念:

VPN 你可以简单理解为一个虚拟的局域网,当你的 VPN 客户端拨号连接到你家的 VPN 服务端以后,你就可以像在你家内网一样,直接通过内网 IP 和端口访问你 NAS 的所有服务。同时, VPN 本身就是高度安全设计的,安全性远高于普通的服务。(PPTP 和 L2TP 这 2 个已经过时的 VPN 协议除外,请不要使用它们)

使用 VPN 前:

使用 VPN 后:

简单说明:

使用 VPN 后,某些你需要分享给朋友啊亲人的必要的服务还是需要开放到公网的,剩下一些,像 NAS 管理类的只有自己使用的服务,则可以通过 VPN 保护起来,自己使用的时候则通过 VPN 客户端,连上 VPN 后,再使用 NAS 的各种服务。

VPN 的优缺点:

优点

缺点

本身安全性非常高,像 OpenVPN 使用密钥验证的话,暴力破解在量子计算机出来之前是不肯能的

连接 VPN 需要对应的客户端程序,所以并不适合分享给朋友之类的使用。根据场合来看,有些公司会禁止安装这一类客户端,也会碰到一

些麻烦

连上以后可以畅通无阻的访问内网的各种服务

(不止 NAS),不需要做端口映射之类的麻烦

事情

假如,被对方基于社会工程学,拿到了 VPN 的密钥,则你整个内网都会暴露在危险中,假如

碰到这种情况,请第一时间吊销泄漏的密钥。

可以较为简单的有效的保护内网

作者吐槽:

成品 nas 的管理服务和文件服务竟然是同一个端口,也就是说,如果你想共享文件给你的朋友,就必须开放 nas 的管理服务到公网,这样就无形中增加了风险度。最好是能将文件服务和 nas 管理服务分开,比如 nas 管理服务就通过 VPN 只有自己能访问,文件共享可以通过 NextCloud 等另外的服务来完成。

在没搞定 IPv6 的防火墙之前,建议关闭

目前市面上可以说 90%以上的路由器是不支持 IPv6 防火墙的,就算是支持的,很多也只有开启和关闭这 2 个选项,意义并不大,目前作者的认知中,只有新版的 openwrt 是完全支持 IPv6防火墙的(openwrt 22 版,22 之前的版本不敢保证)。

当你的域名绑定了你的 IPv6 后,任何人都能通过你的域名知道你的 nas 的 IPv6 地址,然后加上绝大多数的路由器是没有 IPv6 的防火墙的,也就意味着,你整个 nas 暴露在公网中,你所有的服务都暴露在公网中的意思,这是非常危险的一件事。

虽然你可以通过 nas 本身的防火墙来阻止不必要的服务端口的访问,但这样做,你内网的其他客户端访问时,也会被阻止,因为你的 IPv6 地址是动态的,nas 的防火墙层面,很难判断哪个客户端是和你一个网段的。

关于 IPv6 的防火墙,我会在下一篇中详细说明

及时升级系统和软件

系统或者软件,经常会出现各类漏洞,会被黑客给利用,有些神级的漏洞还能绕过认证。所以,系统和软件建议时常更新到最新的。

小贴士:

一般系统的大版本升级,会产生很多兼容或者用户习惯改变的问题,这些大版本升级其实可以不升的,但是你要注意下官方对大版本的支持时间,在官方支持的时间内的,官方还是会继续给升小版本来打补丁的,但是一旦超过官方的支持时间,请立马升级。

尽可能的避免使用默认端口(感谢群主提供意见)

很多黑客都是大面积盲扫固定高危端口的,比如 22、3389 等,避免使用默认端口,可以规避一部分风险。

避免使用一些常见的用户名

如:admin、root、test

黑客一般在进行暴力破解的时候,优先会使用这些默认的用户名去尝试。

高级篇:适合有经验的用户,以及其他 DIY 的用户

尽可能避免用 root 用户去启动服务

一些人畜无害的服务,如果你使用root 用户去启动它,然后它正好存在一个远程执行漏洞的话,这样就相当于黑客获取了你系统的root 权限,可以任意妄为。如果你不是用 root 用户启动的话,那破坏程度也非常有限了。

用虚拟机等手段隔离服务

如果有条件的话,用虚拟机来隔离一些风险度比较高的服务,这样就算被黑,也无法影响宿主机。

Docker 也算是虚拟机隔离的一种技术,但是 Docker 的隔离并不彻底,Docker 经常会出现一些漏洞让容器也能影响宿主机的。

但是不管怎么说,用Docker 比套件还是要安全一点的。

合理的权限设置,不要无脑 777 一把梭

存放私钥、密码、数据库连接方式等重要文件夹和文件的,权限尽可能的都设置为 700 和

600,非重要文件夹和文件,也尽可能避免直接 777,可以用 group 权限和 acl 等手段控制权限。

开启 SeLinux

关于 SeLinux 这丧心病狂的安全策略,作者还没完全参透,请自行参悟。这是美国军方使用的安全策略,安全等级就不需要多说了。

最后附常见攻击的防御手段

常见的攻击

介绍

如何防御

用户枚举

有些系统,当你用户名输入错误的时候,会明确的提示:用户不存在。像这种系统,黑客就会用各种用户去试探,直到提示:密码错误,从而获得有效的用户名

  1. 见 2.7
  2. 限制每个 IP 的尝试次数,超过次数则封 IP
  3. 给官方提 issue,要求官方修

改出错信息

暴力破解

不断的尝试各种密码,直到成功登入

  1. 见 2.7
  2. 限制每个 IP 的尝试次数,超过次数则封 IP
  3. 开启两步验证
  4. 使用复杂密码

网站攻击

利用 SQL 注入

跨域攻击等等手段 对网站本身进行攻击

  1. 见 2.5
  2. 如出现及时给官方反馈

DDoS

利用大量的机器,对NAS 进行攻击

这个顶多让家里的网络瘫痪一会,没啥危害,不用管

利用漏洞攻击

不管啥系统,必定会存在一些漏洞比如远程执行漏洞等

非常非常罕见的情况下,会出现一些神级漏洞,比如之前的 Samba 漏洞

  1. 见 2.5
  2. 见 3.1
  3. 见 3.2
  4. 见 3.3
  5. 碰到非常罕见的神级漏洞时,一般官方去给出临时应对方法,有条件的话可以先临时应对下,没条件的话,等待官方修复然后第一时间升级。(这种神级漏洞一般都在 24 小时内会被修复)

社会工程学攻击

利用各种社会工程学知识来获取你的登入凭证

提高自身的安全意识

最后附一个,假如不幸中了勒索病毒,平时我们可以如何预防:

  1. 勤做快照
  2. 定期冷备份