Chaves públicas SSH não estão mais funcionando?

1

Eu tenho um cliente Ubuntu Server e OS X e Windows (Cygwin).

Há alguns dias, consegui gerar chaves RSA no cliente e copiá-las para o servidor com:

ssh-copy-id <username>@<host>

E eu consegui facilmente o SSH sem ser solicitada uma senha.

Eu criei um cronjob e o cliente do OS X fazia backup da pasta Documentos todas as noites e enviava um e-mail com a saída.

Recentemente, recebi isso no e-mail.

Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password).
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at /SourceCache/rsync/rsync-45/rsync/io.c(453) [sender=2.6.9]

Quando fui para o SSH manualmente no servidor, percebi que ele estava solicitando a senha novamente.

Eu tentei reinicializar o servidor e o cliente, gerando uma nova chave RSA e reenviá-la, alterando as permissões na pasta .ssh no servidor e no cliente,

chmod 700 ~/.ssh

Eu tentei alterar as permissões no diretório inicial do servidor

chmod go-w ~

Tentou fazer o mesmo procedimento a partir de uma máquina OS X diferente e teve o mesmo erro de ser solicitado por uma senha depois de copiar a chave SSH para o servidor.

Quando eu fiz um -v ao fazer um SSH no servidor, isto é o que eu consegui (escondi o IP do servidor, o nome de usuário e a chave RSA)

Andrews-MacBook-Pro:~ USER-NAME$ ssh -v Ubuntu-User@"Server-IP"
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to "Server-IP" ["Server-IP"] port 22.
debug1: Connection established.
debug1: identity file /Users/USER-NAME/.ssh/id_rsa type 1
debug1: identity file /Users/USER-NAME/.ssh/id_rsa-cert type -1
debug1: identity file /Users/USER-NAME/.ssh/id_dsa type -1
debug1: identity file /Users/USER-NAME/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr [email protected] none
debug1: kex: client->server aes128-ctr [email protected] none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA [RSA Key was Here]
debug1: Host '"Server-IP"' is known and matches the RSA host key.
debug1: Found key in /Users/USER-NAME/.ssh/known_hosts:3
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/USER-NAME/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /Users/USER-NAME/.ssh/id_dsa
debug1: Next authentication method: password
Ubuntu-User@"Server-IP"'s password: 

Quando eu insiro a senha, o SSH funciona, mas eu estou tentando automatizar os backups para o servidor à meia-noite e gostaria de não ter que inserir a senha constantemente.

O que posso fazer para corrigir isso?

Obrigado.

Editar: eu olhei para o "/var/log/auth.log" e descobri que a linha superior pode ser capaz de ajudar. Abaixo disso, mostra a linha de mim digitando minha senha e, em seguida, abrindo o log. Esta informação ajuda?

Mar 23 12:58:26 SERVER-USERNAME sshd[8799]: pam_ecryptfs: Passphrase file wrapped
Mar 23 12:58:28 SERVER-USERNAME sshd[8795]: Accepted password for SERVER-USERNAME from "CLIENT-IP" port 55224 ssh2
Mar 23 12:58:28 SERVER-USERNAME sshd[8795]: pam_unix(sshd:session): session opened for user SERVER-USERNAME by (uid=0)
Mar 23 12:58:28 SERVER-USERNAME systemd-logind[689]: New session 10 of user SERVER-USERNAME.
Mar 23 12:59:00 SERVER-USERNAME sudo:   SERVER-USERNAME : TTY=pts/7 ; PWD=/home/SERVER-USERNAME ; USER=root ; COMMAND=/usr/bin/nano /var/log/auth.log
Mar 23 12:59:00 SERVER-USERNAME sudo: pam_unix(sudo:session): session opened for user root by SERVER-USERNAME(uid=0)
    
por AndrewMRiv 22.03.2015 / 19:23

2 respostas

0

Eu pluguei um monitor no Ubuntu Server (creio que ele roda a versão desktop do Ubuntu 14) e, ao entrar, vi uma mensagem pedindo para eu criar uma frase secreta.

Eu cliquei nele e apertei enter (para uma frase secreta em branco). Depois disso, reiniciei e os logins SSH sem senha pareciam funcionar novamente.

Antes de marcar isso como completo, darei alguns dias de teste para ter certeza de que não foi mais nada.

    
por AndrewMRiv 27.03.2015 / 17:41
0

para identificar a origem do problema, tente configurar o login sem senha para localhost no servidor. Desta forma, você lida com apenas uma máquina, o servidor. Se funcionar, o problema é causado pelo (s) cliente (s); se isso não acontecer, você terá que descobrir o que há de errado com o próprio servidor

    
por dmityugov 25.03.2015 / 21:46