【NIS】深入了解NIS

1  简介

NIS( NetworkInformation Service)提供了一个网络黄页的功能,当用户登录系统时,Linux系统会到NIS主机上去寻找用户使用的帐号密码信息加以比对,以提供用户登录检验。同时NIS服务器还可以提供其他多种信息。 

2  深入了解NIS

 

2.1   基本概念

2.1.1  NIS

在一个大型的网域中,如果有多部Linux主机,而且需要每台主机都设定相同的帐号与密码时,是十分麻烦的。此时,如果能够有一台NIS主控制服务器(master server)来管理该网域中所有主机的帐号密码,当其他的主机有用户登录的需求时,才到这台服务器上请求相关的帐号密码等使用者资料,这样一来,如果想要增加、修改、删除用户的资料,只需要到这台服务器上面处理即可,这样就能够大大降低重复设定用户帐号密码的步骤,便于管理。NIS(Network Information Services) Server就可以实现这样的功能。

 

2.1.2  NIS服务器端组件结构

NIS的组件结构分为配置文件、主要服务以及相关指令。

NIS服务器主要提供信息如下表:

服务器端文件名

文件内容

/etc/passwd

提供用户帐号、 UID、 GID、家目录所在、登录shell等信息

/etc/group

提供群组信息以及GID的对应,还有该群组成员等信息

/etc/hosts

提供主机名与IP地址的对应关系信息

/etc/services

提供每一种服务( daemons)所对应的端口( port number)信息

/etc/protocols

基础的TCP/IP封包协议,如TCP, UDP, ICMP等

/etc/netgroup

网络群组的定义与使用

/etc/rpc

RPC服务器信息

 

2.1.2.1     NIS配置文件

NIS服务器端的配置文件如下表所示:

配置文件名

文件内容

/etc/ypserv.conf

关键配置文件,规范NIS客户端登录权限等

/etc/hosts

在其中配置IP地址与主机名对应关系

/etc/netgroup

设定信任主机组

/var/yp/Makefile

与建立资料库有关的配置文件

 

 

2.1.2.2     NIS主要服务

NIS服务器端的主要服务如下表所示:

主要服务名

功能

/usr/sbin/ypserv

NIS服务器提供的主要服务

/usr/sbin/rpc.ypxfrd

用来作为master/slave主机之间传输资料库的服务

/usr/sbin/rpc.yppasswdd

通过此服务,NIS客户端登录的用户可以直接修改在NIS服务器上的密码

/var/yp/Makefile

与建立资料库有关的配置文件

 

2.1.2.3     NIS主要指令

NIS服务器端的主要指令如下表所示:

相关指令名

功能

/usr/sbin/yppush

master主机将资料库直接送至slave主机的指令

/usr/lib/yp/ypinit

建立资料库的指令

/usr/lib/yp/ypxfr

传送资料库的指令

 

 

 

 

2.1.3  NIS客户端组件结构

NIS的组件结构分为配置文件、相关指令。

 

2.1.3.1     NIS配置文件

NIS客户端配置文件如下表所示:

配置文件名

文件内容

/etc/hosts

主机名与IP地址对应关系

/etc/yp.conf

ypbind的主要配置文件,设定NIS Server

/etc/nsswitch.conf

重要的配置文件,设定帐号密码等信息

/var/yp/Makefile

与建立资料库有关的配置文件的查询顺序

 

 

2.1.3.2     NIS主要指令

NIS客户端的主要指令如下表所示:

相关指令名

功能

/usr/bin/yppasswd

更改客户端登录用户在NIS服务器上的密码

/usr/bin/ypchsh

更改客户端登录用户默认登录shell

/usr/bin/ypchfn

更改客户端登录用户的finger信息

 

 

2.2   NIS流程

 

2.2.1  NIS Server(Master/Slave)

NIS Server包括Master和Slave两类服务器:

Nis Master Server:

将文件建成数据库,并提供给Slave Server来更新;

Nis Slave Server:

以Master Server的数据库作为本身的数据库来源;

 

流程如下:

1.Nis Master先将帐号密码相关文件制作成数据库文件;

2.Nis Master可以主动告诉Nis Slave来更新;

3.Nis Slave亦可以主动前往Nis Master取得更新;

4.若有帐号密码变动时,需要重新制作数据库文件并重新同步Master/Slave。

 

2.2.2  NIS Client

NIS Client向Master/Slave 请求登陆者的验证数据。

流程如下:

1.NIS client 若有登入需求时,会先查询其本机的 /etc/passwd, /etc/shadow 等档案; 

2.若在 NIS Client 本机找不到相关的账号数据,才开始向整个 NIS 网域的主机广播查询; 

3.每个 NIS server (不论 master/slave) 都可以响应,基本上是『先响应者优先』。 

 

2.3   典型组网

2.3.1  网络拓扑

网络拓扑结构如下图:

 

2.3.2  系统要求

各个角色应该具备的软件

 

2.3.2.1     NIS Client要求

NIS 客户端需要安装的组件如下:

软件名称

功能

yp-tools

提供NIS相关的查询指令功能

ypbind

NIS Client端的服务进程(如果)

 

 

2.3.2.2     NIS Server要去

NIS 服务器端需要安装的组件如下:(一般情况下,NIS服务器也要起到客户端的作用,所以客户端软件也要安装)

软件名称

功能

yp-tools

提供NIS相关的查询指令功能

ypbind

NIS Client端的服务进程(如果)

ypserv

NIS Server端的服务进程

portmap

提供RPC服务

 

  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YoungerChina

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值