O compartilhamento de arquivos de soquete através do sistema de arquivos de rede não funcionará, já que o soquete do Windows e o soquete do Linux são bestas completamente diferentes - o Linux dentro da VM não saberia como usar soquetes do Windows. Para garantir que a VM possa utilizar o agente de autenticação no host, é necessário ativar o encaminhamento do agente no both ssh client e server e, em seguida, ssh
na VM via host (não fazer login diretamente no console da VM). p>
Assumindo:
- A configuração de encaminhamento do agente do servidor SSH é feita, de acordo com o post original (não usei o Vagrant, portanto, não posso dizer);
- A configuração do Keeagent está concluída e em execução (tentei o modo de cliente, mas existem alguns problemas ao lidar com chaves que não são RSA / DSA, portanto, o modo de agente é mais seguro);
Em putty
profile setup, marque a opção "Allow agent forwarding" em Connection → SSH → Auth para ativar o encaminhamento de agentes para o cliente. Alternativamente, se o Cygwin ssh é usado no host, existem duas opções:
- Instale o ssh-pageant e faça-o iniciar automaticamente com o cygwin (em
~/.profile
e afins). - Especifique a localização desejada do arquivo de soquete do Windows na configuração do Keeagent e defina a variável
$SSH_AUTH_SOCK
no cygwin para o local correspondente.
Para verificar se o encaminhamento do agente está funcionando ou não, ssh na VM e verifique a variável $SSH_AUTH_SOCK
. Se não estiver vazia e estiver apontando para um arquivo de soquete do Linux que existe, então tudo deve estar bem. Se a variável estiver vazia, então algo está faltando.