O SSH-agent não está carregando quando acessa remotamente a máquina

0

Eu tenho essa conta de usuário que configurei corretamente para gerenciar minhas chaves para o ssh em outras instâncias.

Quando estou sentado na frente da máquina, minha configuração funciona conforme descrito em meu arquivo ~ / .ssh / config:

Parte disso:

Host vm0-test
   User test
   HostName vm0.test.lab
   IdentityFile ~/.ssh/vm

Host vm1-test
   User test
   HostName vm1.test.lab
   IdentityFile ~/.ssh/vm

Host vm2-test
   User test
   HostName vm2.test.lab
   IdentityFile ~/.ssh/vm

Mas toda vez que eu ssh remotamente a esta máquina, eu preciso executar manualmente estes passos:

remote $ eval 'ssh-agent'
remote $ ssh-add ~/.ssh/vm

Como posso forçá-lo a carregar minha configuração local toda vez que eu ssh?

    
por Mini Fridge 29.12.2015 / 12:10

1 resposta

1

Seu arquivo config não está iniciando um agente. Ele está apenas fornecendo três aliases com arquivos de chaves designados para serem usados. Se este arquivo de chave ( ~/.ssh/vm ) estiver protegido por uma senha (como deveria ser) e nenhum agente estiver em execução, você terá que digitar essa frase toda vez que usar a chave. É por isso que usamos agentes.

Seu agente deve ser iniciado em outro lugar. E se não for iniciado no login remoto, ele pode ser iniciado na inicialização de sua sessão gráfica (algum serviço principal). É por isso que você deve iniciá-lo manualmente para o ssh remoto.

Então, o que você pode fazer?

  1. Encontre o local onde seu agente ssh foi iniciado para saber por que ele não é feito para sessões remotas.
  2. Inicie o agente ssh a partir de .profile , por ex. dê uma olhada em que .

Se o seu .profile estiver verificando um agente já em execução, ele não afetará o agente de uma sessão gráfica. Isso funcionará para sessões de texto gráficas e remotas locais.

    
por 29.12.2015 / 14:30