欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

linux服務之NIS賬戶管理服務方式

 更新時間:2025年05月21日 11:16:42   作者:阿無@_@  
這篇文章主要介紹了linux服務之NIS賬戶管理服務方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

一、所需要的軟件

  1. yp-tools :提供 NIS 相關的查尋指令功能
  2. ypbind :提供 NIS Client 端的設定軟件
  3. ypserv :提供 NIS Server 端的設定軟件
  4. rpcbind :就是 RPC 一定需要的數(shù)據(jù)?。?/li>

注:yp-tools, ypbind 都會主動安裝,所以server端只需要安裝 ypserv ,而客戶端只需要安裝ypbind。

查詢是否安裝 NIS Server

[root@www ~]# rpm -qa ypserv
ypserv-2.31-12.el7.x86_64

二、服務器配置

環(huán)境說明:

  • NIS 的域名設置為 vbirdnis
  • NIS master server 的 IP 為 192.168.91.157,主機名為 www.centos.vbird
  • NIS client 的 IP 為 192.168.91.159,主機名為 clientlinux.centos.vbird

1、安裝 NIS 服務

[root@www ~]# yum -y install ypserv

2、設定 NIS 的域名 (NIS domain name)

[root@www ~]# vim /etc/sysconfig/network
 # 不要更改其他既有數(shù)據(jù),只要加入底下這幾行即可:
 NISDOMAIN=vbirdnis <==設定 NIS 領域名
 YPSERV_ARGS="-p 1011" <==設定 NIS 每次都啟動在固定的埠口

3、修改主配置文件

[root@www ~]# vi /etc/ypserv.conf
# 添加如下內容
 *                        : *       : *                : none     <==沒有網(wǎng)絡限制,如果想做限制,可以在這里做,也可以通過防火墻做限制

注:上述配置說明:

#[主機名/IP] : [NIS 域名] : [可用數(shù)據(jù)庫名稱] : [安全限制]
# [主機名/IP] :可以使用 network/netmask 如192.168.100.0/255.255.255.0
 # [NIS 域名] :例如本案例中的 vbirdnis
 # [可用數(shù)據(jù)庫名稱]:就是由 NIS 制作出來的數(shù)據(jù)庫名稱;
 # [安全限制] :包括沒有限制 (none)、僅能使用 <1024 (port) 及拒絕 (deny)
 # 一般來說,你可以依照我們的網(wǎng)域來設定成為底下的模樣:
 127.0.0.0/255.255.255.0 : * : * : none
 192.168.100.0/255.255.255.0 : * : * : none
 * : * : * : deny
 # 星號 (*) 代表任何數(shù)據(jù)都接受的意思。上面三行的意思是,開放 lo 內部接口、開放內部 LAN 網(wǎng)域,且杜絕所有其他來源的 NIS 要求的意思。

4、設置主機名

[root@www ~]# hostnamectl set-hostname www.centos.vbird
[root@www ~]# hostname
www.centos.vbird

5、設定主機名與 IP 的對應 (/etc/hosts)

[root@www ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.91.157	www.centos.vbird
192.168.91.159	clientlinux.centos.vbird

6、為了方便管理,把yppasswdd 啟動在固定的端口

[root@www ~]# vim /etc/sysconfig/yppasswdd
 YPPASSWDD_ARGS="--port 1012" <==找到這個設定值,修改一下內容成這樣!

7、啟動 NIS 服務

[root@www ~]# systemctl start ypserv
[root@www ~]# systemctl start yppasswdd

8、如果重新啟動 rpcbind

這將導致 ypserv 的注冊數(shù)據(jù)被注銷掉。因此,使用如下的動作來檢查看看服務有沒有在等待中, 要看到如下的『就緒并等待服務』才會是正常的

[root@www ~]# rpcinfo -u localhost ypserv
program 100004 version 1 ready and waiting
program 100004 version 2 ready and waiting

9、創(chuàng)建的賬號

 [root@www ~]# useradd -u 1001 nisuser1
 [root@www ~]# useradd -u 1002 nisuser2
 [root@www ~]# useradd -u 1003 nisuser3
 [root@www ~]# echo password | passwd --stdin nisuser1
 [root@www ~]# echo password | passwd --stdin nisuser2
 [root@www ~]# echo password | passwd --stdin nisuser3

10、建立賬號為數(shù)據(jù)庫

[root@www ~]# /usr/lib64/yp/ypinit -m
At this point, we have to construct a list of the hosts which will run NIS
servers.  www.centos.vbird 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:  www.centos.vbird
	next host to add:                     <==按下 ctrl + d
The current list of NIS servers looks like this:

www.centos.vbird

Is this correct?  [y/n: y]  y
We need a few minutes to build the databases...
Building /var/yp/vbirdnis/ypservers...
Running /var/yp/Makefile...
gmake[1]: 進入目錄“/var/yp/vbirdnis”
Updating passwd.byname...
Updating passwd.byuid...
Updating group.byname...
Updating group.bygid...
Updating hosts.byname...
Updating hosts.byaddr...
Updating rpc.byname...
Updating rpc.bynumber...
Updating services.byname...
Updating services.byservicename...
Updating netid.byname...
Updating protocols.bynumber...
Updating protocols.byname...
Updating mail.aliases...
gmake[1]: 離開目錄“/var/yp/vbirdnis”

www.centos.vbird has been set up as a NIS master server.

Now you can run ypinit -s www.centos.vbird on all slave server.

三、客戶端配置

客戶端為了方便,使用setup命令安裝,如果沒有setup命令,后面有如何安裝setup命令

[root@localhost ~]# setup

1、選擇驗證配置

2、選擇使用NIS

3、配置好之前的域名和NIS服務器的地址

4、客戶端驗證

[root@localhost ~]# id nisuser1
uid=1001(nisuser1) gid=1001(jiaofan) 組=1001(jiaofan)
[root@localhost ~]# id nisuser2
uid=1002(nisuser2) gid=1002(nisuser2) 組=1002(nisuser2)
[root@localhost ~]# su - nisuser3
su: 警告:無法更改到 /home/nisuser3 目錄: 沒有那個文件或目錄
-bash-4.2$ 

注:這里說沒有家目錄,因為客戶端確實沒有創(chuàng)建家目錄,可以結合nfs網(wǎng)絡文件服務,把服務端的家目錄掛在過來。

如果沒有setup命令,如何安裝。

  • 1.安裝最快鏡像插件
yum -y install yum-plugin-fastestmirror
  • 2.安裝setuptool
yum -y install setuptool
  • 3.安裝系統(tǒng)服務管理
yum -y install ntsysv
  • 4.安裝防火墻設置、網(wǎng)絡設置
yum -y install iptables
  • 5.安裝防火墻設置
yum -y install system-config-securitylevel-tui
  • 6.安裝網(wǎng)絡設置
yum -y install system-config-network-tui

四、 NIS client 端的檢查命令: yptest, ypwhich, ypcat

1、利用 yptest 檢驗數(shù)據(jù)庫之測試:

[root@localhost ~]# yptest
Test 1: domainname
Configured domainname is "vbirdnis"

Test 2: ypbind
Used NIS server: www.centos.vbird

Test 3: yp_match
WARNING: No such key in map (Map passwd.byname, key nobody)

Test 4: yp_first
nisuser1 nisuser1:$6$K0frD0qB9hRudFQ2$gIhQ3qcEzlwr6l1Clz7hAYDVC4ERnH5YGPRKAQGhPNlwmSLgQJKntLq0qEWLt2FrIUzjl76KUk4i10n7Iogrg.:1001:1001::/home/nisuser1:/bin/bash

Test 5: yp_next
nisuser2 nisuser2:$6$ZZqpknoy$iX2olpYKuOGoQGmuFLx4GlNsKiB8XZyPPdeMGPiua4TSFnKhqNFLNnceUQgtlsjjYCmawlFedn5FuvtgQ7rZ1.:1002:1002::/home/nisuser2:/bin/bash
nisuser3 nisuser3:$6$WPxJVOF.$Tfv0OjlWsJHYTEkti7I8YZLiQSq23ZT68Fg7CVOv1NTOtHscImvN7DWD7mL.ZpycDIUpDu3EyXCynGUVPGnLC0:1003:1003::/home/nisuser3:/bin/bash

Test 6: yp_master
www.centos.vbird

Test 7: yp_order
1644212690

Test 8: yp_maplist
mail.aliases
protocols.byname
protocols.bynumber
netid.byname
services.byservicename
services.byname
rpc.bynumber
rpc.byname
hosts.byaddr
hosts.byname
group.bygid
group.byname
passwd.byuid
passwd.byname
ypservers

Test 9: yp_all
nisuser1 nisuser1:$6$K0frD0qB9hRudFQ2$gIhQ3qcEzlwr6l1Clz7hAYDVC4ERnH5YGPRKAQGhPNlwmSLgQJKntLq0qEWLt2FrIUzjl76KUk4i10n7Iogrg.:1001:1001::/home/nisuser1:/bin/bash
nisuser2 nisuser2:$6$ZZqpknoy$iX2olpYKuOGoQGmuFLx4GlNsKiB8XZyPPdeMGPiua4TSFnKhqNFLNnceUQgtlsjjYCmawlFedn5FuvtgQ7rZ1.:1002:1002::/home/nisuser2:/bin/bash
nisuser3 nisuser3:$6$WPxJVOF.$Tfv0OjlWsJHYTEkti7I8YZLiQSq23ZT68Fg7CVOv1NTOtHscImvN7DWD7mL.ZpycDIUpDu3EyXCynGUVPGnLC0:1003:1003::/home/nisuser3:/bin/bash
1 tests failed

注:Test 3 出現(xiàn)的那個警告信息,那只是說沒有該數(shù)據(jù)庫而已~ 該錯誤是可以忽略的。重點在第 9 個步驟 yp_all 必須要有列出你 NIS server 上頭的所有帳戶信息,如果有出現(xiàn)賬號相關數(shù)據(jù)的話,那么應該就算驗證成功了!

2、利用 ypwhich 檢驗數(shù)據(jù)庫數(shù)量

單純使用 ypwhich 的時候顯示的是『NIS Client 的 domain』名稱,而當加入 -x 這個參數(shù)時, 則是顯示『NIS Client 與 Server 之間溝通的數(shù)據(jù)庫有哪些?』你可以這樣測試

[root@localhost ~]# ypwhich -x
Use "ethers"	for map "ethers.byname"
Use "aliases"	for map "mail.aliases"
Use "services"	for map "services.byname"
Use "protocols"	for map "protocols.bynumber"
Use "hosts"	for map "hosts.byname"
Use "networks"	for map "networks.byaddr"
Use "group"	for map "group.byname"
Use "passwd"	for map "passwd.byname"
[root@localhost ~]# 

由上面我們可以很清楚的就看到相關的檔案啦!這些數(shù)據(jù)庫檔案則是放置在我的 NIS Server 的 /var/yp/vbirdnis/* 里面。

3、利用 ypcat 讀取數(shù)據(jù)庫內容

除了 yptest 之外,你還可以直接利用 ypcat 讀取數(shù)據(jù)庫的內容喔!一般作法是這樣:

[root@clientlinux ~]# ypcat [-h nisserver] [數(shù)據(jù)庫名稱]
 選項與參數(shù):
 -h nisserver :如果有設定的話,指向某一部特定的 NIS 服務器,
 如果沒有指定的話,就以 ypbind 之設定為主;
 數(shù)據(jù)庫名稱:亦即在 /var/yp/vbirdnis/ 內的檔名??!例如 passwd.byname
 
 # 讀出 passwd.byname 的數(shù)據(jù)庫內容
 [root@clientlinux ~]# ypcat passwd.byname

五、使用者參數(shù)修改: yppasswd, ypchfn, ypchsh

到這里NIS server/ client的賬號已經(jīng)同步了,但是,使用者如何在NIS client 修改他自己的登入?yún)?shù),例如密碼、shell 等等?因為 NIS client 是藉由數(shù)據(jù)庫來取得用戶的賬號密碼,那如何在 NIS 客戶端處理賬號密碼的訂正?

這也是為何我們需要在 NIS server 啟動 yppasswdd 這支服務的主要用意! 因為 yppasswdd 可以接收 NIS client 端傳來的密碼修改,藉此而處理 NIS server 的 /etc/passwd, /etc/shadow , 然后 yppasswdd 還能夠重建密碼數(shù)據(jù)庫,讓 NIS server 同步更新數(shù)據(jù)庫

那該如何下達指令呢?很簡單??!透過 yppasswd, ypchsh, ypchfn 來處理即可。

這三個指令的對應是:

  • yppasswd:與 passwd 指令相同功能;
  • ypchfn:與 chfn 相同功能;
  • ypchsh:與 chsh 相同功能。

這里僅說明一下 yppasswd 而已。假設你已經(jīng)登入 NIS client 那部主機, 并且是以 nisuser1 這個使用者登入的,記住,這個用戶相關數(shù)據(jù)僅在 NIS server 上。 接下來,這個使用者可以下達 yppasswd ,如下所示:

[root@clientlinux ~]# grep nisuser /etc/passwd <==不會出現(xiàn)任何訊息,因
為無此賬號
 [root@clientlinux ~]# su - nisuser1 <==直接切換身份看看!
 su: warning: cannot change directory to /home/nisuser1: No such file 
or directory
 -bash-4.1$ id
 uid=1001(nisuser1) gid=1001(nisuser1) groups=1001(nisuser1)
 # 因為我們 client.centos.vbird 僅有帳戶信息,并沒有用戶家目錄,
 # 所以就會出現(xiàn)如上的警告,因此才需要用 id 驗證,并且需要加掛 NFS 嘛!
 # 仔細看,現(xiàn)在的身份確實是 nisuser1 喔!確實有連上 NIS server 啦!
 
 -bash-4.1$ yppasswd
 Changing NIS account information for nisuser1 on www.centos.vbird.
 Please enter old password: <==這里輸入舊密碼
 Changing NIS password for nisuser1 on www.centos.vbird.
 Please enter new password: <==這里輸入新密碼
 Please retype new password: <==再輸入一遍
 
 The NIS password has been changed on www.centos.vbird.
 
 -bash-4.1$ exit

這樣就更新了 NIS server 上頭的 /etc/shadow 以及/var/yp/vbirdnis/passwd.by* 的數(shù)據(jù)庫。

服務端查看是否有改動

[root@www ~]#  ll /var/yp/vbirdnis/
總用量 3152
-rw-------. 1 root root 135680 2月   7 15:22 group.bygid
-rw-------. 1 root root 135680 2月   7 15:22 group.byname
-rw-------. 1 root root 136192 2月   7 15:22 hosts.byaddr
-rw-------. 1 root root 136448 2月   7 15:22 hosts.byname
-rw-------. 1 root root 136960 2月   7 15:22 mail.aliases
-rw-------. 1 root root 136704 2月   7 15:22 netid.byname
-rw-------. 1 root root 136448 2月   7 15:23 passwd.byname
-rw-------. 1 root root 136448 2月   7 15:23 passwd.byuid
-rw-------. 1 root root 142336 2月   7 15:22 protocols.byname
-rw-------. 1 root root 139008 2月   7 15:22 protocols.bynumber
-rw-------. 1 root root 140288 2月   7 15:22 rpc.byname
-rw-------. 1 root root 137984 2月   7 15:22 rpc.bynumber
-rw-------. 1 root root 547840 2月   7 15:22 services.byname
-rw-------. 1 root root 857856 2月   7 15:22 services.byservicename
-rw-------. 1 root root 135680 2月   7 15:22 ypservers
[root@www ~]# tail /var/log/messages
Feb  7 15:23:05 www rpc.yppasswdd[2443]: update nisuser1 (uid=1001) from host 192.168.91.159 successful.
[root@www ~]# 

六、報錯

在建立賬號為數(shù)據(jù)庫執(zhí)行/usr/lib64/yp/ypinit -m的錯誤一:

gmake[1]: *** No rule to make target `/etc/aliases', needed by `mail.aliases'. Stop.
 gmake[1]: Leaving directory `/var/yp/vbirdnis'
 make: *** [target] Error 2
 Error running Makefile.
 Please try it by hand.

錯誤一解決辦法:缺少什么檔案,就 touch 他就是了!

 [root@www ~]# touch /etc/aliases

錯誤二:

如果是如下的錯誤,那可能是因為:

  • 你的 ypserv 服務沒有順利啟動,請利用 rpcinfo 檢查看看;
  • 你的主機名與 IP 沒有對應好,請檢查 /etc/hosts
gmake[1]: Entering directory `/var/yp/vbirdnis'
 Updating passwd.byname...
 failed to send 'clear' to local ypserv: RPC: Program not registeredUpdating passwd.byuid...
 failed to send 'clear' to local ypserv: RPC: Program not registeredUpdating group.byname...
 ....(底下省略)....

要注意啊,如果你的用戶密碼有變動過,那么你就得要重新制作數(shù)據(jù)庫,重新啟動 ypserv 及 yppasswdd

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • MemcacheQ安裝及使用方法

    MemcacheQ安裝及使用方法

    MemcacheQ 是一個簡單的分布式隊列服務,它的運行依賴于BerkeleyDB 和 libevent,所以需要先安裝BerkeleyDB和libevent,需要的朋友可以參考下
    2017-03-03
  • 關于CentOS 7下sqlite3找不到的問題解決

    關于CentOS 7下sqlite3找不到的問題解決

    這篇文章主要給大家介紹了關于CentOS 7下sqlite3找不到問題的解決方法,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面跟著小編一起來學習學習吧。
    2017-07-07
  • Linux下如何對ISO文件編輯的方法示例

    Linux下如何對ISO文件編輯的方法示例

    這篇文章主要給大家介紹了關于在Linux下對ISO文件編輯的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考學習,下面隨著小編來一起學習學習吧。
    2017-09-09
  • linux下使用 CentOS7安裝jdk1.7

    linux下使用 CentOS7安裝jdk1.7

    這篇文章主要介紹了linux下使用 CentOS7安裝jdk1.7的相關資料,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06
  • Linux中mv命令的高級用法示例

    Linux中mv命令的高級用法示例

    這篇文章主要給大家介紹了關于Linux中mv命令的高級用法示例,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Linux具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-05-05
  • 阿里云云服務器遠程連接管理Linux服務器圖文教程

    阿里云云服務器遠程連接管理Linux服務器圖文教程

    這篇文章主要介紹了阿里云云服務器遠程連接管理Linux服務器圖文教程,本文使用Putty客戶端軟件,并附軟件下載地址,需要的朋友可以參考下
    2014-09-09
  • .htaccess文件使用教程總結

    .htaccess文件使用教程總結

    .htaccess是一個站點管理員可以應用的強大工具,有更多的變化以適應不同的用途,可以節(jié)約時間及提高網(wǎng)站的安全性
    2008-06-06
  • CentOS6 配置Nginx,MySql,php-fpm開機啟動的方法

    CentOS6 配置Nginx,MySql,php-fpm開機啟動的方法

    這篇文章主要介紹了CentOS6 配置Nginx,MySql,php-fpm開機啟動的方法的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-10-10
  • socket unix domain IPC的實例代碼

    socket unix domain IPC的實例代碼

    下面小編就為大家?guī)硪黄猻ocket unix domain IPC的實例代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • 詳解CentOS7 FTP服務搭建(虛擬用戶訪問FTP服務)

    詳解CentOS7 FTP服務搭建(虛擬用戶訪問FTP服務)

    Liunx外部文件的傳輸,避免不了使用FTP服務,所以現(xiàn)在就整理下,CentOS7環(huán)境下,F(xiàn)TP服務的搭建。有興趣的可以了解一下。
    2017-01-01

最新評論