“Falha na verificação da chave do host” ao transferir arquivos usando o comando SCP [duplicado]

14

Quando estou tentando transferir arquivos usando o comando SCP, estou recebendo este erro (Remoção do IP e da chave RSA):

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
------------------------(RSA key)
Please contact your system administrator.
Add correct host key in /home/users/myaccount/.ssh/known_hosts to get rid of this message.
Offending key in /home/users/myaccount/.ssh/known_hosts:4
RSA host key for 'my IP' has changed and you have requested strict checking.
Host key verification failed.
lost connection

Estou usando o Ubuntu 12.04 recém-instalado e posso me conectar a esse servidor usando o ssh. Alguma ajuda?

    
por rvsi 07.06.2012 / 11:49

3 respostas

11

Você precisa remover a quarta chave ssh do arquivo /home/users/myaccount/.ssh/known_hosts .

    
por Manula Waidyanatha 07.06.2012 / 12:00
8

Isso pode acontecer facilmente quando se conecta a um computador cujas chaves de host em / etc / ssh mudaram se esse computador foi atualizado sem copiar suas antigas chaves de host. As chaves do host aqui são uma prova quando você se reconecta a um computador remoto com o ssh com o qual está falando no mesmo computador conectado à primeira vez que o acessou.

Se o computador remoto estiver sob seu controle, você provavelmente saberá se ele foi atualizado e as chaves do host não foram copiadas. Em caso afirmativo, e se o sistema estiver em sua LAN, você pode ser bastante seguro em ignorar ou contornar essa mensagem de erro. Você provavelmente conhece seu endereço IP com certeza e sabe que não há dispositivos de trojan nele.

Se o computador não estiver sob seu controle, mas você tiver certeza de que ele foi atualizado, também poderá ser razoável contornar essa mensagem de erro. (Se o host remoto publicar os hashes das chaves do host ssh, você poderá verificar se eles são mais seguros ou se pode chamar o gerenciamento do servidor para obter a impressão digital da chave do host).

Se o computador estiver sob seu controle, você deve copiar as chaves do host antigo de / etc / ssh para o novo sistema como parte do procedimento de atualização. (N.B, existem arquivos chave e arquivos de configuração neste diretório).

Quando souber que você quer ignorar essa condição, há pelo menos duas maneiras de lidar com esse problema.

  • Passe o StrictHostKeyChecking no comando SSH como (exemplo):

ssh -o 'StrictHostKeyChecking no' user@host

Você terá que fazer isso a cada vez. Ou ...

  • Remova a chave ssh ofensiva (exemplo real obtido de sua resposta):

sed -i '4d' /home/users/myaccount/.ssh/known_hosts

Esta é a solução mais permanente. Em vez de lhe dar a mensagem acima, você terá a opção de aceitar o novo hostkey do servidor, assim como fez na primeira vez que se conectou a ele. Verifique o melhor possível para se conectar ao computador remoto correto, sem passar por um intermediário, e depois aceite a nova chave do host.

    
por pl1nk 07.06.2012 / 17:48
1

Parece que você copiou sua pasta ssh de um sistema antigo para o novo.

Abra o terminal e digite:

rm /home/USERNAME/.ssh/known_hosts

Isso excluirá todas as chaves "antigas".

    
por Produnis 07.06.2012 / 12:04

Tags