第 21 章 与 NIS 域和网络组集成
21.1. 关于 NIS 和身份管理
在 UNIX 环境中,网络信息服务(NIS)是集中管理身份和身份验证的常用方法。NIS,最初命名为 Yellow Pages (YP),集中管理身份验证和身份信息,例如:
- 用户和密码
- 主机名和 IP 地址
- POSIX 组.
对于现代网络基础架构,NIS 被视为过于不安全,因为它既不提供主机身份验证,也不通过网络发送的数据进行加密。为了临时解决这个问题,NIS 通常与其他协议集成,以增强安全性。
如果您使用身份管理(IdM),您可以使用 NIS 服务器插件连接无法完全迁移到 IdM 的客户端。IdM 将网络组和其他 NIS 数据集成到 IdM 域中。另外,您可以轻松地将用户和主机身份从 NIS 域迁移到 IdM。
身份管理中的 NIS
NIS 对象集成并存储在目录服务器后端中,以符合 RFC 2307。IdM 在 LDAP 目录中创建 NIS 对象,客户端使用加密的 LDAP 连接检索它们,例如:系统安全服务守护进程(SSSD)或
nss_ldap
。
IdM 管理网络组、帐户、组、主机和其他数据。IdM 使用 NIS 侦听器将密码、组和网络组映射到 IdM 条目。
身份管理中的 NIS 插件
对于 NIS 支持,IdM 使用 slapi-nis 软件包提供的以下插件:
- NIS 服务器插件
- NIS 服务器插件使 IdM 集成的 LDAP 服务器能够充当客户端的 NIS 服务器。在此角色中,目录服务器会根据配置动态生成和更新 NIS 映射。使用插件,IdM 使用 NIS 协议作为 NIS 服务器提供客户端。详情请查看 第 21.2 节 “在身份管理中启用 NIS”。
- 架构兼容性插件
- Schema 兼容性插件使 Directory 服务器后端能够提供存储在目录信息树(DIT)中的条目的备用视图。这包括添加、丢弃或重命名属性值,以及从树中的多个条目检索属性值(可选)。详情请查看
/usr/share/doc/slapi-nis-版本/sch-getting-started.txt
文件。
21.1.1. 身份管理中的 NIS Netgroups
NIS 实体可以存储在网络组中.与 UNIX 组相比,netgroups 支持:
- 嵌套组(组作为其他组的成员)。
- 对主机进行分组.
netgroup 定义以下信息集合:host、user 和 domain。这一集被称为 三者。这三个字段可以包含:
- 个值。
- 短划线(-),指定 "no valid value"
- 无值.空字段指定通配符。
(host.example.com,,nisdomain.example.com) (-,user,nisdomain.example.com)
当客户端请求 NIS netgroup 时,IdM 会转换 LDAP 条目:
- 并使用 NIS 插件通过 NIS 协议将其发送到客户端。
- 符合 RFC 2307 或 RFC 2307 bis 的 LDAP 格式。
21.1.1.1. 显示 NIS Netgroup 条目
IdM 将用户和组存储在
memberUser
属性中,以及 memberHost
中的主机和主机组。以下示例显示了 IdM 目录服务器组件中的 netgroup 条目:
例 21.1. 目录服务器中的 NIS 条目
dn: ipaUniqueID=d4453480-cc53-11dd-ad8b-0800200c9a66,cn=ng,cn=alt,... ... cn: netgroup1 memberHost: fqdn=host1.example.com,cn=computers,cn=accounts,... memberHost: cn=VirtGuests,cn=hostgroups,cn=accounts,... memberUser: cn=demo,cn=users,cn=accounts,... memberUser: cn=Engineering,cn=groups,cn=accounts,... nisDomainName: nisdomain.example.com
在 IdM 中,您可以使用 ipa netgroup the 命令管理 netgroup 条目。例如,显示 netgroup 条目:
例 21.2. 显示 Netgroup Entry
[root@server ~]# ipa netgroup-show netgroup1 Netgroup name: netgroup1 Description: my netgroup NIS domain name: nisdomain.example.com Member Host: VirtGuests Member Host: host1.example.com Member User: demo Member User: Engineering