第二一章 NIS:网络信息服务
21.1 软件安装
21.2 配置NIS服务器
21.3 配置NIS客户
    网络信息服务(Network Information Service,简称NIS)是一个简单的客户机/服务器数据库系统。但是在Linux下常常使用它通过网络共享口令和组文件。本章介绍主(master) NIS服务器和从(slave) NIS服务器的设置以及使客户使用服务器所需的配置。
     NIS由Sun Microsystems作为其SunOS 操作系统的一部分开发的,在最初被称为“黄页(Yellow pages)”,简称为YP;然而,不巧的是,“黄页”这个名字已经作为一个商标被使用,从法律角度考虑,该名字被迫改为NIS。不过在以后的学习中可以看到,所有NIS命令仍然都以yp为前缀。
     由于NIS协议是公开的,因此它的应用很快延伸到其他UNIX版本中。Linux从一开始就提供对NIS的支持。由于Linux遵从NIS标准,因此它可以作为NIS服务系统或者是客户系统与其他种类的UNIX一同工作。
21.1 软件安装

若NIS软件未安装,需要从安装盘上安装NIS软件,通常为3个RPM包,ypserver, ypbind, tools。在RedHat Linux9中, NIS软件为:yp-tools-2.7-5, ypbind-1.11-4, ypserv-2.6-2.

21.2 配置NIS服务器
  • 设置NIS域名(不是DNS域名),使用domainname命令:
    domainname yourname.yourdomain.com
  • 确定通过NIS共享的文件,通过编辑/var/yp/Makefile文件来完成。NIS通过使用make使用程序来维护它的映射。用一编辑器来打开编辑该文件。把不需要做映射的文件所在的行注释掉。若需要通过NIS作用户验证,可以只保留/etc/passwd, /etc/group, /etc/shadow三个文件做映射。
  • 初始化NIS数据库。使用/usr/lib/yp/ypinit -m 命令,它将提示输入想要设置的从NIS服务器的名字,可以给一个名字,作为从NIS服务器。运行该命令会产生或更新NIS映射文件,可查看目录/var/yp/NISdomainame。若出现错误信息,需检查/var/yp/Makefile文件。以后只需要进入/var/yp运行make就可以产生或更新NIS映射文件。
  • 使用yppasswdd守护程序可以允许用户从NIS客户端修改其在NIS服务器端的密码。
    /etc/init.d/ypserv start
    /etc/init.d/yppasswdd start

 

21.3 配置NIS客户
  • 编辑/etc/yp.conf文件。改变其中一行domain NISDOMAIN server HOSTNAME。该服务器的IP地址必须在/etc/hosts中列出。
  • 在/etc/sysconfig/network文件中添加一行NISDOMAIN=yourname.yourdomain.com
  • 修改/etc/nsswitch.conf调整文件使用次序。
  • 测试。若成功,显示/var/yp/domainname/passwd.yp文件内容。
    domainname yourname.yourdomain.com
    /etc/init.d/ypbind start
    ypcat passwd