⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 0430nis.htm

📁 鸟哥的linux私房菜
💻 HTM
📖 第 1 页 / 共 5 页
字号:
	UID, GID 均小于 500 以下的帐号即可</span>,
	如此一来既可让系统执行无误,也能够让登入者的资讯完全来自 NIS server ,比较单纯啦!<br />

	<div style="padding: 10 0 10 0 ;" align="right"><table width="90%"><tr><td><b>Tips:</b><br /><span style="font-style: italic; color : darkgreen">	事实上,你想要让 NIS 伺服器写入的各项帐号资料都在 NIS server 的 /var/yp/Makefile 那个档案设定的!
	您可以进入该档案搜寻一下 UID 就知道了! ^_^
	</span></td><td><img src="../images/vbird_face.gif" /></td></tr></table></div>
	<hr /><a NAME="nis_client_pack"></a><img src="../images/penguin-s.gif" alt="小标题的图示" height="23" width="16" align="middle" /><span class="text_h2">NIS client 
	所需套件与套件结构</span><br />
	<div class=block2>
		NIS client 端所需要的套件仅有∶<br />
		<ul>
		<li>ypbind
		<li>yp-tools</ul>
		即可,yp-tools 提供查询的软体,至于 ypbind 则是与 ypserv 互相沟通的用户端连线软体啦!
		另外,在 CentOS 当中我们还有很多设定档是与认证有关的,包含 ypbind 的设定档时,
		在设定 NIS client 你可能需要动到底下的档案∶<br />

		<ul>
		<li><span class=text_import1>/etc/sysconfig/network</span>
			∶里头主要设定了 NIS 领域名称,让 ypbind 启动时可以设定好;
		<li><span class=text_import1>/etc/hosts</span> ∶很重要吧!至少需要有各个 NIS 伺服器的 IP 与主机名对应;
		<li><span class=text_import1>/etc/yp.conf</span> ∶这个则是 ypbind 的主要设定档,里面主要规范 NIS server ;
		<li><span class=text_import1>/etc/sysconfig/authconfig</span> ∶规范帐号登入时的允许认证机制;
		<li><span class=text_import1>/etc/pam.d/system-auth</span> ∶这个最容易忘记!因为帐号通常由 PAM 模组所管理,
			所以你必须要在 PAM 模组内加入 NIS 的支援才行!
		<li><span class=text_import1>/etc/nsswitch.conf</span> 
			∶这个档案重要到不行!可以规范帐号密码与相关资讯的查询顺序,预设是 /etc/passwd 再 NIS 等等;
		</ul>

		另外, NIS 还提供了几个有趣的程式给 NIS 用户端来进行帐号相关参数的修改,例如密码、shell 等等,
		主要有底下这几个指令∶<br />
		<ul><span class=text_import2><font face="细明体">
		<li>/usr/bin/yppasswd ∶更改你在 NIS database (NIS Server 所制作的资料库) 的密码
		<li>/usr/bin/ypchsh &nbsp; ∶同上,但是是更改 shell
		<li>/usr/bin/ypchfn &nbsp; ∶同上,但是是更改一些使用者的讯息!
		</font></span></ul>
		OK!那么底下就让我们开始来设定 NIS 用户端吧!^_^<br /><br />
	</div>

	<hr /><a NAME="nis_client_setup"></a><img src="../images/penguin-s.gif" alt="小标题的图示" height="23" width="16" align="middle" /><span class="text_h2">NIS client 
	的设定与启动</span><br />
	<div class=block2>
		启动 NIS client 的设定就简单多了!最主要是加入 NIS domain 当中,然后再启动 ypbind 即可。
		整个设定过程是这样的∶<br /><br />

		<hr /><li><span class=text_import1>设定好 NIS domain 以及 /etc/hosts 主机名对应</span></li>
		<div class=block2>
		设定 NIS domain 就利用 nisdomainname 来处理即可啊∶<br />

<table class="term"><tr><td class="term"><pre>
<span class=term_hd>1. 直接建立领域名称</span>
[root@linux ~]# <span class=term_command>nisdomainname vbirdnis</span>

<span class=term_hd>2. 开机立即启动此一领域名称</span>
[root@linux ~]# <span class=term_command>vi /etc/rc.d/rc.local</span>
<span class=term_say># 加入底下这一行∶</span>
<span class=term_write>/bin/nisdomainname vbirdnis</span>

<span class=term_hd>3. 预设在启动 ypbind 时,设定 NIS 领域名</span>
[root@linux ~]# <span class=term_command>vi /etc/sysconfig/network</span>
<span class=term_say># 加入底下这一行∶</span>
<span class=term_write>NISDOMAIN=vbirdnis</span>
</pre></td></tr></table>

		然后则是主机名称与 IP 的对应设定档,重要的很!<br />

<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>vi /etc/hosts</span>
<span class=term_write>192.168.1.2    master.vbirdnis
192.168.1.10   slave.vbirdnis
192.168.1.100  client.vbirdnis</span>
</pre></td></tr></table>

		这样就好了!继续下一步! <br /><br />
		</div>

		<a name="ypbind"></a><hr /><li><span class=text_import1>启动 ypbind 来连结至 NIS server </span></li>
		<div class=block2>
		<span class=text_import2>要启动 ypbind 必须要设定很多的档案,实在很麻烦~不过不打紧, 
		CentOS 提供给我们一个工具『authconfig』</span>,
		透过这个工具我们可以很快的将 ypbind 设定起来。你只要在终端机环境下下达
		authconfig 就能够设定了。设定的方式如下所示∶<br /><br />

		<a name="authconfig"></a>
		<center>
		<img src="0430nis/authconfig_01.png"
		alt="authconfig 的使用说明" 
		title="authconfig 的使用说明"><br />
		图二、authconfig 的使用说明</center><br />

		系统原本就会有 MD5 及 Shadow 的加密编码,您只要选择上图的 NIS 项目,然后按下 OK 
		便进入到如下所示画面∶<br /><br />

		<center>
		<img src="0430nis/authconfig_02.png"
		alt="authconfig 的使用说明" 
		title="authconfig 的使用说明"><br />
		图三、authconfig 的使用说明(续)</center><br />

		在你输入了正确的 NIS 领域名称 (Domain) 以及正确的主机名称 (就是主控主机) ,
		并且按下 OK 后,<span class=text_import2>你的 CentOS 就会自动的帮你启动 portmap 以及 ypbind 这两支程式,
		同时还会自动的使用 chkconfig 的功能帮您在开机时自动启动 portmap 及 ypbind 喔!</span>
		真的是很方便吧!这样你就启动了 ypbind 了!很简单吧!<br /><br />

		如果你真的想要手动处理的话,那么你必须要手动的修改底下这些档案∶<br />
		<ul><span class=text_import2>
		<li>/etc/nsswitch.conf (修改许多主机验证功能的顺序)
		<li>/etc/sysconfig/authconfig (CentOS 的认证机制)
		<li>/etc/pam.d/system-auth (许多登入所需要的 PAM 认证过程)
		<li>/etc/yp.conf (亦即是 ypbind 的设定档)
		</span></ul>

		事实上, <a href="#authconfig">authconfig</a> 指令也是在处理这些档案而已。
		我们就来谈一谈这个小细节吧!<br />

<table class="term"><tr><td class="term"><pre>
<span class=term_hd>1. /etc/nsswitch.conf</span>
[root@linux ~]# <span class=term_command>vi /etc/nsswitch.conf</span>
<span class=term_say># 这个档案的内容有相当多,不过如果你只想要进行登入验证,可以这样∶</span>
passwd:     files <span class=term_write>nis</span>
shadow:     files <span class=term_write>nis</span>
group:      files <span class=term_write>nis</span>
hosts:      files <span class=term_write>nis</span> dns
<span class=term_say># 亦即只要加入 nis 即可!这几个设定的意义是∶
# 1. passwd: 就是使用者相关资讯查寻,分别为 /etc/passwd, nis
# 2. shadow: 就是使用者密码的查寻, /etc/shadow, nis
# 3. group:  就是使用者的群组资讯查寻, /etc/group, nis
# 4. hosts:  就是主机名称与IP对应的查寻,/etc/hosts, nis 及 /etc/resolv.conf</span>

<span class=term_hd>2. /etc/sysconfig/authconfig</span>
[root@linux ~]# <span class=term_command>vi /etc/sysconfig/authconfig</span>
USENIS=no
<span class=term_say># 这个档案的内容很好修改!只要将上面 NIS 部分改成 yes 即可∶</span>
USENIS=<span class=term_write>yes</span>

<span class=term_hd>3. /etc/pam.d/system-auth</span>
[root@linux ~]# <span class=term_command>vi /etc/pam.d/system-auth</span>
<span class=term_say># 这个部分也很重要!很容易忘记啦!修改 PAM 的设定档找到如下一行∶</span>
password    sufficient    /lib/security/$ISA/pam_unix.so nullok 
use_authtok md5 shadow
<span class=term_say># 上面可是同一行喔!将他改成∶</span>
password    sufficient    /lib/security/$ISA/pam_unix.so nullok 
use_authtok md5 shadow <span class=term_write>nis</span>

<span class=term_hd>4. /etc/yp.conf</span>
[root@linux ~]# <span class=term_command>vi /etc/yp.conf</span>
<span class=term_say># 这个是 ypbind 的主要设定档,主要语法是这样的∶
# domain [NIS领域] server [主机名称]
# 或者是透过广播,适合用于大网域有多部 NIS 伺服器时∶
# domain [NIS领域] broadcast</span>
<span class=term_write>domain vbirdnis broadcast</span>
</pre></td></tr></table>

		这样设定完成后,再给他启动 ypbind 即可∶<br />

<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>/etc/init.d/portmap start</span>
[root@linux ~]# <span class=term_command>/etc/init.d/ypbind start</span>
</pre></td></tr></table>

		你可以手动处理,也可以直接使用 <a href="#authconfig">authconfig</a> 啦!
		鸟哥这里倒是建议您可以直接使用 authconfig 比较简单啊! ^_^!<br /><br />

		另外,那些手动处理的档案当中,
		/etc/nsswitch.conf 是很重要的,因为他规范了 Linux 本机要使用某些服务时,例如帐号/密码的资料、
		主机名称的对应资料、port number 对应服务名称的资料等等,这些资料的搜寻顺序!
		更多的资料请自行进入该档案内查阅,我们也会在 DNS 伺服器章节再次提到这个档案的。<br /><br />

		至于其他两个设定档, /etc/sysconfig/authconfig, /etc/pam.d/system-auth 则是与使用者帐号的验证有关,
		这是 CentOS (Red Hat 系统) 所惯用的设定档,如果没有修改设定的话,那么顺利启动 ypbind 也是无法登入的啦!
		这样说,可以了解吧! ^_^
		</div>
	</div>

	<hr /><a NAME="nis_client_check"></a><img src="../images/penguin-s.gif" alt="小标题的图示" height="23" width="16" align="middle" /><span class="text_h2">NIS client 端的检验∶
	yptest, ypwhich, ypcat</span><br />
	<div class=block2>
		如何确定 NIS client 已经连上 NIS server 呢?简单的要命啊!你可以利用 id 这个指令直接检查 NIS server
		有的,但是 NIS client 没有的帐号,如果有出现该帐号的相关 UID/GID 资讯时,那表示有连接上啊!
		除此之外,我们还可以透过 NIS 提供的相关检验功能来检查喔!底下分别来瞧一瞧∶<br /><br />

		<a name="yptest"></a><hr /><li><span class=text_import1>利用 yptest 检验资料库之测试∶</span></li>
		<div class=block2>
		直接输入 yptest 即可检查相关的测试资料,如下所示∶<br />

<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>yptest</span>
Test 1: domainname
Configured domainname is "vbirdnis"

Test 2: ypbind
Used NIS server: master.vbirdnis

Test 3: yp_match
WARNING: No such key in map (Map passwd.byname, key nobody)
<span class=term_say>....中间省略....</span>

Test 8: yp_maplist
hosts.byname
group.byname
passwd.byuid
group.bygid
passwd.byname
hosts.byaddr
<span class=term_say>....中间省略....</span>

Test 9: yp_all
<span class=term_say>....中间省略....</span>
1 tests failed
</pre></td></tr></table>

		从这个测试当中我们可以发现一些错误,<span class=text_import2>重点在第九个步骤 yp_all 必须要有列出您 NIS server 
		上头的所有帐号资讯,如果有出现帐号相关资料的话,那么应该就算验证成功了</span>!比较有问题的是第

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -