将 Active Directory 用作 NFS 的 LDAP 服务器

本页介绍如何将 Active Directory 用作 NFS 的 LDAP 服务器。

NetApp Volumes 在以下使用场景中使用 LDAP 服务器:

  • 在通过 NFS 和 SMB 提供并行访问的多协议卷上映射 Windows 和 UNIX 身份。

  • 通过检索给定 UID 的最多 1,024 个 GID 来支持 NFS 扩展群组。

  • 将 NFSv4 安全标识符映射到 UID 和 GID。

  • 将 Kerberos 正文映射到 UID 和 GID。

如需了解详情,请参阅使用 Active Directory 的使用场景。

Flex Unified ONTAP 模式提供了灵活的选项,用于配置池的 LDAP 客户端以连接到许多常用的 LDAP 服务器。如需了解详情,请参阅 为 ONTAP NFS 访问创建 LDAP 客户端配置 和 如何在 ONTAP 中配置 LDAP。

对于所有其他服务级别,该服务仅支持 Active Directory 作为 LDAP 服务器。

NetApp Volumes 将 LDAP 查询用于以下用途:

  • 将 UNIX 用户名映射到 UID 和主 GID。

  • 如果存储池上启用了 LDAP,请查找给定 UID 的所有 GID。

  • 将 UID 映射到 UNIX 用户名。

  • 将 GID 映射回群组名称。

  • 将 UNIX 用户名映射到备用 Windows 用户名。

LDAP 服务器使用 LDAP 架构来定义存储相关信息的属性。Active Directory 和 NetApp Volumes 使用 RFC2307bis 架构来提取此信息。只有 ONTAP 模式允许您使用或定义不同的架构。Active Directory 已提供此架构,但您必须为用户和群组填充所需的属性。

您必须使用值填充以下属性,才能成功查找:

UNIX 属性 RFC2307bis 属性名称
UNIX 用户名 uid
UNIX 用户数字 ID uidNumber
UNIX 群组名称 cn
UNIX 群组数字 ID gidNumber
UNIX 用户对象类 objectClass
UNIX 群组对象类 objectClass

objectClass 必须包含 UNIX 用户的 user 和 UNIX 群组的 group。

虽然 Active Directory 提供了这些属性字段,但 uid、 uidNumber、cn 和 gidNumber 字段默认为空,并且必须由网域 管理员填充。如果字段为空,查找会失败,系统会默认使用名为 pcuser 的匿名用户,其 UID=65534 和 GID=65534。此用户通常没有访问 UNIX 卷上文件的权限,这可能会导致access denied错误。

对于多协议访问,Windows 用户名必须与 UNIX 用户名匹配,这样系统才能将 UNIX UID 映射到 Windows SID。如果用户名不匹配,请参阅 如何在 ONTAP 中配置 LDAP ,了解如何使用 uid 和 sAMAccountName 属性组合来配置非对称名称映射。

NetApp Volumes 会缓存 LDAP 查询结果。每个缓存都有一个定义的存留时间 (TTL),之后条目会过期以防止数据过时。 NetApp Volumes 还使用负 TTL 暂时缓存失败的查找,这有助于防止对不存在的对象重复查询。

下表介绍了 LDAP 缓存的存留时间 (TTL) 设置:

缓存 默认超时时间
群组成员资格列表 24 小时存留时间
UNIX 群组 (GID) 24 小时存留时间,1 分钟负存留时间
UNIX 用户 (UID) 24 小时存留时间,1 分钟负存留时间

后续步骤

管理客户管理的加密密钥政策。