Onde estão armazenadas as chaves privadas do cliente ssh?

12

No cliente, depois que eu ssh-add para adicionar minha chave privada, tudo funciona bem, ssh-add -llista a chave e posso conectar-me aos hosts que possuem a chave pública correspondente, mas nada muda no diretório .ssh como deveria. Portanto, minha pergunta é: Como posso localizar o diretório no qual as chaves privadas armazenadas são adicionadas por ssh-add?

myhau
fonte

Respostas:

18

ssh-addnão armazena nada local ou remotamente no disco. Este comando carrega sua chave privada, solicitando sua senha uma vez, no Agente SSH que foi iniciado anteriormente.

O agente SSH mantém as chaves privadas apenas na memória. Quando você inicia o cliente SSH, ele usa a chave privada do Agente SSH, sem solicitar a senha da chave privada novamente, para se autenticar no servidor de destino.

O .sshdiretório conterá (no diretório inicial de qualquer usuário):

  • authorized_keys : lista de chaves públicas que podem ser usadas para se conectar a este servidor
  • config : arquivo opcional com parâmetros de configuração para o cliente SSH
  • as chaves pública e privada que você gerou neste host para esse usuário.
  • known_hosts : mantenha uma lista de hosts aos quais você já se conectou com um hash para detectar se a chave do host foi alterada desde a última vez.
Benoit
fonte
2

ssh-addnão deve mudar nada ~/.ssh. Ele informa ao ssh-agentprograma quais identidades adicionar e o ssh-agentprograma as armazena na memória após solicitar frases secretas. Portanto, não existe esse diretório.

muru
fonte
1
~/.ssh/id_rsa

Este artigo mostra como gerar a chave para o caminho acima. Não é o meu artigo :)

kalajeng
fonte