在本篇博文中,我们来看下经常和NFS搭配使用的NIS服务的配置和使用方法。NIS(Network Information Services)允许账号登录和其它服务诸如:主机名解析,xinetd网络服务配置等等可以在一台NIS Server服务器上集中完成,极大方便了企业运维管理人员。本文主要着眼于NIS用户账号登录认证的的使用和配置。需要注意的是:NIS的客户端和服务器端进行通信的时候并未使用加密算法,因而建议仅仅在独立网络或者是有防火墙防护的私有网络使用NIS。

NIS简介

NIS服务将许多原本需要在本地提供的文件移至了服务器端,而每当客户端需要使用这些文件的时候,它可以向服务器端发起申请从而获得这些文件。通常而言,常用的文件有:/etc/passwd,/etc/shadow,/etc/groups,/etc/hosts,/etc/services,/etc/networks,/etc/rpc,/etc/protocols,/etc/aliases等等。由NIS Server和NIS Client所组成的集群我们称之为一个NIS域。而每一个NIS域中必须进行时间同步,通常而言,这可以通过使用NTP服务实现。

事实上,随着科技的发展,在集中化认证服务上,LDAP已经逐步取代了NIS成为越来越多的企业的选择,因为LDAP相较NIS而言,具有跨平台、更好的web客户端支持及桌面应用支持的优势。想要了解的朋友可以自行百度。

NIS服务器端配置

NIS服务器端配置需要的RPM包有:

l   Ypbind          rpc端口绑定服务

l   Portmap        rpc端口映射服务,在centos6上已经被rpcbind服务取代

l   Ypserv           NIS server服务

l   Yp-tools        NIS支持命令(ypcat,yppasswd,ypwhich…)

l   Nscd             处理密码和组查询功能并且进行缓存。LDAP和NIS均需要用到该服务。它定义了NIS支持查询的文件,比如说,认证需要passwd shadow和group文件的支持。其配置文件位于/etc/ncsd.conf中。

NIS SERVER端需要修改的配置文件

Ø   /etc/sysconfig/network—该文件主要用来设定NISDOMAIN的域名

例如:

NETWORKING=yes

HOSTNAME=nisServerName

NISDOMAIN=lab2

Ø   /etc/yp.conf  ----该文件主要用来设定NIS ServerIP地址,及本身所处的NIS domain域,该文件主要应在client端设定,如果server本身也拟作NIS认证,则在Server端也需要做这些设置。

例如:domain lab2 server 127.0.0.1

在这个例子中,假设NIS Server本身登录时也要做nis认证,因此将server的地址更改为自身的loopback地址,lab2即为NISDOMAIN域的域名。

Ø   /etc/nsswitch.conf----该文件定义系统登录时查找相应账户信息的查找顺序

passwd: files nis

shadow: files nis

group: files nis

上述配置文件的含义为:当系统登录时,首先查找本地的/etc/passwd(/etc/shadow,/etc/group),如果没有找到相关的认证信息则就会到NIS服务器上查找相应的配置文件。

 

/etc/ypserv.conf这个文件用于设置1)NIS Server的相关属性,2)自身哪些文件可以被哪些客户端访问。各项含义说明如下:

==========NIS SERVER的相关属性===================

dns: no                                                    是否使用dns解析主机名

files: 30                                                     缓存文件个数

slp: no                                                     是否使用slp

slp_timeout: 3600                                      slp超时时间

xfr_check_port: yes                                    是否对xfr使用的端口进行检查

================访问规则==========================

* : * : shadow.byname : port

* : * : passwd.adjunct.byname : port

访问规则的形式如下:

host:domain:map:security

host: 定义可以使用NIS服务的终端主机的地址范围 *代表允许所有主机访问

domain:定义了该条规则应用于那个domain域 *代表所有NIS domain域

map: 映射文件的名称,*代表所有映射文件

security:总共有三个选项none,port,deny

none:允许所有访问

port:如果访问端口号来源小于1024则允许访问,否则不允许访问。

Deny:不允许访问此条映射

所以如果nis client端调试不通的时候,可以编制访问规则:

*:*:*:none 测试是否是由于策略问题,导致无法访问NIS Server。

设置完成后以root用户执行如下命令:

# nisdomainname name-of-domain ---设置nis domain域名,即时生效,重启失效

# service rpcbind start

# service yppasswdd start

# service ypserv start

# /usr/lib64/yp/ypinit -m

ypint -m命令使用-m参数将本台NIS Server配置为一台主NIS Server ,这会将本机的/etc/passwd,/etc/shadow, /etc/hosts等等文件转换成NIS GNU dbm数据库格式,并且产生一个make文件。

最后,我们可以使用rpcinfo –p localhost命令检查本机rpcbind及ypserv等等服务是否已经使能并运行。

以上就是NIS 服务器端的配置,下面我们看一下NIS Client端的配置。

NIS客户端配置

需要的RPM包:

ypbind

rpcbind

yp-tools

修改配置文件:/etc/sysconfig/network, /etc/yp.conf, /etc/nsswitch.conf等等与server端的修改相似,不再赘述。

而后运行命令:

service rpcbind restart

service ypbind restart

运行命令:rpcinfo –u localhost ypbind查看portmapper服务是否成功启动并且ypbind已经成功注册。事实上,对于客户端的配置有个图形化的配置工具authconfig-tui,使用起来非常简单,仅需简单的启用NIS,并设置好NIS服务器的主机名即可。

通过上述几个步骤,就可以设置好NIS Server端和Client端的配置,而后就可以通过ssh client端的地址进行测试,查看是否成功设置了NIS服务。此时,有一个小问题,因为当客户端成功通过服务器端验证并登陆后,其会在本地查找用户家目录,但此时我们在客户端并未有相应的用户家目录,因此会有一点小问题,解决方案也很简单,即在服务器端通过NFS将用户的家目录/home导出,并在客户端进行挂载即可,这也是NFS和NIS搭配使用的一个原因。

好了,关于NIS,就先分享到这里,有不对的地方欢迎批评指正!

转载于:https://blog.51cto.com/14042631/2309168

[Linux]NIS: 集中化认证服务相关推荐

  1. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(静默创建实例_08)

    接上一篇:linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(执行安装_07) 创建ORACLE实例前提,准备下面7项工作 序号 说明 链接 ① 安装操作系统 https:/ ...

  2. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(执行安装_07)

    接上一篇:linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(修改配置文件_06) 执行安装前的准备工作: 创建ORACLE实例前提,准备下面6项工作 序号 说明 链接 ① ...

  3. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(修改配置文件_06)

    接上一篇:linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(上传安装包并解压_05) linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(修改配置 ...

  4. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(上传安装包并解压_05)

    接上一篇:linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(oracle基础配置_04) 静默安装Oracle11GR2数据库上传数据库安装包并解压 按提示选择文件,添加确 ...

  5. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(oracle基础配置_04)

    接上一篇:linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(安装依赖包_03) 创建用户 组 及文件夹 创建用户组:groupadd oinstall 创建用户组:grou ...

  6. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(安装依赖包_03)

    接上一篇:linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(安装常用工具_02) 安装Oracle11GR2所需要的依赖包 有高手写成了这样: yum -y install ...

  7. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(安装常用工具_02)

    接上一篇:linux CentOS7 最小化安装环境静默安装Oracle11GR2数据库(安装操作系统环境_01) 安装wget yum install -y wget 安装vim yum insta ...

  8. linux CentOS7 最小化安装环境静默安装Oracle11GR2数据库(安装操作系统环境_01)

    文章目录 最小化安装 linux CentOS7 我使用的镜像包:CentOS-7-x86_64-DVD-1810.iso 虚拟机就创建好了 通过方向键选择:install centos 7 回车 直 ...

  9. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(修改配置文件)

    linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(修改配置文件) 一.修改内核文件: vim /etc/sysctl.conf 按一次 "i"进入编辑模 ...

最新文章

  1. glide_在Android中将数据绑定与Glide结合使用
  2. 15个超实用的php正则表达式
  3. Win2008 r2 下修改mysql data目录的方法
  4. ZOJ 2588 Burning Bridges 割边
  5. 【转】.net框架读书笔记---CLR内存管理\垃圾收集(一)
  6. gradle 上传jar包_Gradle学习记录014 关于依赖的声明
  7. Redis教程:基础知识
  8. python自动化办公教程百度云-693629 用Python自动办公,做职场高手(完结)
  9. Spark Streaming 实时流处理总结
  10. 编辑距离及编辑距离算法 1
  11. 嵌入式Linux学习笔记(1)开篇
  12. 计算机怎么快捷截图桌面,电脑截图的快捷键是什么_屏幕截图快捷键_怎么截图快捷键-太平洋IT百科手机版...
  13. fastadmin项目实战踩坑
  14. 光模块调式总结(SFP)
  15. 小程序瀑布流-是真的流啊
  16. 保持numlock处于开启状态
  17. MIT开创减少双量子比特门误差的新方法,提高鲁棒性迈向纠错量子计算机
  18. 电脑路由器,怎么把自己的电脑变成路由器
  19. chrome无痕模式可访问但正常模式访问不了
  20. ps2口键盘改usb计算机设置,轻松把PS2键盘、鼠标接口改造成USB接口

热门文章

  1. php 路径 函数不存在,php目录不存在是怎么判断的
  2. oracle订阅推送,ERP一部推送 | Oracle优化技术分享
  3. 下两个网段转发的路由设置_收藏 | 多台路由器,不同网段的设备之间如何互访?...
  4. cap流程图_化工工艺流程图制图图例汇编.pdf
  5. python如何定义类_python类定义的讲解
  6. jz2440-uboot-201204版本移植【学习笔记】【原创】
  7. Linux命令行上传文件到百度网盘
  8. Android 闹钟最终版
  9. 在iOS8 下用Swift 创建自定义的键盘
  10. 非阻塞模式(ioctlsocket)