Qual poderia ser o motivo, que as chaves privadas não estão desbloqueadas?

6

Desde que eu atualizei para o Ubuntu 17.10 por um tempo, minhas chaves privadas - que eu uso, por exemplo, para acessar meu servidor via ssh - não são desbloqueadas programaticamente após o login.

Meuentendimentoéque,normalmente,oseahorseclientdevecuidardisso,perguntandosevocêdeveounãoarmazenarasenhadaschavesaodigitá-laspelaprimeiravez.

Meuprimeiropalpitefoiqueseahorse-deamonnãoestásendoexecutadoporalgummotivo,masé:

user@Zeus:~$psaux|grepseahorseuser191700.00.143263626564?Ss00:070:00seahorse-daemon

Meusegundopalpitefoique,poralgummotivo,eutenhoqueexcluirtodasassenhasrelacionadasarmazenadasnocavalo-marinhoem»Senwords->login«:

Euesperavaforçaroclienteameperguntarnovamenteedepoisarmazená-lonovamente.Masissonãoajudounada.Oclientenãoapareceparameperguntar...

Entãoeuencontreiessapergunta,quepoderiaestarrelacionada,masnãomeajudou: Desbloqueie todas as chaves privadas no Ubuntu, digitando a senha apenas uma vez no login

Como o gerenciamento de outras senhas funciona como esperado (por exemplo, senhas para nautilus, Chromium, Nextcloud etc.), presumo que o problema tenha que fazer algo com ssh-agent ...

Alguém pode me indicar na direção certa, como resolver esse problema? Alguma coisa mudou no modo como o GNOME lida com senhas? Talvez algum novo programa sofisticado não tenha sido instalado durante o processo de atualização?

UPDATE Quando eu adiciono a chave privada ao agente de autenticação novamente com:

ssh-add ~/.ssh/id_rsa

e tente fazer o login, serei solicitado a desbloquear a chave apenas uma vez, depois disso a chave será desbloqueada programaticamente. Mas isso funciona apenas até a próxima reinicialização. Depois de um novo começo eu tenho que adicionar a chave novamente ...

    
por user5950 05.12.2017 / 00:18

3 respostas

2

Sim, ssh-agent é a resposta. Para salvar a frase secreta, tudo o que você precisa fazer é:

ssh-add ~/.ssh/id_rsa

Em seguida, insira sua senha e faça login novamente.

    
por darksky 05.12.2017 / 01:36
2

Primeira opção

Iniciar o agente ssh:

ssh-agent

Adicione a chave ssh:

ssh-add ~/.ssh/id_rsa

Para fazê-lo persistir após a reinicialização, inicie automaticamente o ssh-agent, adicione a seguinte linha ao seu .bash_profile:

if [ -z "$SSH_AUTH_SOCK" ] ; then
  eval 'ssh-agent -s'
  ssh-add
fi

Segunda opção

Adicione isto ao seu .bashrc ou .zshrc:

if [ ! -S ~/.ssh/ssh_auth_sock ]; then
  eval 'ssh-agent'
  ln -sf "$SSH_AUTH_SOCK" ~/.ssh/ssh_auth_sock
fi
export SSH_AUTH_SOCK=~/.ssh/ssh_auth_sock
ssh-add -l > /dev/null || ssh-add

Isso só deve solicitar uma senha na primeira vez que você fizer o login após cada reinicialização. Ele continuará reutilizando o mesmo ssh-agent enquanto permanecer em execução.

    
por An0n 12.04.2018 / 12:06
1

A adição do Agente de Chaves SSH (Chaveiro do GNOME: Agente SSH) aos Aplicativos de Inicialização resolveu o problema para mim:

    
por Alexey 09.05.2018 / 13:25