SSH publickey funciona para raiz, mas não para usuário [duplicado]

4

Estou configurando um servidor remoto. O sshd está configurado para usar apenas a chave pública. Há duas contas na máquina remota com .ssh/authorized_keys idêntica, para que eu possa efetuar login usando a mesma chave. Um dos dois é o root e quando eu tento:

ssh -i /path/to/privatekey [email protected]

Eu entro, sem problema. No entanto, quando eu tento o outro usuário (não privado):

ssh -i /path/to/privatekey [email protected]

Ele falha. -v revela:

debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering DSA public key: /path/to/privatekey
debug1: Authentications that can continue: publickey
debug1: Trying private key: /path/to/privatekey
**debug1: key_parse_private_pem: PEM_read_PrivateKey failed**
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/path/to/privatekey': 

A linha com asterisco não ocorre com o login root @ server bem-sucedido. Isso também é estranho, pois ssh-agent já tem a frase secreta para essa chave; Não me perguntam com o login root @ server. O login com falha do bob @ server termina:

debug1: read PEM private key done: type DSA
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

Permissões, etc. em /home/bob/.ssh estão corretas [mas não executam bit no diretório .ssh, veja os comentários] . Isso foi na verdade uma atualização / reinstalação do sistema, e eu tenho um backup do /etc anterior, incluindo a configuração sshd . Eu não mudei nada (embora quando eu permitir a autenticação de senha, bob pode entrar), e foi assim que eu estava usando o sistema antes via git - então eu tenho um monte de projeto git remote ids keyed to use bob @ servidor via ssh, e não quero ter que mudá-los porque eu não consigo fazer com que sshd funcione da maneira que fazia anteriormente ...

    
por goldilocks 06.12.2012 / 19:09

1 resposta

5

Confirme as seguintes informações:

  1. A permissão do diretório .ssh é 700. A permissão de execução em um diretório é necessária para entrar em um diretório.

  2. A permissão do arquivo authorized_keys deve ser 600.

Sendo um administrador de sistemas, também enfrentei esse tipo de problema.

    
por 06.12.2012 / 20:13