NIS即网络信息系统,是对主机账号等系统信息提供集中管理多的网络服务。
配置准备
1. 同步时间
首先确保服务器和客服端的时间同步,查看命令date,修改命令是:date 080709302009
意思是把系统时间修改为2009年8月7日9点30分
2. 名字和ip
即要有相应的DNS来解析主机ip和域名,安装软件包(该软件包在第一张光盘中)
#rpm –ivh ypserv-2.13-14.i386.rpm
服务器端配置:
同时确保portmap,time,time-udp,ypserv,yppasswdd服务开启
#service portmap start
#chkconfig time on
#chkconfig time-udp on
#service ypserv start
#service yppasswdd start
建立NIS的域名
#nisdomainname tllswa.com
#echo ‘/bin/nisdomainname tllswa.com’ >> /etc/rc.d/rc.local
#echo ‘NISDOMAIN=tllswa.com’ >>/etc/sysconfig/network
设置ypserv服务的配置文件
#vi /etc/ypserv.conf
127.0.0.0/255.255.255.0 : * :* :none
192.168.1.0/255.255.255.0 : * :* :none
* :* :* :deny
表示只允许本地和192.168.1.0网段的客户机来访问NIS服务器
启动NIS服务
#service ypserv start
#service yppasswdd start
构建NIS数据库
#/usr/lib/yp/ypinit –m(需要按Ctrl+D,y)
客户端配置管理:
建立NIS的域名
#nisdomainname tllswa.com
#echo ‘/bin/nisdomainname tllswa.com’ >> /etc/rc.d/rc.local
#echo ‘NISDOMAIN=tllswa.com’ >>/etc/sysconfig/network
设置yp.conf配置文件
#echo ‘domain tllswa.com server linux’>>/etc/yp.conf(linux为服务器的主机名!)
设置nsswitch.conf修改如下配置:
Passwd:files nis
Shadow:files nis
Group:files nis
Hosts:files nis dns
启动ypbind服务
#service ypbind start
服务器和客户端都配置完毕后,设置服务器端的/home作为所有NIS客户端账号的公共宿主目录
#vi /etc/exports
/home 192.168.1.0/24(rw,sync)
#service nfs restart
客户端可以通过mount命令挂载服务器的/home 到自己的/home目录

NIS即网络信息系统,是对主机账号等系统信息提供集中管理多的网络服务。

Server配置:

1.#vi /etc/sysonfig/network //修改主机名为nis(修改完需重启生效)
2.# netconfig        //配置Server的IP地址为192.168.1.1
# service network restart
3.# useradd zyg
# passwd zyg     //在Server上新建用户zyg并设置口令
4.# rpm –q portmap    //检查portmap是否安装并起动,ypserv需要portmap服务支持
5.# rpm -qa | grep ^yp
# mount /dev/cdrom   //挂载RHEL4第一张安装光盘
# cd /media/cdrom/RedHat/RPMS/
# rpm -ivh ypserv-2.13-14.i386.rpm   //安装NIS服务器软件包
6.# chkconfig –list time
# chkconfig –list time-udp
# chkconfig –list | grep time  //等同上面两句
# chkconfig time on
# chkconfig time-udp on    //启动time服务和time-udp服务
或者使用以下方法修改配置文件
# vi /etc/xinetd.d/time找到底下有一行内容为disable=yes把它改成no
# vi /etc/xinetd.d/time-udp找到有一行内容为disable=yes把它改成no
# /etc/rc.d/init.d/xinetd restart //重启动这两个服务
7.# nisdomainname tllswa.com   //在NIS服务器主机中建立NIS域名
# vi /etc/rc.d/rc.local 将底下这一行加入这个档案的最后一行内:
/bin/nisdomainname tllswa.com
# vi /etc/sysconfig/network 加入底下这一行:
NISDOMAIN=tllswa.com
8.# vi /etc/ypserv.conf   //配置NIS服务器主配置文件
<主机名称/IP>:<网域名称>:<数据库类别>:<安全性>
①主机名称/IP:这里可以这样设定:192.168.1.0/255.255.255.0
②网域名称:通常都设定成为 * 即可!
③数据库类别:可以使用 * 来表示所有的数据库!
④安全性:主要有三种参数:
none :无论如何就是可以无条件进入本机;
port :仅允许 < 1024 以下的 port 进入;
deny :无论如何就是关闭不让人家登入主机!
系统当中,只有 root 可以启用小于 1024 以下的 port ,因此,更安全的设定,可以使用参port,如果您想要让您的 NIS Server 运作的较为快速,并且安全性上面没有太多的考虑,那么使用 none 是一个不错的主意!
127.0.0.0/255.255.255.0 : * :* :none
192.168.1.0/255.255.255.0 : * :* :none
* :* :* :deny
表示只允许本地和192.168.1.0网段的客户机来访问NIS服务器
9.# /etc/rc.d/init.d/ypserv start //启动服务
# /etc/rc.d/init.d/yppasswdd start //启动服务
10.# /usr/lib/yp/ypinit -m   //构建NIS服务器数据库
next host to add: <==在这里按下[ctrl + d]跳出
Is this correct? [y/n: y] y <==在这里输入yes
或者使用方法:cd /var/yp/,make
11.# service portmap status  //查看portmap是运行状态
# /etc/rc.d/init.d/ypserv restart //重启服务
# /etc/rc.d/init.d/yppasswdd restart //重启服务
12.解决NIS客户机无法找到宿主目录
# rpm -qa | nfs-utils portmap //查询NFS所需软件包是否安装(默认安装)
# vi /etc/exports //配置NFS配置文件
/home    *(sync,rw) 把NIS服务器HOME目录共享
# service portmap restart //启动NFS所需服务
# service nfs start

Client配置:

1.# netconfig        //配置Client的IP地址为192.168.1.2
# service network start
2.# rpm -qa | grep ^yp //检查Client所需软件包ypbind和yp-tools是否安装(默认安装)
4.# vi /etc/hosts   //设定 NIS Server 的 IP 对应主机名称
加入行192.168.1.1 nis
5.# nisdomainname tllswa.com   //在NIS Client主机中建立NIS域名
# vi /etc/rc.d/rc.local 将底下这一行加入这个档案的最后一行内: /bin/nisdomainname tllswa.com
# vi /etc/sysconfig/network 加入底下这一行:NISDOMAIN=tllswa.com
6.# vi /etc/yp.conf 加入行: domainname tllswa.com server nis
那个 tllswa.com 是你的 NIS 的 domain ,至于 nis 则是 NIS Server 的主机名称
7.# vi /etc/nsswitch.conf
passwd:     files nis   使用者相关信息查寻
shadow:     files nis   使用者密码的查寻
group:      files nis   使用者的群组信息查寻
hosts:      files nis dns   主机名称与IP对应的查寻
8.# service ypbind start //启动ypbind服务程序
9.# mount -t nfs 192.168.1.1:/home /home //挂载NFS文件系统
这样一来,您的 NIS Clients 就具有和 NIS Server 主机一模一样的宿主目录了
或者设置为自动挂载编辑/etc/fstab文件加入行
nis:/home/   /home nfs defaults    0 0

10.# yptest
# ypwhich 单纯使用 ypwhich 的时候显示的是『NIS Client 的 domain』名称
# ypwhich -x 加入 -x 这个参数时则是显示『NIS Client 与 Server 之间沟通的数据库有哪些?』
# ypcat -x 主要的功能就是『列出数据库』啰!与 ypwhich -x 相同功能
# ypcat [数据库名称或功能] 这个指令可以用来取得 NIS Server 上面各个数据库的内容
# ypcat passwd 举例来说,我们想要知道 passwd ( 密码数据 ) 的所有使用者内容就需要使用这条命令
# yppasswd 在 NIS Client 端修改各个账号的密码
不太建议大家使用这些指令去修改数据库的内容啦!比较建议这样做:

登入到 NIS Server 主机里面去,进行 useradd 或者是 passwd 修改账号与密码等等的更动;使用 /usr/lib/yp/ypinit -m 重新制作数据库档案!