Os usuários do NIS não conseguem acessar o SSH

1

Eu recentemente adicionei um novo servidor (cliente) ao meu NIS. Por um mês ou mais, isso funcionou bem, mas desde hoje eu não consigo mais acessar o SSH. Alguns outros serviços (por exemplo, IMAP) no mesmo servidor funcionam bem. O outro cliente NIS parece funcionar bem.

A sessão do SSH é encerrada imediatamente após o login bem-sucedido:

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 contém:

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

Se eu definir UseLogin yes em /etc/ssh/sshd_config , posso fazer login, mas obtenho um shell estranho:

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*/

Eu acho que há algo errado com o NIS, mas não tenho idéia de como consertar isso, alguém tem uma idéia?

Meu /etc/nsswitch.conf contém (entre mais entradas sem nis):

passwd:         files nis
group:          files nis
shadow:         files nis
netgroup:       nis
    
por dtech 31.08.2014 / 17:26

1 resposta

2

O problema é que o passwd.byuid map não foi transferido.

A execução de yppush passwd.byuid em nismaster gerou um erro de tempo limite e gerou o seguinte em faultyserv ' /var/log/syslog :

Sep  1 09:51:37 faultyserv ypserv[2038]: refuse to transfer passwd.byuid from <ip>, master is faultyserv.mydomain.com)

O servidor escravo tinha o servidor mestre incorreto especificado:

# 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

A re-execução de /usr/lib/yp/ypinit -s nismaster em faultyserv corrigiu o problema

    
por 01.09.2014 / 10:27

Tags