安全性
本页面介绍了 ONTAP 9.19.1 中 NFS over TLS 的 RBAC 要求、证书验证、加密参数、审计和已知安全限制。
角色和RBAC要求
`vserver nfs tls interface` 命令系列——-`enable`、 `disable`、 `modify` 和 `show`——属于 SVM 范围。它可以由集群 `admin` 角色或所属 SVM 的 `vsadmin` 运行。
`-allow-nfs-tls-only` 字段位于 `vserver export-policy rule`,是现有导出规则对象上的写入字段。它使用标准导出策略规则 RBAC。
`/api/protocols/nfs/tls/interfaces`下的 REST 端点与上述 CLI 命令一一对应。它们使用标准 NAS 管理员 RBAC。未定义单独的 REST 角色。
身份验证和授权
在 LIF 上启用 NFS over TLS 需要通过 security certificate install 在 SVM 上安装服务器 X.509 证书。证书在启用时使用 -certificate-name 按 LIF 绑定。
ONTAP 对提供的服务器证书执行两项检查:
-
证书通用名称 (CN) 必须与 LIF 的完全限定域名 (FQDN) 匹配。
-
LIF 的 IP 地址必须显示在证书的使用者备用名称 (SAN) 列表中。
可选 -skip-san-validation`布尔值(默认 `false)在启用或修改时禁止 SAN 检查。
每次检查失败都会返回一个不同的错误。
双向 TLS (mTLS) 主机身份验证为可选启用。将 -enforce-host-auth true`设置为 `vserver nfs tls interface enable`或 `modify`以启用此功能。默认值为 `false,表示仅进行服务器身份验证。客户端证书将根据 SVM 已安装的 CA 信任链进行验证,该信任链由您负责配置。
用户身份验证
用户身份验证不受 TLS 影响。TLS 增加了线上保密性和主机身份验证。 AUTH_SYS`RPC 用户身份验证仍必须使用 UNIX UID/GID 或 `RPCSEC_GSS/Kerberos。RFC 9289 对此进行了明确规定:TLS 保护传输,而现有的 NFS 身份验证类型一如既往地处理用户身份验证。
加密
在途中
当在 LIF 上启用 NFS over TLS 时,TLS 1.3 是唯一使用的版本。支持以下密码套件:
-
TLS_AES_128_GCM_SHA256 -
TLS_AES_256_GCM_SHA384 -
TLS_CHACHA20_POLY1305_SHA256
密钥交换在 `secp384r1`曲线上使用 ECDHE。加密适用于通过启用 TLS 的 LIF 传输的 NFSv3 和 NFSv4.x 流量。
审核
所有 NFS-over-TLS 配置更改均记录在标准 ONTAP 审核日志中(security audit log show)。将记录以下操作:
-
vserver nfs tls interface enable -
vserver nfs tls interface modify -
vserver nfs tls interface disable -
vserver export-policy rule create -allow-nfs-tls-only -
vserver export-policy rule modify -allow-nfs-tls-only
只读 `show`和 `GET`操作遵循标准 ONTAP 审核策略,通常不会被记录,除非审核配置为记录这些操作。
在 NFS-over-TLS 数据路径上会发出三个客户可见的 EMS 事件。有关事件详细信息、触发条件和速率限制,请参见"EMS 消息"。
租赁边界
NFS-over-TLS 配置按 SVM 进行。SVM 管理员只能查看和管理属于其自身 SVM 的 LIF 上的 TLS 配置。集群管理员可查看所有 SVM。
服务器证书引用是 SVM 本地的。此配置在集群范围内复制,以便为给定 LIF 提供服务的任何节点都应用相同的 TLS 配置。
已知安全相关限制
自签名证书注意事项。CLI `enable`和 `modify`命令警告说,自签名证书会使您面临中间人攻击的风险。请使用通过 `security certificate install`安装的 CA 签名证书。
Mutual TLS 是可选启用的。 默认情况下 -enforce-host-auth false,NFS over TLS 保护线路上的机密性和完整性,并向客户端验证服务器——但它不会对客户端主机进行加密身份验证。如果需要,请显式启用 mTLS。
仅 TLS 强制执行基于导出策略规则,而非全局设置。在您对相关导出策略规则设置 `-allow-nfs-tls-only true`之前,同一 LIF 仍可接受来自该规则允许的客户端的非 TLS NFS 连接。