分类:
2005-06-30 12:23:28
基本内容:
描述NIS的基础知识
配置域名服务的switch文件
描述NIS安全
配置一个NIS域
建立NIS映射
发现并检查NIS错误
使用NIS的好处包括:文件的集中式管理,随网络递增更好的文件缩放式管理
一个NIS域包括一个NIS服务器主机,0个或多个服务器分机,一个或多个客户端
NIS储存的信息包括主机名,它们的IP地址,用户,网络,网络服务,这些收集起来的信息被称为NIS namespace.
NIS映射位于/var/yp/domainname目录,对于这个目录里面的每个映射都包含两个文件:.pag和.dir
每个映射包含一个key和一个value,key代表用来在映射中搜索的数据,value代表在一个成功的搜索后返回的数据
NIS映射的语法格式是:
map.key.pag和map.key.dir
map代表映射名称,比如说hosts,passwd等等
key代表映射种类关键字,比如说byname,byaddr等等
pag代表映射的数据
可以用两条命令来读映射,一是ypcat,一是ypmatch
运行中的NIS域包含几个主要的程序,分别是:ypserv,ypbind,rpc.yppasswdd,ypxfrd,rpc.ypupdated
ypserv程序完成的任务是:
运行在主服务器和从服务器上
响应来自客户端的ypbind请求
响应客户端的请求信息
ypbind程序完成的任务是:
运行在所有NIS客户端系统上
制造CS模式的绑定请求
将所有的绑定信息放在/var/yp/binding/domainname目录
如果到主机的链接丢失那么重新绑定到另外的主机
在library-call等级下请求得到NIS映射信息
rpc.yppasswdd程序要完成的任务是:
允许用户更改他们的密码
在服务器主机上更新passwd和shadow文件
更新NIS密码映射
将NIS密码映射提供给所有的从服务器
NIS使网络信息更易于管理,然而它也容易产生安全漏洞.有两种方法可以关闭这两个安全漏洞,一个是用securenets文件来限制对单个主机或者一个子网的访问,另一个是用passwd,adjunct文件来限制通过网络对密码信息的访问
/var/yp/securenets文件限制了对NIS服务器的访问,如果这个文件存在在NIS服务器上,那么服务器只对这个文件中存在的主机名和IP地址进行响应.如果要更改这个文件,必须先杀死并重启ypserv和ypxfrd程序.
# /usr/lib/netsvc/yp/ypstop
# /usr/lib/netsvc/yp/ypstart
passwd.adjunct文件限制了没有授权的用户察看加密的密码,察看/etc/passwd文件的时候:
# cat /etc/passwd |grep usera
usera:x:3001:10::/export/home/usera:/bin/ksh
如果用ypmatch命令,那么就可以察看加密的密码:
# ypmatch -k usera passwd
usera: usera:LojyTdiQev5i2:3001:10::/export/home/usera:/bin/ksh
如果要用ypcat或者ypmatch命令察看passwd.adjunct文件中的密码项,只能看到:
# ypmatch -k usera passwd
usera: usera:##usear:3001:10::/export/home/usera:/bin/ksh
要产生NIS映射,需要源文件.可以在服务器主机的/etc目录下找到源文件.有时候源文件的copy放在另外的目录.不要将源文件保存在/etc目录,因为映射中的内容和限制对服务器主机访问的本地文件里面的内容相同.这对于/etc/passwd和/etc/shadow文件是一个特别的问题,因为这样一来所有的用户都可以对服务器主机的root密码进行访问那样就造成所有的NIS客户端都通晓这个密码.
将源文件放到另外的目录,要更改/var/yp/makefile文件:
1,change the DIR=/etc line to DIR=/your-choice
2,change the PWDIR=/etc line to PWDIR=/your-choice
*******************************************************
converting ASCII source files into NIS maps
*******************************************************
要在服务器主机上建立一个新的映射,执行命令:# /usr/sbin/ypinit -m
建立一个NIS域名主机服务器,执行下面的步骤:
1,判断网络上的哪台机器用来作NIS服务器
2,将/etc/nsswitch.nis文件复制到/etc/nsswitch.conf文件,必要的时候修改这个文件
3,选择一个NIS域名,一般长度要少于32个字符
4,按下domainname命令来设立本地NIS域
# domainname classroom.central.sun.com
5,以这个域名创建一个/etc/defaultdomain文件
6,如果这些文件不存在,那么用touch命令创建0字节的文件,使用下面的一些名字:/etc/ethers,/etc/bootparams,/etc/locale,/etc/timezone,/etc/netgroup,/etc/netmasks,这些文件对于完全的创建NIS映射很有必要.
7,在/var/yp目录安装 updated makefile文件
8,创建/etc/locale文件,以下面的格式: domainname locale
比如:classroom.central.sun.com en_us
9,使用本地/etc文件初始化服务器主机
# ypinit -m
10,在服务器主机上开启NIS程序
# /usr/lib/netsvc/yp/ypstart
11,如果想停止运行在NIS服务器上的NIS服务,运行下面的指令:
# /usr/lib/netsvc/yp/ypstop
********************************************************
更新NIS映射的步骤是:
1,更新源目录中的text文本
2,切换到/var/yp目录
3,用make命令刷新NIS数据库
# /usr/ccs/bin/make
********************************************************