Nis
NIS 使用者突然無法登錄 SSH
我最近在我的 NIS 中添加了一個新的(客戶端)伺服器。一個月左右這工作正常,但從今天開始我突然無法再通過 SSH 登錄。同一台伺服器上的一些其他服務(例如 IMAP)可以正常工作。另一個 NIS 客戶端似乎工作正常。
SSH 會話在成功登錄後立即終止:
some.nis.user@nismaster:~$ ssh faultyserv some.nis.usern@faultyserv's password: Connection to faultyserv closed by remote host. Connection to faultyserv closed.
/etc/log/auth.log
包含:Aug 31 12:42:22 faultyserv sshd[27909]: pam_unix(sshd:session): session opened for user some.nis.user by (uid=0) Aug 31 12:42:22 faultyserv sshd[27909]: fatal: login_get_lastlog: Cannot find account for uid 1234
如果我設置
UseLogin yes
,/etc/ssh/sshd_config
我可以登錄,但得到一個奇怪的外殼:I have no name!@faultyserv:~$ pwd /home/s/some.nis.user I have no name!@faultyserv:~$ sudo echo sudo: unknown uid 1234: who are you? I have no name!@faultyserv:~$ id some.nis.user uid=1234 gid=1975(some.nis.user) groups=4294967295,2177(somegroup),/*snip a long grouplist*/
我認為NIS有問題,但不知道如何解決這個問題,有人知道嗎?
我的
/etc/nsswitch.conf
包含(在沒有 nis 的更多條目中):passwd: files nis group: files nis shadow: files nis netgroup: nis
問題是
passwd.byuid
地圖沒有被轉移。執行
yppush passwd.byuid
時nismaster
出現超時錯誤並在faultyserv
‘s中生成以下內容/var/log/syslog
:Sep 1 09:51:37 faultyserv ypserv[2038]: refuse to transfer passwd.byuid from <ip>, master is faultyserv.mydomain.com)
從伺服器指定了錯誤的主伺服器:
# ypwhich -m services.byservicename nismaster group.bygid nismaster group.byname nismaster protocols.bynumber nismaster services.byname nismaster hosts.byname nismaster netgroup.byhost nismaster rpc.bynumber nismaster passwd.byuid faultyserv.mydomain.com netgroup nismaster ypservers nismaster shadow.byname faultyserv.mydomain.com passwd.byname nismaster hosts.byaddr nismaster protocols.byname nismaster rpc.byname nismaster netgroup.byuser nismaster netid.byname faultyserv.mydomain.com
重新執行
/usr/lib/yp/ypinit -s nismaster
解決faultyserv
了問題