NIS服务器搭建

NIS(Network Information Service)是一个为网络中所有的机器提供网络信息的系统,包括用户名、密码、主目录、组信息等。如果用户名以及密码保存在了NIS密码数据库中,NIS允许此用户在网络当中的任何一台运行有NIS客户程序的机器上登陆。这使得整个网络看起来象一个独立系统,在所有的主机上有着相同的帐号,NIS是一个客户机/服务器系统,ypbind是定义NIS服务器的客户端进程。一旦确定了服务器位置,客户机绑定到了服务器上,所以客户端的住处查询都发往服务器。ypserv是回答客户端查询的服务器进程。你可以以同样的方式通过NIS向网络上的所有机器同步/etc/hosts中的主机名信息。NIS在所谓的包含 “键-值对” 的maps中保存数据库信息。Maps被存储于运行NIS服务器的*主机中,从该主机中,客户可以通过各种RPC调用检索信息

二、NIS相关服务

1、后台进程:ypserv(NIS服务器端),ypbind(NIS客户端),yppasswdd(修改密码时,NIS客户端与NIS服务器端之前通过这个服务来通信)

2、使用端口:由portmap (111)分配(因为NIS、NFS 都是依赖于portmap服务的,具体查看/etc/rpc文件)

3、所需RPM包:ypserv(NIS服务器必需的),ypbind(NIS客户端必需的),yp-tools(NIS的常用工具)

4、相关RPM包:portmap

三.相关服务的安装与设置

3.1 NIS服务器的安装

安装NIS服务器数据包 ypbind组件是client端组件 yp-tools是共用工具包,这两个都是默认安装,现在我们安装NISserver。

[root@redhat1 ~]# rpm -ivh /mnt/cdrom/Server/ypserv-2.19-5.el5.i386.rpm

[root@redhat1 ~]# rpm -ql ypserv

/etc/rc.d/init.d/yppasswdd ,允许用户远程修改域用户的口令

/etc/rc.d/init.d/ypserv 服务器程序

在NIS服务器主机中建立NIS域名

nisdomainname staid.edu

echo '/bin/nisdomainname staid.edu' >>/etc/rc.d/rc.local

echo 'NISDOMAIN=staid.edu' >>/etc/sysconfig/network

修改/etc/hosts 中域名为 staid.edu

修改NIS服务器的主配置文件是/etc/ypserv.conf

发现生效的两行

# under MSDOG everbody is root and can access ports < 1024 !!!

#所有的主机 访问所有的域,访问shadown.byname数据库,以端口形式访问既以1024以下的端口访问

* : * : shadow.byname : port

* : * : passwd.adjunct.byname : port

把以上两行注释

在最后加入三行,既只有192.168.0.0网段和127.0.0.0网段访问,其他的都阻止掉

192.168.0.0/255.255.255.0 : * : * : none

127.0.0.0/255.255.255.0 : * : * : none

* : * : * : deny

securenets安全配置文件

如果 /var/yp/securenets 文件是空白的或不存在(按默认方式安装后的情形就会如此),NIS 就会监听所有网络。它做的第一件事是在文件中放置一对子网掩码/网络值,因此 ypserv 只会对来自恰当网络的请求做出答复。

在首次使用 NIS 服务器前,决不能没有创建 /var/yp/securenets 文件就启动它。 这种技术并不提供对 IP 假冒攻击的保护,但是它至少限制了 NIS 服务器要为哪些网络提供服务。 securenets文件需要手工建立

cat /var/yp/securenets

host 127.0.0.1

255.255.255.0 192.168.0.0

启动NIS服务器

NIS服务器需要portmap服务的支持,并且需要启动ypserv和yppasswdd两个服务

service portmap restart

service ypserv start

service yppasswdd start

(这一段可以不要)

设置time和time-udp服务的启动状态

NIS服务器的运行需要time和time-udp服务的支持

chkconfig time on

chkconfig tim-udp on

service xinetd restart ,重启超级守护进程

创建帐号:

useradd shasha

帐号创建完毕后

构建NIS数据库

ypinit命令可构建NIS服务器的数据库文件

ypinit命令按照/var/yp/目录中的makefile文件的配置内容构建数据库文件

/usr/lib/yp/ypinit -m

配置完毕

在/usr/lib/yp/下面生成域名目录。目录下是数据库文件

看客户端配置:

安装NIS客户机软件包 ypbind yp-tools

设置hosts文件中的NIS服务器主机记录

NIS客户机需要通过主机名访问NIS服务器

echo '192.168.0.2 ypserv.staid.edu' >&gt;/etc/hosts

建立NIS的域名

NIS客户机中建立NIS域名的操作与NIS服务器中相同

nisdomainname staid.edu

echo '/bin/nisdomainname staid.edu' &gt;&gt; /etc/rc.d/rc.local

echo 'NISDOMAIN=staid.edu' &gt;&gt; /etc/sysconfig/network

设置yp.conf配置文件

NIS客户机的配置文件是yp.conf 其中需要设置NIS域名和服务器主机名称

echo 'domain staid.edu server ypserv.staid.edu'&gt;&gt;/etc/yp.conf

设置/etc/nsswitch.conf文件

文件中需要添加使用nis作为主机信息的查询方式,找到如下行

passwd: files

shadow: files

group: files

在后面一律添加nis

passwd: files nis

shadow: files nis

group: files nis

代表本地找不到用户就区nis上找

ypwhich

ypcat -x

ypcat passwd

启动ypbind 服务程序

service portmap restart

service ypbind restart

然后从192.168.0.3客户端退出来,利用shasha帐号进入,就能进去了。:-)



本文转自guoli0813 51CTO博客,原文链接:http://blog.51cto.com/guoli0813/356767,如需转载请自行联系原作者

上一篇:超级大佬已提前布局AI域名,人工智能时代真的来临了?


下一篇:Linux操作系统下IPTables配置方法详解