天天看點

NIS/ldap

NIS/ldap

網絡資訊服務(Network Information Service)是集中控制幾個系統管理資料庫的網絡用品。NIS簡化了UNIX和LINUX桌面客戶的管理工作,用戶端利用它可以使用中心伺服器的管理檔案。桌面系統的使用者無需建立他們自己的/etc/passwd,他們隻簡單的使用維護在NIS伺服器的檔案即可。

使用者隻需要在nis伺服器上面建立,用戶端加入nis域,直接可以使用Nis域上的使用者來登入用戶端。

一、概述:

NIS Server

Nis Master 先将帳号密碼相關檔案制作成資料庫檔案;

伺服器端檔案名 檔案内容

/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 伺服器所提供的資料庫

Nis Client

1.NIS client 若有登入需求時,會先查詢其本機的 /etc/passwd, /etc/shadow 等檔案;

2.若在 NIS Client 本機找不到相關的賬号資料,才開始向整個 NIS 網域的主機廣播查詢.

1.1:所需軟體

1. yp-tools :提供 NIS 相關的查尋指令功能

2. ypbind :提供 NIS Client 端的設定軟體

3. ypserv :提供 NIS Server 端的設定軟體

4. portmap :這是 RPC必須的軟體!

2、相關端口:portmap :111,因為NIS、NFS 都是依賴于portmap服務  
          6.0/7.0 版本用rpcbind取代portmap服務
   3.
   ****配置檔案**** 
   /etc/ypserv.conf                     這是最主要的 ypserv 軟體所提供的配置檔案,可以規範 NIS 用戶端是否可           
                                                 登入的權限。
  /etc/hosts                               由于 NIS server/client 會用到網絡主機名與 IP 的對應,是以這個主機名對應            
                                                 檔就顯的相當重要!每一部主機名與 IP 都需要記錄才行!
  /etc/netgroup                          提供組資料及GID的對應。/etc/sysconfig/network可以在這個檔案内指定   
                                                 NIS 的網域 (nisdomainname)。
  /var/yp/Makefile                     這就是與建立資料庫有關的動作配置檔案;

  **主要服務方面** 
  /usr/sbin/ypserv                     就是 NIS 伺服器的主要提供服務
  /usr/sbin/rpc.ypxfrd                用于Master/Slave主機之間的傳輸資料庫的服務。
  /usr/sbin/rpc.yppasswd          提供額外的 NIS 用戶端之使用者密碼修改服務, 通過這個服務, NIS 用戶端    
                                                 可以直接修改在 NIS 伺服器上的密碼。相關的使用程式則是 yppasswd 指     
                                                 令;(修改密碼時,NIS用戶端與  NIS伺服器端之前通過這個服務來通信)
           

資料庫相關指令

/usr/lib64/yp/ypinit/usr/lib/ypyinit 建立資料庫的指令,非常常用 (在 32 位的系統下,檔案

名則是 /usr/lib/yp/ypinit );

/usr/bin/yppasswd 與 NIS 用戶端有關,主要在讓使用者修改伺服器上的密碼。

/usr/sbin/yppushmaster 主機将資料庫直接送至 slave 的指令;

/usr/lib/yp/ypxfr 傳送資料庫的指令,在該目錄下尚有 ypxfr_1perday,

ypxfr_1perhour, ypxfr_2perday 等等。

案例介紹:

nis域名:www.example.com

指定所有主機為同一個網段:

二、服務端的的配置:

1、安裝ypserv服務相關的包。

Yum list |grep ypserv

Yum install ypserv

2、建立一個Nis專用使用者目錄檔案夾:

mkdir /nishome

3、建立一個NIS使用者:(可以使用該方式建立多個使用者)

useradd -d /nishome/user1 –u 1000 user1

設定user1使用者的密碼

4、編輯/etc/sysconfig/network為NIS伺服器指定NIS網域名:

[[email protected] Server]# vim /etc/sysconfig/network

NISDOMAIN=www.example.com

5、運作:nisdomainname www.example.com //這裡的域名和上面=号後面的一樣!加入域www.example.com

[[email protected] Server]# nisdomainname

(none)

[[email protected] Server]# nisdomainname www.example.com

[[email protected] Server]# nisdomainname

www.example.com

6、在linux下,如需添加随系統啟動而自動運作的服務編輯/etc/rc.d/rc.local,加入www.example.com域;

[[email protected] Server]# echo “/bin/nisdomainname www.example.com” >> /etc/rc.local

7、啟動ypserv服務:

[[email protected] Server]#systemctl restart ypserv.service

檢視ypserv服務狀态:systemctl status ypserv.service

8、生成NIS 使用者資料庫:/usr/lib64/yp/ypinit -m(該伺服器上的所有使用者名都将用作用戶端身份認證) 注意,每次添加使用者之後,都需要重新生成nis資料庫

Ypinit NIS資料庫安裝和建構程式

Vim /var/yp/Makefile

[[email protected] Server]# /usr/lib64/yp/ypinit -m

At this point, we have to construct a list of the hosts which will run NIS servers. localhost.localdomain is in the list of NIS server hosts.

Please coninue to addthe names for the other hosts, one per line. When you are done with thelist, type a .

next host to add: localhost.localdomain ----伺服器hostname,隻有一個伺服器的話,就按下面的ctrl+d ,如果有多個伺服器,接着輸入

next host to add: //這裡直接按Ctrl+D

備注:提示輸入NIS伺服器主機名,有多個可以輸入多個,按Y确認。

配置完以上指令後在/var/yp下檢查有沒有生成一個NIS域名命名的目錄,這是NIS使用者資料庫,如果沒有則删除該目錄下的’”(none)”目錄,再重新生成資料庫。

8、重新開機相關服務:

systemctl restart ypserv.service

9、使用NFS共享NIS使用者家目錄:

Vim /etc/exports加入内容:

/nishome *(rw)

Systemctl restart nfs.service

Systemctl enable nfs.service

二、用戶端的配置:

關閉selinux;

用戶端加入NIS域: yp-tools ypbind

輸入setup --該指令在圖形化界面的終端上面執行

選擇:啟用NIS支援,點選“配置NIS”;輸入NIS域,及NIS伺服器Ip位址

/etc/init.d/portmap restart 注意6.0、7.0 版本上沒有portmap服務,服務名稱改變為rpcbind

Systemctl restart portmap

設定用戶端機器上的自動挂載

安裝自動挂載服務:yum install autofs

編輯控制檔案[[email protected] ~]# vi /etc/auto.master

/nishome /etc/auto.misc

配置配置檔案

[[email protected] ~]# vi /etc/auto.misc

  • -fstype=nfs 192.168.10.40:/nishome/&

    适合于所有nis使用者自動挂載家目錄

    nis1 -fstype=nfs 192.168.10.40:/nishome/nis1

    隻适合nis1使用者自動挂載家目錄

    重新開機服務

    [[email protected] ~]#systemctl restart autofs

    Nis伺服器上面,建立立的使用者,如果需要用戶端驗證通路,那麼需要在伺服器端重新生成nis資料庫,然後重新開機ypserv服務。

測試:

[[email protected] ~]# su - user1

上一次登入:一 11月 11 22:08:03 CST 2019pts/1 上

[[email protected] ~]$

繼續閱讀