
Estou lutando para configurar o encaminhamento do agente ssh.
O que eu quero fazer: quero ter minha chave pública em um servidor Ubuntu, a chave privada localmente na minha máquina Windows. Quero me conectar ao servidor Ubuntu sem precisar digitar minha senha de chave privada, pois ela está armazenada no pagent. Esta parte funciona perfeitamente. A próxima parte é aquela que não está funcionando.
Depois de me conectar ao servidor Ubuntu, quero fazer git/ssh em outros servidores, apenas com a chave que está na minha máquina Windows no pagent.
O que fiz até agora: tenho um cliente Windows com pagent instalado. A chave é configurada na máquina Windows. Posso me conectar ao servidor Ubuntu e autorizar a chave privada que configurei. Também ativei "Permitir encaminhamento de agente" no PuTTY.
É assim que meu ssh_config se parece:
Host *
ForwardAgent yes
Qual é o problema: Quando conectado ao servidor e digitando "ssh-add -l" o servidor me diz: "O agente não tem identidades."
O que eu esqueci?
Responder1
Primeiro, verifique se o servidor permite o encaminhamento de agente ( AllowAgentForwarding
in sshd_config
) e caso contrário, permita e reinicie o serviço sshd. Em seguida, verifique se ele está realmente habilitado no PuTTY. Se ambos estiverem bem, inspecione o log de depuração do PuTTY. Se o encaminhamento falhou, deve haver alguma informação sobre o motivo.
Responder2
Eu encontrei meu problema.
Eu tive
eval $(ssh-agent)
no meu .bashrc.
Após excluir essa linha, o encaminhamento começou a funcionar.