浮丘弋痕夕:RHEL 5 NIS服务器

来源:百度文库 编辑:中财网 时间:2024/05/14 13:31:25

服务器端:

1、安装 NIS 所需软件包
ypserv-2.19-3.i386.rpm:NIS服务的主程序包 
yp-tools-2.9-0.1.i386.rpm:提供NIS客户端设定功能的软件包 
ypbind-1.19-8.el5.i386.rpm:提供NIS客户端的查询指令功能的软件包 
portmap-4.0-65.2.2.1.i386.rpm:管理RPC 连接、启动 RPC 必需的软件包
NIS 相关文档
/etc/ypserv.conf:NIS主配置文件,可以规范NIS 客户端是否具有可以查询 NIS服务器的权限
/etc/hosts:记录主机和IP 地址对应关系,如果没有 DNS 系统,则 NIS 服务器的 hosts 文件需要每一台 NIS客户端的主机记录。
/etc/netgroup:设置信任的主机或网段
/etc/yp/Makefile:与建立数据库有关的配置文件
2、创建域用户
3、设置NIS 域名, 并使其开机自动添加


4、设置/etc/hosts 配置文件


5、设置/etc/ypserv.conf 主配置文件和/var/yp/securenets
Host : Domain : Map : Security 
Host:指定客户端,可以指定具体IP 地址,也可以指定一个网段
Domain:设置NIS 域名, 这里的NIS域名和 DNS 中的域名并没有关系,两者是两套不同系统,在同一个 NIS域中,客户端可以从NIS 服务器上查询用户名和密码,从 NIS 服务器可以与主服务器同步数据库内容
Map:设置可用数据库名称,可以用“*”代替所有数据库
Security:安全性设置。主要有none、port和deny三种参数设置。
none:没有任何安全限制,可以连接 NIS服务器。
port:只允许小于 1024 以下的端口连接 NIS 服务器。
deny:拒绝连接 NIS 服务器。
通常设置思路是允许所有内网客户端连接 NIS 服务器,除此之外的客户端都拒绝连接
ypserv.conf 文件是逐行解释执行,所以要注意设置顺序
这里我们保持配置文件内容不变.
以下配置是ypserv.conf文件中最基本和最常用的访问控制记录

/var/yp/securenets 具有比ypserv.conf更高的对主机进行访问控制的级别和效率.
此文件需要手工建立,当securenets不存在时,NIS服务器将允许所有主机访问NIS服务器.
securenets文件的配置比较简单,可以使用主机和网络两种配置记录,主机配置记录以host关键字开始,空格后设置主机的IP地址(不能使用主机名);网络配置记录由子网掩码和网络地址两部分组成,中间用空格进行分隔,子网掩码在前,网络地址在后;符合访问控制记录的主机被允许访问NIS服务器,其他主机将被拒绝访问.

以上配置中,'host 127.0.0.1'记录允许本机访问,'255.255.255.0 192.168.6.0'记录允许192.168.6.0/24网段的主机访问,其他所有主机都被NIS拒绝.
6、建立NIS 数据库
首先我们要启动 ypserv 服务,否则建立 NIS 数据库会报错

service ypserv start
建立NIS 数据库


当 NIS 数据库被建立之后,需要通知 ypserv 和yppasswdd 这两个服务,以告知NIS 数据库被更新过了,通常通知的方法就是重启这两个服务
顺便设置这两个服务的启动运行级别

注意:每次更改数据库内容后(比如更新用户密码)就需要使用 ypinit -m 命令重新创建数据库并重启ypserv 和yppasswdd 这两个服务,否则添加新数据将无法生效
ypinit命令将根据NIS服务器主机中的本地系统文件信息创建数据库文件,建立的数据库文件被保存在/var/yp/ 目录中与NIS域名同名的子目录中

ypinit -m 命令其实是调用make命令,并根据"/var/yp"目录中的Makefile文件的配置进行NIS服务器数据库文件的创建,因此修改Makefile文件中的配置将会影响创建NIS服务器的数据库文件的过程和结果.

7、重启相关服务使配置生效

 

客户端:

客户端必须安装 ypbind 和yp-tools 这两个软件包
(1)加入 NIS 域
确保客户端和服务器的 NIS 域名相同,可以使用nisdomainname 命令设置,然后设置开机自动配
置 NIS 域名 
  

(2)修改/etc/hosts 文件

(3)修改密码验证方式
NIS客户端在查找用户名和密码时先从本地开始查找,比如先查询/etc/passwd 和/etc/shadow文件等,如果没有查询到用户名和密码则发送广播到NIS 服务器从而进行查询。 默认情况下客户端如果没有查询到用户名和密码是不会发送广播到NIS 服务器的, 所以我们需要修改/etc/nsswitch.conf 文件
vi /etc/nsswitch.conf

作如下修改

(4)修改/etc/yp.conf 文件
在客户端/etc/yp.conf 文件中设置 NIS 服务器的主机名和NIS 域名

(5)启动 ypbind 服务 


 
客户端检测
yp-tools 软件包中自带一些测试工具,可以帮助我们更好得了解NIS 客户端和服务器通信情况
1、yptest
yptest命令测试数据库内容等所有与NIS 相关的信息

如果 Test 9: yp_all 下面出现NIS服务器上的所有帐号信息则表示配置成功,否则我们就要检
查上面的配置是否存在问题


2、ypwhich
ypwhich 命令主要测试 NIS客户端与服务器之间通信使用的是哪些数据库文件
只使用ypwhich 命令只显示 NIS 主机名
现在获取的是从 NIS 服务器 feng
ypwhich -x 则显示NIS 客户端与服务器通信使用了哪些数据库文件

3、ypcat
ypcat 命令可以查看NIS 服务器上使用者帐号及密码信息,也可以查看 NIS 服务器上的
/etc/hosts文件记录哪些主机信息
ypcat passwd:查看NIS 服务器上帐号密码等信息
ypcat hosts:查看NIS 服务器上的/etc/hosts文件记录哪些主机信息


4、ypmatch
ypmatch xxxx passwd:查询指定用户帐号密码信息

NFS+NIS实现自动挂载 NIS用户主目录

使用chongzi登陆,系统会提示bash提示符,而没有其他环境信息显示,如下图

这是因为 NIS帐号的主目录存放在NIS 服务器上,而客户端虽然通过 NIS 服务器进行验证成功,
但是客户端本地没有存放该用户的主目录信息, 当根据NIS数据库提供的信息寻找用户主目录时
将会提示错误
(1)共享用户主目录
vi /etc/exports


(2)启动 NFS 服务

(3) 客户端挂载目录,及开机自动挂载

vi /etc/fstab

最后的结果如下图