如何在集群模式 Data ONTAP 中使用导出策略?
不可不使用
适用场景
- 集群模式 Data ONTAP 8.3
- ONTAP 9
问题解答
导出策略
- 导出策略用于确定对ONTAP 中NFS (以及可选的CIFS)卷的访问权限。
- 每个卷都与一个导出策略相关联。
- 每个策略可以有多个规则。
- 要授予访问权限、每个策略必须至少具有一个有效规则。
- 不具有导出策略规则的导出策略将阻止对与其关联的任何卷进行访问。
- 新创建的SVM的默认策略没有导出策略规则、因此在创建规则之前不允许数据访问。
- SVM中的每个卷都与
vserver's
其中一个导出策略相关联。默认情况下,它与vserver's
默认导出策略相关联。 - 卷的访问权限由卷关联的导出策略中的导出策略规则确定。
- 对卷的访问不仅需要通过该卷的导出策略规则获得访问权限、而且还需要连接路径中的所有父卷的访问权限。(这就是为什么建议的 SVM/Vserver 根卷策略规则允许至少对客户端匹配为 0.0.0.0/0 的网络上的所有客户端进行读取访问的原因)。
- 如果仅允许客户端通过与卷关联的策略进行访问、但接合路径中父卷的策略至少不允许此客户端进行读取访问、则客户端仍无法访问相关卷。
- 要查看每个卷关联的策略、请运行
volume show -fields policy
。
导出策略规则
- 每个规则都包括
- SVM
- 导出策略名称
- 应用此协议的客户端IP范围或地址
- 索引编号
- 只读规则
- 读写规则。
所需的规则标志如下所示:
- 客户端 IP 范围—客户端 IP 范围是特定地址或子网、例如 10.0.3.212 或 192.168.5.0/24 、主机名或网络组(如 @netgroup )。如果要将导出策略应用到所有可能的 IP 4 地址、请将 ClientMatch 设置为 0.0.0.0/0 。
- 索引编号 - 导出策略规则有一个索引编号,并根据从低到高的编号逐个进行评估,其中应用于客户端 IP 的第一个规则就是要使用的规则。例如,如果导出策略在索引 1 上具有导出策略规则、该规则只允许对 192.168.0/16 进行只读访问、则索引 2 或更高版本中与 192.168.0/16 范围内的 IP 地址或 IP 地址范围相关的任何其他导出策略规则(例如子网 192.168.5.0/24 的读写规则) 不会产生任何影响。可以使用 export-policy 规则 setindex 命令更改规则索引。
- RO-rule — RO-rule 指定您要为客户端匹配中指定的相关客户端允许只读访问的安全样式。可以使用逗号指定多种安全样式。RO 规则取代了 RW 规则、因此如果某协议需要 RW 、则也必须将其包括在 RO 规则中。
选项:any -
包括 NTLM 、 SYS 和 KRB5none -
无是一个不常用的复杂选项、不能与永不混淆。(类似于none
在 7 模式导出规则中)。请参见下面关于 " 无 " 的段落。never -
指定没有客户机可以进行只读访问krb5 -
指 CIFS 或 NFS Kerberos 身份验证ntlm -
指使用 NTLM 身份验证机制的 CIFS 客户端sys -
仅指特定于 NFS 客户端的系统样式安全性
- rw-rule — rw-rule 指定您要为客户端匹配中指定的相关客户端允许写入访问的安全样式。可以使用逗号指定多种安全样式。RO 规则取代了 RW 规则、因此如果某协议需要 RW 、则也必须将其包括在 RO 规则中。
选项:any
-
包括 NTLM 、 SYS 和 KRB5none -
无是一个不常用的复杂选项、不能与永不混淆。(类似于none
在 7 模式导出规则中)。请参见下面关于 " 无 " 的段落。never -
指定没有客户机可以进行读写访问krb5 -
指 CIFS 或 NFS Kerberos 身份验证ntlm -
指使用 NTLM 身份验证机制的 CIFS 客户端sys -
仅指特定于 NFS 客户端的系统样式安全性
可选规则标志如下所示:
- 协议—此协议选项允许您为 CIFS 和 NFS (以及不同版本的 NFS )创建单独的规则。使用此选项,可以为子网的 CIFS 访问设置一个规则、为 NFS 设置一个不同的规则。例如,您可以允许 KRB5 通过 CIFS 进行写访问、同时允许 KRB5 通过 NFS 进行访问、方法是为使用 KRB5 的不同协议为同一子网设置单独的规则。如果不想允许 NFSv3 或反之,还可以强制进行 NFSv4 访问。
- Anon — Anon 选项设置 Anon 用户的 UID 。
如果希望 root 在集群模式中输入 NFS 导出时保持 root 身份、请将超级用户设置为 sys (请参见下文)。如果要将 Anon 用户设置为与 65534 不同的 UID (当 RW 或 RO 设置为 Security Style None 时)、请使用此 anon 选项。如果要完全阻止根访问(仍允许挂载),可以将其设置为 65535 。 - 超级用户—超级用户选项允许您指定允许哪些安全类型的超级用户保持超级用户身份、而不会对 Anon 进行事务处理。可以使用逗号指定多种安全样式。此选项将优先于 anon 选项、因此任何应用此选项的客户端都将具有其 root 用户的身份,即使 Anon 设置为 0 以外的值。
选项:any
-
包括 NTLM 、 SYS 和 KRB5none
- 这是 cDOT 8.2 和更高版本中的默认值。它会导致 root 被散列到 anon 值(默认为 65534 )。。never -
这是 cDOT 8.0 和 8.1 中的默认值、这会导致 root 向 anon 值(默认值为 65534 )进行散列。该选项在 8.2 中被删除,因为它与 none 选项相同。krb5 -
指 CIFS 或 NFS Kerberos 身份验证。CIFS 超级用户在集群模式中已过时、但在某些情形中仍可能使用。ntlm -
指使用 NTLM 身份验证机制的 CIFS 客户端。CIFS 超级用户在集群模式中已过时、但在某些情形中仍可能使用。sys
-
仅指特定于 NFS 客户端的系统样式安全性。这是禁用根冲突的正确设置。
超级用户选项可用于防止某些客户端的根变为匿名、同时仍允许对其他安全功能应用 Anon 设置。除了以上的 RO/RW 安全示例(无)之外、它还可用于区分用于 Anon 的 KRB5 和 SYS : 0 : 如果要将 root 权限下置于 NFS 系统的匿名 UID (如默认值 65534 )、但在一个规则中为采用 Kerberos 的 NFS 保留 root 权限、则可以将 anon 设置为 65534 、并将超级用户设置为 krb5 。这样做时、只有使用 Kerberos 身份验证时、 root 用户在输入导出时实际保持 root 身份。
这是一个非常常见的情况、在大多数情况下、不希望对特定客户机匹配进行根冲突、只需将超级用户设置为 SYS 或 SYS 、 KRB5 。
rw 的“无”选项和 ro
的“无”选项指定对于此规则标志中尚未指定的所有安全样式(如上所述、可以使用逗号指定多个样式)、 访问的用户将获得匿名用户的 ID 。默认情况下,此 ID 为 65534 ;但是,如果没有全局映射 ID ,则可以使用 anon 选项更改此全局映射 ID 。此 Anon UID 将根据用户映射到的 UID 的默认 GID (由 vserver ns-switch 设置中指定的名称服务确定、例如本地 UNIX 用户和 UNIX 组表或 NIS 或 LDAP 名称服务)获得默认 GID 。当客户端通过 NFS 进行通信、将 RW 和 RO 设置为 none 时、客户端实际上不会共享任何 UID 或 GID 、这是正常的、因为集群会将所有用户映射到该 anonuid
。这与 Data ONTAP 7- 模式中的 sec=none 选项相对应。
有关在集群模式 Data ONTAP 8.3 上创建导出规则的信息,请参阅“创建虚拟服务器导出策略规则”
一个基本示例
如果要对所有可能的客户机通过 SYS 和 KRB5 进行读写访问的默认策略、并且不希望对任何一个协议进行根重写操作、则可以使用以下命令创建规则。
Cluster1::> vserver export-policy rule create -policyname default -clientmatch 0.0.0.0/0 -rorule sys,krb5 -rwrule sys,krb5 -superuser sys,krb5
追加信息
不适用