管理安全类型未列出的客户端
如果客户端的安全类型未列在导出规则的访问参数中、您可以选择拒绝访问该客户端、也可以改用选项将其映射到匿名用户ID none
在访问参数中。
客户端可能使用的安全类型未列在访问参数中,因为它是使用其他安全类型进行身份验证的,或者根本未进行身份验证(安全类型为 AUTH_NONE )。默认情况下,客户端会自动拒绝访问该级别。但是、您可以添加选项 none
访问参数。因此,安全模式未列出的客户端会映射到匿名用户 ID 。。 -anon
参数用于确定分配给这些客户端的用户ID。为指定的用户ID -anon
参数必须是有效用户、并且已配置您认为适合匿名用户的权限。
的有效值 -anon
参数范围从 0
to 65535
。
分配给的用户ID -anon |
处理客户端访问请求的结果 |
---|---|
|
客户端访问请求将映射到匿名用户 ID ,并根据为此用户配置的权限获得访问权限。 |
|
客户端访问请求将映射到用户 nobody ,并根据为此用户配置的权限获得访问权限。这是默认值。 |
|
映射到此 ID 后,来自任何客户端的访问请求都会被拒绝,并且客户端会使用安全类型 AUTH_NONE 显示自己。如果客户端的用户 ID 为 0 ,则在映射到此 ID 时,此客户端发出的访问请求将被拒绝,而此客户端将使用任何其他安全类型显示自己。 |
使用选项时 none
,请务必记住,只读参数是首先处理的。为安全类型未列出的客户端配置导出规则时,请考虑以下准则:
只读包括 none |
读写包括 none |
具有未列出的安全类型的客户端的访问结果 |
---|---|---|
否 |
否 |
拒绝 |
否 |
是的。 |
拒绝,因为首先处理只读 |
是的。 |
否 |
以匿名身份只读 |
是的。 |
是的。 |
以匿名身份读写 |
导出策略包含具有以下参数的导出规则:
-
-protocol
nfs3
-
-clientmatch
10.1.16.0/255.255.255.0
-
-rorule
sys,none
-
-rwrule
any
-
-anon
70
客户端 1 的 IP 地址为 10.1.16.207 ,使用 NFSv3 协议发送访问请求,并使用 Kerberos v5 进行身份验证。
客户端 2 的 IP 地址为 10.1.16.211 ,使用 NFSv3 协议发送访问请求,并使用 AUTH_SYS 进行身份验证。
客户端 3 的 IP 地址为 10.1.16.234 ,使用 NFSv3 协议发送访问请求,并且未进行身份验证(表示安全类型为 AUTH_NONE )。
所有这三个客户端的客户端访问协议和 IP 地址均匹配。只读参数允许使用自己的用户 ID 并通过 AUTH_SYS 进行身份验证的客户端进行只读访问。只读参数允许使用任何其他安全类型进行身份验证的客户端以用户 ID 为 70 的匿名用户身份进行只读访问。读写参数允许对任何安全类型进行读写访问,但在这种情况下,仅允许已通过只读规则筛选的适用场景客户端。
因此,客户端 1 和 3 只能作为用户 ID 为 70 的匿名用户进行读写访问。客户端 2 使用自己的用户 ID 获得读写访问权限。
导出策略包含具有以下参数的导出规则:
-
-protocol
nfs3
-
-clientmatch
10.1.16.0/255.255.255.0
-
-rorule
sys,none
-
-rwrule
none
-
-anon
70
客户端 1 的 IP 地址为 10.1.16.207 ,使用 NFSv3 协议发送访问请求,并使用 Kerberos v5 进行身份验证。
客户端 2 的 IP 地址为 10.1.16.211 ,使用 NFSv3 协议发送访问请求,并使用 AUTH_SYS 进行身份验证。
客户端 3 的 IP 地址为 10.1.16.234 ,使用 NFSv3 协议发送访问请求,并且未进行身份验证(表示安全类型为 AUTH_NONE )。
所有这三个客户端的客户端访问协议和 IP 地址均匹配。只读参数允许使用自己的用户 ID 并通过 AUTH_SYS 进行身份验证的客户端进行只读访问。只读参数允许使用任何其他安全类型进行身份验证的客户端以用户 ID 为 70 的匿名用户身份进行只读访问。读写参数仅允许以匿名用户身份进行读写访问。
因此,客户端 1 和客户端 3 只能作为用户 ID 为 70 的匿名用户进行读写访问。客户端 2 使用自己的用户 ID 获取只读访问,但被拒绝读写访问。