系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)

第 1 章 名称和目录服务(概述)

本章概述了 Solaris 中使用的名称和目录服务。本章还简要介绍了 DNS、NIS 和 LDAP 名称服务。有关 NIS+ 的详细信息,请参见System Administration Guide: Naming and Directory Services (NIS+)

什么是名称服务?

名称服务在一个中心位置存储信息,这样用户、计算机和应用程序便可通过网络进行通信。此信息包括:

如果没有集中的名称服务,则每台计算机都必须单独保留一份此信息的副本。名称服务信息可以存储在文件、映射或数据库表中。 如果集中所有数据,管理会变得更加容易。

名称服务对任何计算网络都是至关重要的。名称服务还可提供多种功能,其中包括执行以下操作的功能。

网络信息服务使计算机可由普通名称而非数字地址来标识。这样可以简化通信,因为用户不需要记住并尝试输入那些繁琐的地址(例如 192.168.0.0)。

例如,假设有一个网络具有三台计算机,名称分别为 pineelmoakpine 必须先知道 elmoak 的数字网络地址,才能向其发送消息。因此,pine 将保留一个文件(/etc/hosts/etc/inet/ipnodes),该文件存储网络中每台计算机(包括 pine 本身)的网络地址。

图中显示了 pine、elm 和 oak 计算机,以及 pine 中列出的各自的 IP 地址。

类似地,为了使 elmoakpine 通信或彼此通信,这些计算机也必须保留类似的文件。

图中显示的计算机在各自的 /etc/hosts 文件中保留网络中计算机的所有 IP 地址。

除了存储地址外,计算机还存储安全信息、邮件数据、网络服务信息等。 随着网络提供的服务越来越多,存储信息的列表会不断增大。因此,每台计算机都需要保留一整套与 /etc/hosts/etc/inet/ipnodes 相似的文件。

网络信息服务在服务器中存储网络信息,任何计算机都可以查询该信息。

这些计算机称为服务器的客户机。下图显示客户机/服务器布局。每次网络信息发生变化时,管理员将只更新网络信息服务存储的信息,而不更新每个客户机的本地文件。这样做可以减少错误、客户机之间的不一致性以及任务的绝对工作量。

图中显示了客户机/服务器计算关系中的服务器和客户机。

这种服务器向网络中的客户机提供集中服务的布局称为客户机/服务器计算

尽管网络信息服务的主要用途是集中信息,但网络信息服务还可以简化网络名称。例如,假设您的公司设置了一个与 Internet 连接的网络。Internet 为您的网络指定了网络号 192.168.0.0 和域名 doc.com。公司有两个部门:销售和制造 (Manf),因此,其网络将划分为一个主网和两个子网(每个部门对应一个子网)。每个网络有自身的地址。

图表显示了 doc.com 和具有 IP 地址的两个子网。

如上所述,每个部门可由网络地址来标识,但用名称服务提供的描述性名称来标识会更好。

图表显示了 doc.com 和具有描述性名称的两个子网。

可以无需输入 198.168.0.0 物理地址作为邮件或其他网络通信的地址,而是输入 doc 作为地址。可以无需输入 192.168.2.0192.168.3.0物理地址作为邮件或其他网络通信的地址,而是输入 sales.docmanf.doc 作为地址。

名称还比物理地址更灵活。因为物理网络通常不会改变,而公司组织可能会发生变动。

例如,假定有三台服务器(S1、S2 和 S3)支持 doc.com 网络。且其中两台服务器(S1 和 S3)支持客户机。

图中显示具有三台服务器的 doc.com 域,其中两台服务器各自具有三台客户机。

客户机 C1、C2 和 C3 将从服务器 S1 获取网络信息。客户机 C4、C5 和 C6 将从服务器 S3 获取信息。下表对生成的网络进行了汇总。该表是该网络的大致说明,与实际的网络信息映射并不相似。

表 1–1 docs.com 网络说明

网络地址 

网络名称 

服务器 

客户机 

192.168.1.0 

doc 

S1 

 

192.168.2.0 

sales.doc 

S2 

C1、C2、C3 

192.168.3.0 

manf.doc 

S3 

C4、C5、C6 

现在,假设创建了第三个部门(测试部门),该部门从其他两个部门借入一些资源,但并未创建第三个子网。物理网络将不再与公司结构类似。

图表显示添加名为测试的第三个部门,但不添加第三个子网。

测试部门的流量将不具有自己的子网,但将在 192.168.2.0192.168.3.0 之间拆分。但是,通过网络信息服务,测试部门流量可以具有自己的专用网络。

图表显示具有专用网络的测试部门。

因此,当组织更改时,其网络信息服务可以按此处所示更改其映射。

图中显示一些客户机从一台服务器移至其他服务器的网络映射中的更改。

现在,客户机 C1 和 C2 将从服务器 S2 中获取信息。C3、C4 和 C5 将从服务器 S3 中获取信息。

通过更改网络信息结构来适应组织中的后续更改,而不需要重新组织网络结构。

Solaris 名称服务

Solaris 平台可提供以下名称服务。

大多数现代网络都组合使用上述两种或更多种服务。使用多种服务时,这些服务将由第 2 章,名称服务转换器(概述)中讨论的 nsswitch.conf 文件来协调。

DNS 名称服务的说明

DNS 是 Internet 为 TCP/IP 网络提供的名称服务。开发 DNS 后,网络中的计算机可由普通名称而非 Internet 地址来标识。DNS 可在本地管理域中的主机与跨域边界的主机之间执行命名。

使用 DNS 的联网计算机的集合称为 DNS 名称空间。DNS 名称空间可以划分为分层结构。DNS 域是一组计算机。每个域由两台或多台名称服务器支持,其中包括一台主服务器以及一台或多台辅助服务器。每台服务器都通过运行 in.named 守护进程来运行 DNS。在客户端,DNS 通过“解析程序”来实现。解析程序的功能是解析用户的查询。解析程序将查询名称服务器,然后名称服务器会返回请求的信息或对其他服务器的引用。

/etc 文件名称服务的说明

基于主机的原始 UNIX 名称系统是为独立的 UNIX 计算机开发的,后来修改为可用于网络。许多旧的 UNIX 操作系统和计算机仍在使用此系统,但是此系统并不适用于大型的复杂网络。

NIS 名称服务的说明

网络信息服务 (Network Information Service, NIS) 是独立于 DNS 开发的。DNS 通过使用计算机名代替数字 IP 地址来简化通信。NIS 的主要作用是通过对各种网络信息进行集中控制来更好地管理网络。NIS 存储有关网络、计算机名称和地址、用户、以及网络服务的信息。这种网络信息的集合被称为 NIS 名称空间

NIS 名称空间信息存储在 NIS 映射中。NIS 映射旨在替换 UNIX /etc 文件以及其他配置文件。NIS 除了存储名称和地址外,还存储大量的其他信息。因此,NIS 名称空间存在大量映射。有关更多信息,请参见使用 NIS 映射

NIS 使用与 DNS 类似的客户机/服务器布局。复制的 NIS 服务器可向 NIS 客户机提供服务。主要的服务器称为服务器,为确保其可靠,主服务器还具有备份,即从属服务器。主服务器和从属服务器都使用 NIS 检索软件,并且都存储 NIS 映射。有关 NIS 体系结构和 NIS 管理的更多信息,请参见第 5 章,设置和配置 NIS 服务第 6 章,管理 NIS(任务)

NIS+ 名称服务的说明

网络信息服务扩充版本 (Network Information Service Plus, NIS+) 与NIS 相似,但具有更多功能。但是,NIS+ 不是 NIS 的扩展。

NIS+ 名称服务旨在符合组织的结构。与 NIS 不同,NIS+ 名称空间是动态的,因为可以进行更新并可随时由任何授权用户使更新生效。

通过 NIS+ 可将有关计算机地址的信息、安全信息、邮件信息、以太网接口和网络服务存储在一个集中位置。这种网络信息的配置称为 NIS+ 名称空间

NIS+ 名称空间是分层的。NIS+ 名称空间在结构上与 UNIX 目录文件系统相似。通过这种分层结构可将 NIS+ 名称空间配置为符合组织的逻辑分层结构。名称空间的信息布局与其物理布局无关。因此,一个 NIS+ 名称空间可以划分为多个可独立管理的域。如果客户机具有适当的权限,则可以访问除了自身的域之外的域中的信息。

NIS+ 使用客户机/服务器模型来存储和访问 NIS+ 名称空间中包含的信息。每个域由一组服务器提供支持。主要的服务器称为服务器。备份服务器称为辅助服务器。网络信息存储在内部 NIS+ 数据库的 16 个标准 NIS+ 表中。主服务器和辅助服务器都运行 NIS+ 服务器软件,并且都保留 NIS+ 表的副本。对主服务器中 NIS+ 数据所做的更改将自动以增量方式传播到辅助服务器。

NIS+ 包括一个复杂的安全系统,用来保护名称空间的结构及其信息。NIS+ 使用身份验证和授权来验证是否应执行客户机对信息的请求。身份验证确定信息请求者是否是网络中的有效用户。授权确定是否允许特定用户拥有或修改请求的信息。有关 NIS+ 安全的更详细说明,请参见System Administration Guide: Naming and Directory Services (NIS+)

有关进行从 NIS+ 到 LDAP 的转换的信息,请参见第 16 章,从 NIS+ 转换为 LDAP

LDAP 名称服务的说明

Solaris 9 支持 LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)和 Sun Java System Directory Server(以前称为 Sun ONE Directory Server),以及其他 LDAP 目录服务器。

有关 LDAP 名称服务的更多信息,请参见第 8 章,LDAP 名称服务介绍(概述/参考)

有关由 NIS 转换到 LDAP 或由 NIS+ 转换到 LDAP 的信息,请参见第 15 章,从 NIS 转换为 LDAP(概述/任务)第 16 章,从 NIS+ 转换为 LDAP

名称服务:简要比较

 

DNS 

NIS 

NIS+ 

LDAP 

名称空间 

分层 

不分层 

分层 

分层 

数据存储 

文件/资源记录 

包含 2 列的映射 

包含多列的表 

目录 [视情况而定] 

服务器名 

主/从 

主/从 

根主/非根主;主/辅助;高速缓存/存根 

主/副本 

安全性 

无 

无(根或不包含任何内容) 

安全 RPC (AUTH_DH) 

验证  

SSL(视情况而定) 

传输 

TCP/IP 

RPC 

RPC 

TCP/IP 

范围 

全局 

LAN 

LAN 

全局