NIS服务器

 
sun最开始命名为 Yellow pages ,黄页,
NIS = YP;
 
14.1 NIS的由来与功能
 
NIS--Network information services(NIS server)
 
NIS 主要提供的是用户的账号、密码、家目录文件名、 UID 等信息,但 NIS 并没有提供文件系统。同时, NIS 同样使用到RPC 服务器,与NFS一样。
 
RPC(Remote Procedure Call):远程过程调用
 
14.1.1 NIS的主要功能:管理账户信息
     
其他的Linux主机当有客户端登入的时候,都必须到NIS服务器来查询用户的账户与密码,如此一来,所有的Linux主机的账号与密码,都在NIS服务器中。
 
针对账户信息的变动只需要变动,这一台NIS服务器即可,其他哪怕是100台机器,登陆信息都在这里取得;
 
NIS服务器提供给其他机器的数据:
服务器端文件名                             档案内容
/etc/passwd             提供用户账号、 UID、 GID、家目录所在、 Shell 等等
/etc/group               提供群组数据以及 GID 的对应,还有该群组的加入人员
/etc/hosts                主机名与 IP 的对应,常用于 private IP 的主机名对应
/etc/services            每一种服务 (daemons) 所对应的端口 (port number)
/etc/protocols          基础的 TCP/IP 封包协定,如 TCP, UDP, ICMP 等/etc/rpc 每种 RPC 服务器所对应的程序号码
/var/yp/ypservers     NIS 服务器所提供的数据库
 
14.1.2 NIS的运作流程:透过RPC服务
 
由于 NIS 服务器主要是提供用户登入的信息给客户端主机来查询之用,所以, NIS服务器所提供的数据当然就需要用到传输与读写比较快速的 "数据库" 文件系统, 而不是传统的纯文本数据。
 
RPC远程程序调用,开启服务将NIS的数据问题,发送到客户端;
 
考虑到负载以及安全性,一般NIS服务器采用:master/slave架构;
 
master NIS 服务器提供系统管理者制作的数据库,slave则取得来自master的数据,并提供给客户端查询。
客户端可以向整个网域要求用户资料的响应,master 与 slave 皆可回答, 由于 slave 的数据来自于 master ,所以用户账号数据本身是同步的!
如此一方面可以分散 NIS 服务器的负载,而且也可以避免因 NIS 服务器挂点而导致的无法登入的风险。
 
运行机制如下:
 
关于 NIS Server (master/slave) 的运作程序:
1. NIS Master 先将本身的账号密码相关档案制作成为数据库档案;
2. NIS Master 可以主动的告知 NIS slave server 来更新;
3. NIS slave 亦可主动的前往 NIS master server 取得更新后的数据库档案;
4. 若有账号密码的异动时,需要重新制作 database 与重新同步master/slave。
 
关于当 NIS Client 有任何登入查询的需求时:
1. NIS client 若有登入需求时,会先查询其本机的 /etc/passwd,/etc/shadow 等档案;
2. 若在 NIS Client 本机找不到相关的账号数据,才开始向整个 NIS网域的主机广播查询;
3. 每部 NIS server (不论 master/slave) 都可以响应,基本上是先响应者优先
 
 
可以看到NIS client 会先查询本机的账户信息,这样如果本机的账户信息与NIS server不一致的话,会产生错乱。
 
因此一般,NIS client 会主动去除一般账户信息,仅留root账户信息;
 

账号控管:NIS服务器的更多相关文章

  1. NIS 服务器

    有没有想过,如果我有十部 Linux 主机,这十部主机仅负责不同的功能,事实上, 所有的主机账号与对应的密码都相同!那么我是将账号与密码分别设定置在十部计算机上面, 还是可以透过一部主机做为账号管理的 ...

  2. CentOS-7.6 下搭建 NIS 服务器

    ##服务端配置: ####Server: 192.168.0.178(CentOS 7.6) # systemctl stop firewalld # systemctl disable firewa ...

  3. 建置 POSTFIX 服务器

    建置 POSTFIX 服务器 postfix 是除了 sendmail 以外 ,最被广泛采用的 Linux 邮件服务器,一般使用的观感不外乎两点: 一.安全:垃圾信过滤机制较聪明,就算什么都没设定,也 ...

  4. Linux服务器安全配置

    众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节.Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操作系统,一旦Linux系统中发现有安全漏洞,Int ...

  5. NIS域配置详解

    一.前期准备1.1 NIS 简介NIS,英文的全称是network information service,也叫yellow pages.在Linux中,NIS是一个基于RPC的client/serv ...

  6. nis+kerberos 实现服务验证

    1.NIS部分 1.1 简介     NIS(Network Information Service,or Yellow Page or YP) 网络信息服务,由sun公司开发并授权给unix供应商, ...

  7. NIS & Kerberos配置

    NIS & Kerberos配置 所需RPM包列表: krb5-server-1.10.3-42.el6.x86_64.rpm krb5-workstation-1.10.3-42.el6.x ...

  8. NIS - 深入了解如何搭建NIS环境

    第一篇[NIS]深入了解NIS 1     环境准备 操作系统:CentOS7.2 服务端安装如下软件: 软件名称 功能 ypserv NIS Server端的服务进程 rpcbind 提供RPC服务 ...

  9. CentOS6.4 上搭建NIS网络信息服务器

    NIS(Network Information Service)网络信息服务,主要功能是提供用户登录信息给客户端主机查询之用,用于企业局域网Linux主机账户的集中管理(非跨平台).NIS服务器在大型 ...

随机推荐

  1. Weblogic是瓦特?和JVM是瓦特关系?

    所谓固定内存60M是瓦特? 以下内容是个瓦特? “总内存大小=堆内存+非堆内存1200m:为堆内存大小,如果不指定后者参数则有最大数限制,网上很多文章认为这就是JVM内存,-Xmx为设置最大堆内存60 ...

  2. css 文本显示点点点

    今天有这个需求,百度获取到这个效果,记录下来. text-overflow :ellipsis; //让截断的文字显示为点点.还有一个值是clip意思是截断不显示点点 white-space : no ...

  3. Pychram如何导入Django项目

    最近在学Django,用GitHub来保存项目.但当从GitHub中clone出来后,Pycharm怎么来运行项目呢? 首先要对项目进行设置,使其能支持Django,具体设置如下: 在Pycharm中 ...

  4. Tips For Your Maya Plugin Development

    (The reason why I write English blog is that I'm trying to improve my written English. The Chinese v ...

  5. Appium的安装

    APPium的官网地址为:http://appium.io,在官网可以看到安装步骤如下:

  6. 脚本 用 scp 拷贝文件

    #!/usr/bin/expect set proj_dir /home/jksong/NewsSpark/openid_for_commonid set tmp_data_dir $proj_dir ...

  7. 原生js获取元素style属性

    function getStyle(ele,attr){ if( ele.currentStyle ){ return ele.currentStyle[attr]; // ie } else { r ...

  8. sysbench压力测试工具简介和使用(二)

    sysbench压力测试工具使用: 2.1    测试数据库服务器的硬件配置信息如下: CPU:      24核心线程数,Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00G ...

  9. CentOS7:Puppet推送Zabbix Agent

    创建zabbix模块目录: $ mkdir -p /etc/puppet/modules/zabbix/{manifests,templates} 创建init.pp清单: $ cat /etc/pu ...

  10. queue

    http://www.codeforces.com/contest/625/problem/E