Como manter a sessão de login do ssh-agent com o novo OpenSSH e PowerShell do Windows 10


16

Na minha máquina Ubuntu, eu simplesmente uso o Keychain para manter um único agente ssh que permanece conectado.

Gostaria de algo semelhante ao do Windows agora que o OpenSSH está incluído nativamente. Eu estava usando o Git Bash com o if [ -z "$SSH_AUTH_SOCK" ] ; then ...script conhecido, mas isso resultou na abertura de muitos agentes ssh, eu sabia que isso era desaconselhado (em parte devido a esta postagem no blog: http://rabexc.org/posts/pitfalls-of-ssh -agents ) - e foi isso que me levou a obter o Keychain para o Ubuntu. Outro motivo para não usar mais isso é que estou mudando para o PowerShell como meu shell principal.

Mas não sei como obter o mesmo tipo de coisa no Windows, especificamente com o PowerShell e com o Win32-OpenSSH .

Obrigado!

Respostas:


13

Você deve configurar o serviço do OpenSSH Authentication Agent para iniciar automaticamente (ou você pode iniciá-lo manualmente sempre que abrir o PowerShell pela primeira vez: Start-Service ssh-agent).

Depois disso, você precisa ssh-add C:\path\to\your\ssh\key\id_rsaapenas uma vez. Depois disso, sempre que o agente ssh for iniciado, a chave estará lá. Você pode verificar com ssh-add -l.

EDIT: Para que o agente SSH inicie automaticamente no Windows, você pode executar Set-Service ssh-agent -StartupType Automaticem um prompt de superusuário PowerShell.


Você poderia adicionar detalhes sobre como obter o ssh-agent para iniciar automaticamente?
Mark Woon

@ MarkWoon Acabei de editar minha resposta com isso.
Davi Koscianski Vidal

2
Isso parece não funcionar - o Set-Service não tem efeito aparente, e o manual Start-Service, enquanto inicia alguma coisa, também é ineficaz - qualquer comando ssh-add depois falha com "comunicação com o agente falhou". .
Chris Dodd

* No menu Iniciar, pesquise "Serviços" * Clique duas vezes em "OpenSSH Authentication Agent" * Defina o tipo de inicialização como "Automático" * Clique em "Iniciar" * Clique em OK e saia * * Agora vá ao PowerShell e adicione sua chave com "ssh -add" * Depois que o agente vai se lembrar sua chave quando você precisar dele :)
Esben Andersen
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.