Esta consulta não está diretamente relacionada ao Git, mas como um dos transportes suportados pelo Git é o SSH, e estou tentando usar o agente de encaminhamento, pensei em pedir esclarecimentos (as páginas man me deixaram desapontar)
Estou tentando automatizar uma implantação de software usando o Capistrano, consegui suspender alguns dos pontos problemáticos (pré-semeando os hosts conhecidos, antes da implantação, etc), mas estou com a seguinte situação .
Minha equipe faz login no servidor como eles, contas de usuários individuais, todos estão em um grupo developers
e o umask
é 002
. Nenhum dos itens acima é realmente relevante, exceto para dizer que o objetivo é garantir que minha equipe sempre trabalhe como eles, sem exigir privilégios de superusuário.
Nós nos conectamos ao servidor example.com
usando o seguinte ~/.ssh/config
:
Host example.com
User beaks
ForwardAgent yes
IdentityFile ~/.ssh/id_rsa_business
O login inicial funciona perfeitamente, ssh example.com
abre uma conexão com minha conta de usuário e tudo está em ordem.
O problema vem no próximo passo,
git ls-remote [email protected]:project/repository.git
Isso está usando a camada de transporte Git + SSH mencionada acima (veja o link acima) - e normalmente deve usar minha chave de agente encaminhado (que eu verifiquei presente com env | grep SSH_AUTH_SOCK
)
A resposta é uma simples "autenticação falhada (chave pública) na outra extremidade desligada inesperadamente", suspeito porque o agente do meu usuário não está sendo usado quando eu abordo github.com
como seu usuário git
compartilhado.
Eu também não posso descartar EC2
estranheza (políticas de segurança, etc) - mas, nesse caso, eu teria esperado um tempo limite ou falha de conexão. Tenho certeza de que estou atingindo github.com
e que eles não estão me deixando entrar, porque meu agente não está oferecendo minha beaks
key para seu usuário git
.
Feliz em adicionar mais informações se eu perdi alguma coisa.