SSH de repente pedindo senha

5

Observação: essa é uma cópia de esta pergunta do StackOverflow , já que ali786 a sugeriu seria melhor aqui.

Problema geral

Eu tenho meu computador (Mac OSX 10.9.4) e um servidor remoto (Ubuntu 14.04.1 LTS) no qual eu ssh como root. Usei ssh-keygen para criar uma chave ssh (sem senha), adicionei a chave pública ao .ssh/authorized_keys do servidor e tudo ficou bom no mundo. Então, hoje cedo, ssh começou a me pedir uma senha novamente.

O que pode ter causado isso

Eu realmente não sei o que causou isso - estas são minhas melhores suposições:

  • Eu tive que remover alguns arquivos do meu diretório pessoal no servidor remoto quando eu acidentalmente copiei um repositório git lá (eu não fiz commit ou nada de lá, apenas copiei as coisas e então rm d) . Pelo que eu posso dizer do meu histórico de comandos, não há arquivos relevantes para ssh que eu removi, apenas .git, .gitignore e vários * .sw? arquivos restantes do vim.
  • Eu corri ssh-keygen -l -f ~/.ssh/authorized_keys no servidor remoto para ver as impressões digitais (eu acho) das chaves naquele arquivo.

Registros relevantes

Quando executo ssh -v -i ~/.ssh/mykey_rsa root@serverip , obtenho isto:

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/myusername/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 50: Applying options for *
debug1: Connecting to {ip address} [{ip address}] port 22.
debug1: Connection established.
debug1: identity file .ssh/mykey_rsa type 1
debug1: identity file .ssh/mykey_rsa-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:  Miscellaneous failure (see text)
No credentials cache file found

debug1:  An invalid name was supplied
unknown mech-code 0 for mech 1 2 752 43 14 2

debug1:  Miscellaneous failure (see text)
unknown mech-code 0 for mech 1 3 6 1 5 5 14

debug1:  Miscellaneous failure (see text)
unknown mech-code 2 for mech 1 3 6 1 4 1 311 2 2 10

debug1:  An unsupported mechanism was requested
unknown mech-code 0 for mech 1 3 5 1 5 2 7

debug1:  Miscellaneous failure (see text)
unknown mech-code 0 for mech 1 3 6 1 5 2 5

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 {fingerprint}
debug1: Host '{ip address}' is known and matches the RSA host key.
debug1: Found key in /Users/myusername/.ssh/known_hosts:16
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: .ssh/otherkey_rsa
debug1: Authentications that can continue: publickey,password
debug1: Offering RSA public key: .ssh/mykey_rsa
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: password
root@serverip's password: 

Eu acho estranho que ele tenha tentado uma chave ssh diferente (otherkey_rsa) antes da que eu usei (mykey_rsa), mas eu não sei o suficiente sobre o ssh para analisar isso bem.

Enquanto isso, o /var/log/auth.log do servidor remoto afirma de maneira útil

Aug 12 02:04:19 servername sshd[22147]: error: Could not load host key: /etc/ssh/ssh_host_ed25519_key
Aug 12 02:04:19 servername sshd[22147]: Authentication refused: bad ownership or modes for directory /root

Permissões

Local / no meu computador:

~/                     drwxr-xr-x+ 105 myusername staff 3570 Aug 11 23:14
~/.ssh/                drwx------   13 myusername staff  442 Aug 11 23:14
~/.ssh/mykey_rsa.pub   -rw-r--r--    1 myusername staff  397 Aug  5 20:52
~/.ssh/mykey_rsa       -rw-------    1 myusername staff 1675 Aug  5 20:52

Remotamente / no servidor:

~/                     drwxr-xr-x    8        501 staff 4096 Aug 12 02:16
~/.ssh/                drwx------    2       root root  4096 Aug 12 01:49
~/.ssh/authorized_keys -rw-------    1       root root   794 Aug 12 01:44

Remotamente no diretório /etc/ssh/ :

/etc/ssh $ ls -la
drwxr-xr-x  2 root root   4096 Aug 12 11:01 .
drwxr-xr-x 96 root root   4096 Aug 12 01:40 ..
-rw-r--r--  1 root root 242091 Apr 14 08:13 moduli
-rw-r--r--  1 root root   1690 Apr 14 08:13 ssh_config
-rw-r--r--  1 root root   2528 Apr 17 15:43 sshd_config
-rw-------  1 root root    672 Aug  6 00:41 ssh_host_dsa_key
-rw-r--r--  1 root root    606 Aug  6 00:41 ssh_host_dsa_key.pub
-rw-------  1 root root    227 Aug  6 00:41 ssh_host_ecdsa_key
-rw-r--r--  1 root root    178 Aug  6 00:41 ssh_host_ecdsa_key.pub
-rw-------  1 root root   1679 Aug  6 00:41 ssh_host_rsa_key
-rw-r--r--  1 root root    398 Aug  6 00:41 ssh_host_rsa_key.pub
-rw-r--r--  1 root root    338 Apr 17 11:48 ssh_import_id

Portanto, parece que o motivo pelo qual não foi possível carregar /etc/ssh/ssh_host_ed25519_key é que ele não existe. Deveria? Se sim, como posso criá-lo?

Estou realmente perplexa com isso e realmente aprecio a ajuda! Obrigada!

    
por Tasha 12.08.2014 / 17:08

1 resposta

2

auth.log está lhe dizendo exatamente qual é o problema: /root é de propriedade de um usuário diferente de remoteuser ou root, mas é de alguma forma essencial para o seu login. O remoteuser é root, ou seus arquivos .ssh são links simbólicos para algum lugar abaixo de /root .

Além disso, noto sua linha ls mostrando que ~/ é de propriedade do usuário 501. Isso acionará a mesma falha.

Meu palpite sobre o que mudou é que seu sshd_config agora especifica StrictModes .

    
por 13.08.2014 / 22:34