NIS 到 LDAP 转换服务(
N2L 服务)使用 NIS 到 LDAP 转换守护进程来替换 NIS 主服务器上现有的 NIS 守护进程。N2L 服务还在该服务器上创建一个 NIS 到 LDAP 的转换映射文件。该映射文件指定 NIS 映射项和 LDAP 中目录信息树 (Directory Information Tree, DIT) 等效项之间的映射。已经进行这种转换的 NIS 主服务器称为
N2L 服务器。从属服务器上没有 NISLDAPmapping 文件,因此它们继续以通常的方式工作。从属服务器定期从 N2L 服务器更新其数据,就好像 N2L 服务器是常规的 NIS 主服务器一样。
N2L 服务的行为由 ypserv 和 NISLDAPmapping 配置文件控制。脚本 inityp2l 可帮助对这些配置文件进行初始设置。一旦建立了 N2L 服务器,就可以通过直接编辑这些配置文件来维护 N2L。
N2L 服务支持以下功能:
- 将 NIS 映射导入到 LDAP 目录信息树 (Directory Information Tree, DIT) 中
- 客户机借助于 NIS 的速度和可扩展性访问 DIT 信息
在任何名称系统中,仅有一个信息源可以是权威来源。在传统的 NIS 中,NIS 源是权威信息。在使用 N2L 服务时,权威数据源自 LDAP 目录。如第 9 章,LDAP 的基本组件和概念(概述)中所述,该目录是通过使用目录管理工具进行管理的。
NIS 源仅保留用于紧急备份或卸载。在使用 N2L 服务之后,可以逐步淘汰 NIS 客户机。最终,所有的 NIS 客户机都会被 Solaris LDAP 名称服务客户机所取代。
以下各小节中提供了其他概述信息:
- NIS 到 LDAP 转换的目标用户
- 不应使用 NIS 到 LDAP 转换服务的情况
- NIS 到 LDAP 转换服务对用户造成的影响
- NIS 到 LDAP 转换术语
- NIS 到 LDAP 转换命令、文件和映射
- 支持的标准映射
NIS 到 LDAP 转换工具和服务管理工具
NIS 和 LDAP 服务由服务管理工具管理。 可以使用 svcadm 命令对这些服务执行启用、禁用或重新启动等管理操作。使用 svcs 命令可以查询服务的状态。有关使用 SMF 对 LDAP 和 NIS 进行管理的更多信息,请参见LDAP 和服务管理工具和NIS 和服务管理工具。有关 SMF 的概述,请参阅System Administration Guide: Basic Administration中的“ Managing Services (Overview)”。另请参阅 svcadm(1M) 和 svcs(1) 手册页以了解更多详细信息。
NIS 到 LDAP 转换的目标用户
您需要熟悉 NIS 和 LDAP 概念、术语和 ID 才能执行本章中的过程。有关 NIS 和 LDAP 名称服务的更多信息,请参见本书中的以下两章:
- 第 4 章,网络信息服务 (Network Information Service, NIS)(概述)(提供 NIS 的概述)
- 第 8 章,LDAP 名称服务介绍(概述/参考)(提供 LDAP 的概述)
不应使用 NIS 到 LDAP 转换服务的情况
请勿在以下情况下使用 N2L 服务:
-
不打算在 NIS 客户机和 LDAP 名称服务客户机之间共享数据。
在这种情况下,N2L 服务器将充当极其复杂的 NIS 主服务器。
-
NIS 映射由修改 NIS 源文件的工具(而非 yppasswd)来管理。
从 DIT 映射重新生成 NIS 源是一项不精确的任务,该任务需要手动检查生成的映射。一旦使用了 N2L 服务,提供的 NIS 源的重新生成功能就仅用于卸载 NIS 或恢复为 NIS。
-
没有 NIS 客户机
在这种情况下,可以使用 Solaris LDAP 名称服务客户机及其相应工具。
NIS 到 LDAP 转换服务对用户造成的影响
仅安装与 N2L 服务相关的文件不会更改 NIS 服务器的缺省行为。在安装时,管理员将会看到 NIS 手册页发生了一些变化,而且服务器上增加了 N2L 帮助脚本 inityp2l 和 ypmap2src。但是,只要在 NIS 服务器上没有运行inityp2l 或没有手动创建 N2L 配置文件,NIS 组件就会继续在传统的 NIS 模式下启动并像通常那样工作。
运行 inityp2l 之后,用户会看到服务器和客户机行为发生了一些变化。以下是 NIS 和 LDAP 用户类型的列表,其中说明了在部署 N2L 服务之后每种类型的用户应当注意到的情况。
用户类型 | N2L 服务的影响 |
---|---|
NIS 主服务器管理员 | NIS 主服务器转换为 N2L 服务器。NISLDAPmapping 和 ypserv 配置文件将会安装在 N2L 服务器上。建立 N2L 服务器之后,可以使用 LDAP 命令来管理名称信息。 |
NIS 从属服务器管理员 | 进行 N2L 转换之后,NIS 从属服务器继续以通常的方式运行 NIS。当 ypmake 调用 yppush 时,N2L 服务器会将已更新的 NIS 映射推送到从属服务器。请参见 ypmake(1M) 手册页。 |
NIS 客户机 | NIS 读取操作与传统的 NIS 没有区别。当 Solaris LDAP 名称服务客户机更改 DIT 中的信息时,这些信息会复制到 NIS 映射中。复制操作是在可配置的超时时间过期之后完成的。这类行为与连接到 NIS 从属服务器的常规 NIS 客户机的行为相似。 如果 N2L 服务器无法绑定到 LDAP 服务器进行读取,则 N2L 服务器将从其自身的缓存副本中返回信息。或者,N2L 服务器还可能会返回内部服务器错误。可以将 N2L 服务器配置为按照上述任一方式响应。有关更多详细信息,请参见 ypserv(1M) 手册页。 |
所有用户 | 当 NIS 客户机请求更改口令时,所做的更改将立即显示在 N2L 主服务器和本地 LDAP 客户机上。 如果尝试在 NIS 客户机上更改口令,而且 LDAP 服务器不可用,则更改将被拒绝,N2L 服务器将返回内部服务器错误。此行为可防止将不正确的信息写入高速缓存中。 |
NIS 到 LDAP 转换术语
以下是与实现 N2L 服务相关的术语。
表 15–1 与 N2L 转换相关的术语
术语 | 说明 |
---|---|
N2L configuration file(N2L 配置文件) | ypserv 守护进程用来在 N2L 模式下启动主服务器的/var/yp/NISLDAPmapping 文件和 /var/yp/ypserv 文件。有关详细消息,请参见 NISLDAPmapping(4) 和 ypserv(4) 手册页。 |
map(映射) | 在 N2L 服务的上下文中,术语“映射”的用法有两种:
|
mapping(映射) | NIS 项与 LDAP DIT 项之间的相互转换过程。 |
mapping file(映射文件) | 用来指定如何映射 NIS 文件和 LDAP 文件之间各项的 NISLDAPmapping 文件。 |
standard map(标准映射) | 无需手动修改映射文件即可由 N2L 服务支持的常用 NIS 映射。支持的标准映射中提供了支持的标准映射的列表。 |
nonstandard map(非标准映射) | 自定义为使用 NIS 和 LDAP DIT 之间映射(RFC 2307 或其后续版本中标识的映射除外)的标准 NIS 映射。 |
custom map(自定义映射) | 不是标准映射的任何映射,从 NIS 转换至 LDAP 时,需要手动修改映射文件。 |
LDAP client(LDAP 客户机) | 对任何 LDAP 服务器执行读写操作的任何传统的 LDAP 客户机。传统的 LDAP 客户机是对任何 LDAP 服务器执行读写操作的系统。Solaris LDAP 名称服务客户机可处理部分自定义的名称信息。 |
LDAP naming services client(LDAP 名称服务客户机) | 用来处理部分自定义名称信息的 Solaris LDAP 客户机。 |
N2L server(N2L 服务器) | 已使用 N2L 服务重新配置为 N2L 服务器的 NIS 主服务器。重新配置过程包括替换 NIS 守护进程和添加新配置文件。 |
NIS 到 LDAP 转换命令、文件和映射
共有两个实用程序、两个配置文件和一个映射与 N2L 转换相关联。
表 15–2 N2L 命令、文件和映射的说明
命令/文件/映射 | 说明 |
---|---|
/usr/lib/netsvc/yp/inityp2l | 帮助创建 NISLDAPmapping 和 ypserv 配置文件的实用程序。此实用程序不是用来管理这些文件的通用工具。高级用户可通过使用文本编辑器检查和自定义 inityp2l 输出来维护 N2L 配置文件或创建自定义映射。请参见 inityp2l(1M) 手册页。 |
/usr/lib/netsvc/yp/ypmap2src | 用来将标准 NIS 映射转换为近似等效的 NIS 源文件的实用程序。ypmap2src 主要用于将 N2L 转换服务器转换为传统的 NIS。请参见 ypmap2src(1M) 手册页。 |
/var/yp/NISLDAPmapping | 用来指定 NIS 映射项和 LDAP 中目录信息树 (Directory Information Tree, DIT) 等效项之间映射的配置文件。请参见NISLDAPmapping(4) 手册页。 |
/var/yp/ypserv | 用来为 NIS 到 LDAP 转换守护进程指定配置信息的文件。请参见ypserv(4) 手册页。 |
ageing.byname | yppasswdd 使用的一种映射,在实现 NIS 到 LDAP 转换时,用于在 DIT 中读写口令生命期信息。 |
支持的标准映射
缺省情况下,N2L 服务支持以下列出的映射与 RFC 2307 或其后续版本中 LDAP 各项之间的映射。这些标准映射不需要手动修改映射文件。系统上任何未列在以下列表中的映射都被视为自定义映射,需要手动进行修改。
N2L 服务还支持对 auto.* 映射进行自动映射。但是,由于大多数 auto.* 文件名和内容都特定于各自的网络配置,因此该列表并未指定这些文件,但作为标准映射支持的 auto.home 和 auto.master 映射除外。
|
在 NIS 到 LDAP 转换过程中,yppasswdd 守护进程使用 N2L 特定的映射 ageing.byname 在 DIT 中读写口令生命期信息。如果没有使用口令生命期,则会忽略 ageing.byname 映射。