Adicione chaves ao ssh-agent

3

Eu tenho três pares de chaves SSH que desejo adicionar ao agente SSH toda vez que eu inicio um shell. Depois de reiniciar, eu sempre tenho que adicioná-los manualmente novamente usando ssh-add <path_to_private_key> .

Como posso fazer isso?

    
por shineability 07.04.2016 / 16:21

2 respostas

2

Depende.

Se você efetuar login por meio do SSH, poderá usar o encaminhamento de agente SSH, por meio da opção -A para ssh (como alternativa, você pode definir uma opção em ~/.ssh/config ). Isso permitirá que você copie chaves SSH do servidor para o seu ssh-agent executado localmente.

Se você efetuar login por meio de uma sessão X, deverá ter uma única execução% central ssh-agent configurada pela sua distribuição. Se não, certifique-se de que seu ~/.xsession (ou o que você usa para iniciar sua sessão X) contém algo assim:

ssh-agent awesome

(no pressuposto de que você é como eu e ama o incrível gerenciador de janelas).

Se tudo mais falhar, você poderá usar seu ~/.bash_profile . Adicione algo nas seguintes linhas (próximo do topo desse arquivo):

if [ -z "$SSH_AGENT_PID" ]
then
    exec ssh-agent bash
fi
ssh-add ...

isso verifica se você já tem um agente em execução; se não, ele começa um novo, que então inicia um shell. Se você fizer isso, ele adiciona suas chaves a ele.

(Existe outra opção onde você executa eval ssh-agent sem passar um comando para executar. Não faça isso; é menos seguro)

    
por 07.04.2016 / 17:18
-1

Após iniciar o agente, salve os comandos para definir SSH_AUTH_SOCK e SSH_AGENT_PID em um arquivo. Em seguida, execute esses comandos em vez de iniciar o agente novamente. Isso deixará você com um agente compartilhado para todos os seus shells. Construir essa funcionalidade no arquivo .profile ou .bash_profile facilitará isso.

Se você estiver trabalhando em um ambiente X-Windows, poderá iniciar o agente como parte da inicialização do X-Windows. Seus shells devem então herdar as configurações existentes do agente.

Ao usar esta solução, adiciono as chaves com um tempo limite relativamente curto. O padrão pode ser definido ao iniciar o ssh-agent usando a opção -t .

    
por 07.04.2016 / 16:52

Tags