安全基础
最小权限原则意味着仅赋予用户和设备执行任务所需的最低权限,绝不超越。这种方法限制了被入侵账户或意外操作造成的潜在损害,是现代安全的核心概念,包括零信任模型。在您的 Unraid 配置中应用此原则,尤其是在创建共享用户和 分配权限时。
控制共享文件夹的访问
选择网络文件共享协议
通过家庭或办公室网络共享文件到 Unraid 服务器时,您有多种连接选择。Unraid 支持常见的通信协议,以帮助设备之间进行通信。
| 协议 | 主要用途 | 优势 | 劣势 | 推荐使用场景 |
|---|---|---|---|---|
| SMB (服务器消息块) | 原生Windows/macOS集成 | 内置Windows支持;支持打印机和虚拟机存储;处理大文件速度快 | 旧版本(SMBv1)不安全;处理小文件速度慢 | 适用于Windows和Mac网络;资源混合环境(打印机、虚拟机) |
| NFS (网络文件系统) | 本地 Unix/Linux 集成 | 针对 Linux/Unix 优化;对小文件实现高效;低开销 | 需要额外的工具用于Windows;网络可靠性至关重要;锁定功能有限 | 适用于Linux和Unix环境;小文件操作;静态数据工作负载 |
| FTP (文件传输协议) | 跨平台兼容性 | 通用客户端支持;简单设置;批量文件传输 | 明文协议,无加密;凭证未加密发送;过时的安全性 | 仅用于非敏感或旧系统传输;为安全文件传输使用 FTPS(FTP over TLS)或 SFTP(FTP over SSH) |
从 Unraid 版本 6.9 开始,**AFP(Apple Filing Protocol)**支持已被移除。为了确保您的 Mac 电脑与 Unraid 服务器良好协作,包括使用时间机器备份等功能,请进入 设置 → SMB 并启用 增强的 macOS 互通性。
选择使用何种协议取决于您拥有的设备类型以及对文件的需求。默认情况下,Unraid 启用 SMB,因为它被现代 Windows 和 macOS 系统广泛支持。NFS 和 FTP 处于关闭状态,但可以在需要时启用。
例如,如果您使用 FTP 客户端连接到 Unraid 服务器,您可以轻松传输大文件,甚至需要时暂停和恢复上传或下载。
管理共享的网络可见性
您可以通过以下方式在 Unraid 中为网络文件夹(共享)设置不同的访问权限:
-
转到共享选项卡:首先点击WebGUI中的共享选项卡。
-
选择一个共享:选择您想要调整的现有共享。
-
滚动到安全设置:在共享设置页面底部,您将看到针对每个启用协议的安全选项部分。
-
调整导出设置:此设置控制共享在网络上的可见性。您有三个选项:
- 是:共享是可见的,任何浏览网络的人都可以访问它。
- 是(隐藏):共享不会出现在网络浏览列表中,但如果有人知道共享的名称,他们仍然可以访问。
- 否:共享完全隐藏,通过该特定协议不可访问。
通过调整这些选项,您可以管理每个共享的可见性和访问权限,从而更轻松地保持安全,同时确保合适的人可以使用 SMB、NFS 或 FTP 进行访问。
设置用户权限用于共享
共享安全控制用户如何访问您系统上的共享文件。您可以设置共享以要求用户名和密码来访问文件,限制为只读访问,或使其完全公开无需凭据。
:::note[Example]
如果您在 Unraid 服务器上创建一个 movies 共享,您可以选择是否要求有效的用户名和密码仅用于读取数据或允许公开访问。如果需要添加用户,root 用户可以按照 用户管理 中的流程创建共享用户。
:::
访问 共享 标签并选择一个共享,您将看到其设置,包括一个安全部分,您可以根据启用的协议管理访问权限。通过这种方式,您可以根据他们的需求定制谁可以访问您的文件。
安全设置有以下选项:
| 类型 | 解释 | 常见使用场景 |
|---|---|---|
| 公开 | 开放访问:每个人都可以读取和写入此文件夹。 | 适合非敏感信息,如共享媒体或公开下载。 |
| 安全 | 限制访问:每个人可以读取,但只有特定用户可以写入。 | 适用于需要协作的共享项目,如团队文件夹。 |
| 私有 | 限制访问:只有特定用户可以读取或写入。 | 适用于敏感信息,如财务记录或个人文件。 |
:::caution[Windows SMB 访问
由于更严格的安全策略,现代版本的 Windows(Windows 10 1709+、Windows 11、Server 2019+)默认阻止访问 公共(访客/匿名)SMB 共享。除非您在 Windows 设置中手动启用不安全的访客登录,否则尝试连接公共共享通常会失败——出于安全原因不建议这样做。
最佳实践: 为您的 Unraid 共享设置用户帐户和密码,并使用这些凭据从 Windows 可靠访问。
凭证限制: Windows每次仅允许对一个服务器使用一组登录凭证。如果尝试使用不同凭证连接同一服务器上的不同共享,连接将失败。
解决方法: 如果遇到凭证问题,请尝试使用服务器名称连接一个共享,而使用其IP地址连接另一个共享。Windows将它们视为不同的服务器。
有关更多详细信息,请参阅Microsoft关于SMB访客访问的文档。
:::
网络安全
设置强大的 root 密码
当您首次安装后访问 WebGUI 时,系统会要求您为 root user 设置密码。然而,Unraid 并不强制执行密码复杂性要求——由您自行决定为服务器设置密码安全性的程度。
- 转到用户选项卡,选择root用户并设置密码。
- 考虑使用来自社区应用的Dynamix密码验证器插件进行实时强度反馈。
- 有关更多指导,请查看在线提供的Bitwarden密码强度工具。
审查和最小化端口转发
从您的路由器转发端口到 Unraid 服务器可能是远程访问服务所必需的,但这会将您的网络暴露在重大风险中。仅转发您完全了解和需要的端口。
| 端口 | 典型用途 | 安全风险 | 更安全的替代方案 |
|---|---|---|---|
| 80 / 443 | WebGUI (HTTP/HTTPS) | 暴露管理界面;如果密码较弱,存在被拦截或暴力破解的风险 | 使用 Unraid Connect 或 VPN 进行远程访问,请注意 Unraid Connect 需要进行 WAN 端口转发或使用 UPnP(而不是始终在线的云中继) |
| 445 | SMB (文件共享) | 将共享暴露在互联网上;存在数据盗窃或删除的风险 | 使用VPN进行安全的远程文件访问 |
| 111 / 2049 | NFS | 公开 NFS 共享;与 SMB 类似的风险 | 使用VPN进行远程访问 |
| 22 / 23 | SSH/Telnet | 暴露控制台访问;存在暴力破解或凭证盗窃的风险 | 使用 SSH 密钥或 VPN;永远不要转发 Telnet |
| 57xx | VNC 用于 VMs | 公开 VM 控制台;有未经授权的远程访问风险 | 使用 Unraid Connect 或 VPN |
如果看到不理解的端口转发规则,请删除它并监控问题。如有必要,可以重新添加。
切勿将您的服务器置于网络的 DMZ 中。将 Unraid 服务器放在 DMZ 中会将所有端口暴露在互联网上,大大增加被攻陷的风险。即使有强密码,也永远不建议这样做。
共享访问安全
控制共享的可见性和权限
- 使用 WebGUI 中的 Shares 选项卡设置每个共享的导出和安全设置。
- 对于敏感数据,建议使用私人或安全共享。公共共享可被网络上的任何人访问,在现代Windows版本中默认被阻止以确保安全。
- 为用户账户分配其角色所需的权限(最小特权)。
- 尽可能限制共享访问给特定用户。
仔细分配用户权限
- 根据需要使用只读或读/写访问将用户分配给共享。
- root用户账户用于系统管理,不能访问网络共享。为网络共享访问创建专用用户账户。
- 定期检查用户权限并移除未使用账户。
限制共享访问至私有或只读
尽管无密码访问共享文件很方便,但如果您的本地网络设备遭到入侵,这也可能使您的数据处于风险之中。这包括 PC、Mac、移动设备和 IoT 设备。默认情况下,Unraid 共享设置为可公开读取和写入,意味着网络上的任何设备可能在遭到入侵时窃取、删除或加密您的文件。此外,恶意用户可以上传不需要的数据到您的服务器。
- 在WebGUI的共享选项卡中将敏感共享设置为私有。
- 如果需要公开共享,请尽可能将其设置为只读。
- 只将写入权限给予拥有强密码的授权用户。
避免公开闪存共享,或使其保密
Unraid 闪存设备包含关键的系统和配置文件。虽然通过 SMB 公开闪存共享以进行高级配置可能很方便,但如果公开,会带来显著的风险。
- 仅在绝对必要时曝光闪存共享并将其设为私有。
- 访问时要求用户名和强密码。
- 在不使用时删除或禁用共享以降低风险。
保持服务器更新
定期更新对于安全至关重要。经常发现新的漏洞 (CVEs),Lime Technology 积极地为 Unraid OS 发布补丁。更新只有在您实际应用更新时才有效。
- 在WebGUI中的工具 → 更新OS中检查更新。
- 在设置 → 通知中启用通知,以便在有更新时收到提醒。
- 通过应用程序选项卡更新插件和Docker容器,确保所有组件安全且兼容。
- 及时应用更新,确保您的服务器免受已知威胁。
使用安全的方法进行远程 管理
绝不要将WebGUI直接暴露于互联网。相反,请使用安全的远程访问解决方案:
- Tailscale 是推荐的选项,在 Unraid 中有专用的插件。它为从世界任何地方访问您的服务器和服务创建了安全的私人网络 (tailnet),无需暴露端口或配置复杂的防火墙规则。
- WireGuard VPN 是内置于 Unraid 中的,并提供了远程管理的安全加密隧道。
- OpenVPN 可作为插件或Docker容器使用。
- 许多现代路由器提供内置VPN支持 - 查看路由器文档了解设置。
- Unraid Connect插件使得可以远程访问WebGUI,但需要在路由器上转发端口。