nis使用

作者: 明明就_c565 | 来源:发表于2023-10-25 15:35 被阅读0次

    简介

    NIS(Network Information Service)是一种为网络中所有的机器提供网络信息的系统,包括用户名、密码、主目录、组信息等。NIS服务主要用于集中控制多个系统管理数据库的网络用品,其全称是Network Information Service。

    在Linux环境下,NIS服务主要由NIS客户端和NIS服务器组成。NIS服务器上存放了所有用户账户信息,包括用户名、密码、主目录、组信息等。NIS客户端通过网络访问NIS服务器,获取这些信息并使用。

    安装服务

    yp-tools :提供 NIS 相关的查寻指令功能

    ypbind  :提供 NIS Client 端的设定软件

    ypserv  :提供 NIS Server 端的设定软件

    rpcbind  :就是 RPC 一定需要的数据

    yum install -y ypserv ypbind nfs-utils rpcbind

    修改nis domain

    vim /etc/sysconfig/network

    #永久修改 重启服务器生效

    NISDOMAIN=vdi-nis-server

    YPSERV_ARGS=-p 1011

    #临时修改 立即生效

    #查看

    nisdomainname

    #设置

    nisdomainname vdi-nis-server

    修改hosts配置

    vim /etc/hosts

    178.101.160.218 nis-server-1

    178.101.160.133 nis-client-1

    178.101.160.239 nis-client-2

    修改服务端配置

    主要配置files、ip规则

    客户端规则格式为:Host:Domain : Map : Security+

    Host:指定客户端,可以指定具体IP 地址,也可以指定一个网段

    Domain :设置NIS 域名,这里的 NIS 域名和 DNS 中的域名并没有关系。

    Map:设置可用数据库名称,可以用“*”代替所有数据库。

    Security:安全性设置。主要有none、port和 deny 三种参数设置none:没有任何安全限制,可以连接 NIS 服务器。port:只允许小于1024 以下的端口连接 NIS 服务器。deny:绝连接NIS 服务器。

    vim /etc/ypserv.conf

    # NIS 服务器大多使用于内部局域网络,只要有 /etc/hosts 即可,不用DNS

    dns: no

    # 预设会有 3000 个数据库被读入内存当中,其实我们的账号文件并不多, 3000个足够用

    files: 3000

    # 开放本地接口

    127.0.0.0/255.255.255.0    : *      : *                : none

    # 你信任的网段

    178.101.160.0/255.255.255.0    : *      : *                : none

    10.52.18.0/255.255.255.0    : *      : *                : none

    # 拒绝所有其它的网段

    *                          : *      : *                : deny

    # 这些都可以不设置,直接使用 防火墙 来管理

    修改 yppasswdd

    vim /etc/sysconfig/yppasswdd

    YPPASSWDD_ARGS="--port 1012"

    启动服务

    启动并加入开机启动项

    systemctl start ypserv

    systemctl status ypserv

    systemctl enable ypserv

    netstat -naplt| grep 1011

    systemctl start yppasswdd

    systemctl status yppasswdd

    systemctl enable yppasswdd

    建立数据库

    可以新增用户,以前存在的也可用

    # 添加测试用户

    useradd test1

    passwd test1

    # 初始化数据库 将之前hosts添加的主机nis-server-1加入

    /usr/lib64/yp/ypinit -m

    At this point, we have to construct a list of the hosts which will run NIS

    servers.  vdi is in the list of NIS server hosts.  Please continue to add

    the names for the other hosts, one per line.  When you are done with the

    list, type a <control D>.

    next host to add:  vdi

    next host to add:  nis-server-1

    next host to add: 

    The current list of NIS servers looks like this:

    vdi

    nis-server-1

    Is this correct?  [y/n: y]  y

    安装客户端

    # 安装

    yum install -y ypbind setuptool

    # 设置

    setup

    输入setup后

    如果系统很快的就跳回到第一个的画面,代表你的设定理论上是没有问题的

    检查:yptest

    查询所有用户:ypcat passwd 

    查询所有组:ypcat group

    查询指定用户指定组:ypmatch test1 passwd  ypmatch test1 group

    修改密码:yppasswd -p test2

    修改登录shell:ypchsh test1

    ypwhich

    -d domain使用'domain'代替默认的domain

    -m mname为map 'mname'找到NIS主服务器

    -t禁止映射昵称转换

    -V n ypbind版本,默认为V2

    -x显示映射昵称翻译表

    设定 NIS client 你可能需要动到底下的文件:

    /etc/sysconfig/network :就是 NIS 的域名

    /etc/hosts :至少需要有各个 NIS 服务器的 IP 与主机名对应

    /etc/yp.conf :这个则是 ypbind 的主要配置文件,里面主要设定 NIS 服务器所在

    /etc/sysconfig/authconfig:规范账号登入时的允许认证机制

    /etc/pam.d/system-auth :这个最容易忘记!因为账号通常由 PAM 模块所管理,所以你必须要在 PAM 模块内加入 NIS 的支持才行

    /etc/nsswitch.conf :这个文件可以规范账号密码与相关信息的查询顺序,默认是先找 /etc/passwd 再找 NIS 数据库

    客户端自动挂载 NIS 用户目录

    服务端启动nfs

    # 安装

    yum -y install nfs-utils rpcbind

    # 配置NFS,把 NIS 用户的家目录共享出去

    # NIS 用户在客户端登录,使用 autofs 自动挂载 NIS 用户家目录

    vim /etc/exports

    /home  178.101.160.0/255.255.255.0(rw,sync)

    systemctl start nfs

    systemctl status nfs

    systemctl enable nfs

    客户端安装autofs

    # 安装autofs

    yum -y install autofs

    vim /etc/auto.master

    # 如果要自动挂载/home,就去找/etc/auto 这个配置文件。

    /home /etc/auto

    # 编辑auto映射文件

    # autofs 支持挂载目录使用通配符 * 表示

    # 而网络路径中的用户名使用“&”表示如果进入本地的 /home 中

    # 这个前缀已经在刚才的/etc/auto.master 中指定了

    # 就会把178.101.160.218 上 /home 上对应的目录挂过来

    vim /etc/auto

    *      -rw    178.101.160.218:/home/&

    systemctl enable autofs

    systemctl start autofs

    systemctl status autofs

    测试

    相关文章

      网友评论

          本文标题:nis使用

          本文链接:https://www.haomeiwen.com/subject/coveidtx.html