Eu tenho um problema interessante com o ssh. Aqui está a configuração.
Meu cliente (executando o Ubuntu 17.04) possui chaves ssh públicas e privadas. Eu copiei a chave pública para o servidor (executando o Ubuntu Server 16.04.3 LTS) usando o comando ssh-copy-id
. Eu verifiquei isso funcionado, observando o arquivo authorized_keys no servidor; a chave pública do meu cliente é a única listada.
Agora, para o problema. Eu sou capaz de acessar o servidor do cliente através do ssh, usando minha chave ssh privada. Mas após o logout e tentativa de ssh novamente, recebo o seguinte erro:
Permission denied (publickey).
Quando eu faço o login no servidor no console, eu uso minha senha para fazer login e funciona bem. Então, quando eu tento SSH novamente do meu cliente, ele funciona novamente. E eu posso fazer logout e logar quantas vezes eu quiser. Assim que eu sair do console no servidor (como se eu estivesse fisicamente no servidor logado antes disso), eu posso SSH do meu cliente exatamente mais uma vez. Então, assim que a sessão for encerrada, recebo novamente o erro Permission denied (publickey).
em todas as tentativas subsequentes de SSH. Alguma idéia?
Aqui está o meu arquivo de configuração ssh no meu cliente:
Host sauron
HostName 192.168.1.191
User joe
PubKeyAuthentication yes
IdentityFile id_rsa
Mais uma coisa a mencionar é que tenho todo o SSD no servidor criptografado. Eu tenho que desbloqueá-lo sempre que eu inicializo o servidor com uma senha de criptografia. Não tenho certeza se isso é relevante. Eu suspeito que poderia ser um problema de permissões, embora eu também não tenha certeza disso. Sugestões seriam muito apreciadas e, por favor, pergunte se você precisa de esclarecimentos sobre qualquer coisa.