A resposta do ibagur está próxima, mas ele tem as chaves invertidas. A chave pública do sistema remoto deve estar em seu arquivo local ~/.ssh/known_hosts
. Sua chave pública deve estar no arquivo ~/.ssh/**authorized_keys
do sistema remoto. Ao contrário do post acima, o arquivo authorized_keys
DEVE ter 600 permissões. As etapas para executar são
- Copie sua chave pública para o diretório
~/.ssh
do sistema remoto usando o comandoscp id_rsa.pub username@remotehost:/path/to/home/username/.ssh/mykey.tmp
, certificando-se de que o nome de arquivo usado seja exclusivo no sistema remoto. Se solicitado, aceite a chave do sistema remoto depois de verificar se é realmente a chave correta para o sistema remoto (confie na chave). Isso adicionará a chave pública do sistema remoto ao seu arquivo~/.ssh/known_hosts
. - Faça login no sistema remoto usando a autenticação de senha.
- Altere os diretórios para
~/.ssh
usandocd .ssh
- Instale sua chave no arquivo '' ~ / .ssh / authorized_keys
file using
cat mykey.tmp > > authorized_keys ' - Verifique se o arquivo
authorized_keys
está no modo 600 usandochmod 600 authorized_keys
- Efetue logout e teste, você não deve mais ser solicitado a fornecer uma senha.
Se você ainda tiver problemas, você pode tentar fazer o login no sistema remoto usando ssh -vv
para obter alguma saída de depuração, mas na minha experiência, o cliente não fornece informações muito úteis. Você provavelmente precisará executar o daemon SSH do sistema remoto no modo de depuração, conforme descrito na pergunta original.