RHEL 5 / CentOS 5 - sshd não responde

1

Eu tenho vários sistemas CentOS 5.xe RHEL 5.x cujos daemons SSH não respondem. Isso evita logins remotos.

O erro típico do lado da conexão é:

$ ssh db1
db1 :  ssh_exchange_identification: Connection closed by remote host

Examinando /var/log/messages depois de uma reinicialização forçada, mostra o seguinte antes da reinicialização:

Dec 10 10:45:51 db1 sshd[14593]: fatal: Privilege separation user sshd does not exist
Dec 10 10:46:02 db1 sshd[14595]: fatal: Privilege separation user sshd does not exist
Dec 10 10:46:54 db1 sshd[14711]: fatal: Privilege separation user sshd does not exist
Dec 10 10:47:38 db1 sshd[14730]: fatal: Privilege separation user sshd does not exist

Esses sistemas usam a autenticação LDAP e o arquivo nsswitch.conf está configurado para examinar "arquivos" locais primeiro.

[root@db1 ~]# cat /etc/nsswitch.conf
#
# /etc/nsswitch.conf
#

passwd:     files ldap
shadow:     files ldap
group:      files ldap

hosts:      files dns

O usuário SSH separado por privilégio existe no arquivo de senha local.

[root@db1 ~]# grep ssh /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

Alguma idéia sobre a causa raiz? Eu não vi nenhuma errata da Red Hat que cobre isso.

    
por ewwhite 10.12.2012 / 18:44

2 respostas

1

O bug da Debian # 552431 parece muito semelhante.

Os sistemas afetados fazem mais consultas LDAP do que os sistemas não afetados? Por exemplo, servidores de e-mail, servidores de BD autenticados por LDAP?

nss-ldap no EL5 é não bem projetado , foi substituído por nss-pam-ldapd em EL6. Você tem alguma máquina EL6 com ou sem esse problema?

Se o problema for reproduzível e você tiver a capacidade de experimentar, sugiro tentar sssd para substituir nss_ldap e nscd. O SSSD está no repositório RHEL / CentOS, disponível com o yum. Nota: o sssd não armazena em cache hosts como o nscd, se você precisar armazenar em cache nomes de host ao usar o sssd, deve usar um servidor DNS em cache (dnsmasq é super fácil para isso) ou usar o nscd para armazenar em cache somente hosts. O SSSD armazena em cache as informações do usuário / senha / grupo.

    
por 11.12.2012 / 05:24
0

SUGESTÃO 1: Existe / var / empty / sshd? Deve ser um diretório de permissão 755 de propriedade root.

SUGESTÃO 2: Algum erro no arquivo / etc / passwd? (ou seja, você correu pwck?)

SUGESTÃO 3: Tente finalizar o processo do daemon nscd. O nscd tem alguns bugs e, às vezes, o armazenamento em cache com informações de passwd, grupo ou host não funciona corretamente.

SUGESTÃO 4: Existe / sbin / nologina?

    
por 10.12.2012 / 18:46