NIS(Network Information Service)网络信息系统,
是对主机账号等系统信息提供集中管理的网络服务。
NIS服务器为NIS客户机提供的信息不仅限于用户账号信息,在NIS服务器的数据库中包括以下几类信息:
*用户账号信息,包括用户名,登录口令和用户宿主目录等信息,用于取代Linux主机中的passwd文件和shadow文件中的作用。
*组账号信息,包括组账号等,用于取代Linux主机中group文件的作用。
*IP地址与主机名称对应记录的信息,用于取代Linux主机中hosts文件的作用。
为了方便NIS客户机的查询,以上这些信息在NIS服务器中被保存在不同名称的数据库(文件)中进行集中管理。
NIS 服务器的安装 非独立服务都需要xinetd 的管理。
超级守护进程
使用NIS服务能够较好地解决用户账号集中管理的问题。
rpm -ivh ypserv-2.13-5.i386.rpm
在服务器版本4中需要设置time 和time-udp 服务的启动状态
nis 服务器的运行需要time ,time-udp服务的支持
chkconfig time on
chkconfig time-udp on
service xinetd restart
在NIS 服务器主机中建立NIS 域名
nisdomainname nistest
echo '/bin/nisdomainname nistest‘ >> /etc/rc.d/rc.local
echo 'NISDOMAIN=nistest'>> /etc/sysconfig/network
ypserv.conf 文件的配置
NIS 服务器的主配置文件时ypserv.conf
配置文件中可设置对认证数据库的访问控制
域 本地的数据库 安全级别
127.0.0.1/255.255.255.0 : * : * : none
securenets 安全配置文件
securenets 文件用于对NIS 客户端主机进行访问控制
securenets 文件需要手工建立
cat /var/yp/securenets
host 127.0.0.1
255.255.255.0 192.168.1.0
启动NIS 服务器
nis 服务器需要portmap 服务的支持,并且需要启动
ypserv ,yppasswdd 两个服务
service portmap status /start
service ypserv start
service yppasswdd start
service ypbind restart
构建NIS 数据库 当改变用户信息后需要重新构建NIS 数据库
ypinit 命令构建nis 服务器的数据库文件
ypinit 命令按照“/var/yp”目录中的Makefile 文件的配置
内容构建数据库文件
/usr/lib/yp/ypinit -m
主机名的通过改变下面的文件来修改
vi /etc/sysconfig/network
NIS 客户机的配置和使用步骤
安装NIS 客户机软件包ypbind 和yp-tools两个软件包
设置hosts 文件中的NIS 服务器的主机记录
建立NIS 的域名
设置yp.conf 配置文件
echo 'domain nistest server servername' >>/etc/yp.conf
设置nsswitch.conf 文件
启动ypbind 服务程序。
yp-tools 软件包中提供的命令
yptest
ypwhich
ypwhich -x
ypcat -x
ypcat passwd
启动 客户机:
service portmap status
service ypbind start
.客户端的检验
使用yptest、ypwhich、ypcat进行检验,关于命令的相关参数,可以用man命令查到。
在我做实验的过程中用yptest检验的时候发现错误。Can't communicate with ypbind
,通过检验发现NIS客户端的iptables处于状态,并阻止与NIS的通信。为了方便我用service iptables stop关掉防火墙。再次检验通过
并在服务器端启动 service ypbind start
yptest测试错误
WARNING: No such key in map (Map passwd.byname, key nobody) 这条信息可以忽略,是因为nobody id号的问题
转载于:https://blog.51cto.com/litclive/726089