Como manter o bloqueio do ssh-agent no login do Windows?

8

É de alguma forma possível desbloquear automaticamente minhas chaves privadas para autenticação ssh no login do Windows e (des) bloqueá-las quando (des) bloquear minha sessão?

Atualmente, estou usando o ssh-agent do msys, mas poderia criar imagens usando, por exemplo, charade como wrapper para o concurso de massa de vidraceiro, também, se já existir uma solução melhor para isso.

Tobias Kienzler
fonte
2
Eu só tenho uma chave sem senha criptografada com o EFS, que é transparente para ssh-agentque a chave possa ser carregada automaticamente enquanto permanece segura.
usar o seguinte comando
@ grrawity: obrigado, isso é ainda mais fácil! se você postar isso como uma resposta eu vou aceitá-lo editar correção, não posso desde a minha administração não fez EFS configurado corretamente :(
Tobias KIENZLER
Em um domínio do Active Directory? (Se você não tiver um certificado, cipher /kdeve criar um novo, embora ele vai ser auto-assinado.)
user1686
@ grrawity: obrigado. Eu tentei, mas nada mudou. Eu comecei uma nova pergunta para este problema: Pode arquivos não criptografar (utilizando o EFS) em um domínio
Tobias KIENZLER

Respostas:

1

O Grawity apenas possui uma chave sem senha criptografada com o EFS, que é transparente para o ssh-agent, para que a chave possa ser carregada automaticamente enquanto permanece segura. Ele também sugere o seguinte para o Active Directory: Se você não possui um certificado, cipher /kdeve criar um novo, embora seja autoassinado.

Tom Wijsman
fonte
é basicamente uma boa ideia, mas, como mencionado, a criptografia de arquivos não funciona. cipher /kfunciona bem, mas ainda recebo "A política de recuperação configurada para este sistema contém certificado de recuperação inválido", mas corrigir isso (veja aqui ) requer privilégios de administrador ... Acho que vou ficar com a hibernação ou com uma chave sem senha sem criptografia
Tobias Kienzler
@ Tobias: Como assim? Você não tem privilégios de administrador? Você deve usá-los ou pedir ao administrador do sistema para fazer isso por você. Se você não tem como acessar a conta de administrador, tente reinstalar se é o seu sistema operacional pessoal ou pare de tentar se é um sistema operacional da empresa. Talvez considerar o uso de uma solução baseada em Windows, como Terminal Services ...
Tamara Wijsman
é no trabalho e nosso admin (que não vai dar permissões de administrador para qualquer um) é ocupado o suficiente manter nosso cluster em relação a esta questão apenas-para-conveniência
Tobias KIENZLER
1

Você pode restaurar o estado das chaves privadas que estão sendo desbloqueadas, hibernando o processo no estado em que as chaves privadas estão desmarcadas; então, toda vez que você precisar, poderá iniciar o estado de hibernação capturado pela primeira vez. Tecnicamente, poderia funcionar ...

Caso contrário, tente configurar um script ( talvez com base no AutoIt ) para fazer o que você faria manualmente.

Tamara Wijsman
fonte
Não gosto da ideia de colocar minha senha em texto não criptografado em um script, então prefiro uma chave sem senha não criptografada. Mas hibernação é uma boa idéia, eu poderia apenas hibernar janelas em vez de desligá-lo que deve manter a instância do ssh-agent.exe
Tobias KIENZLER
11
@ Tobias: O ponto é que o que você está perguntando é essencialmente vincular o bloqueio do seu agente SSH ao seu Login do Windows; a única maneira de fazer isso é pelos scripts do Agendador de tarefas para os eventos de logon, bloqueio e logout. Você poderia tornar o script legível apenas pelo usuário que configurou no Gerenciador de tarefas e armazenar a senha de maneira criptografada e descriptografá-la quando necessário. A única coisa que resta aqui é alguém roubando seu disco rígido, mas é por isso que o EFS e o TrueCrypt foram inventados. Você tanto poderá inserir sua senha ou você fazê-lo automaticamente, armazenando-o em algum lugar ...
Tamara Wijsman
11
isso é verdade. Aceito a resposta EFS do seu / grawity, já que essa é a solução que eu usaria se funcionasse. Na verdade, considerei usar apenas um arquivo de chave não criptografada (com permissões exclusivas), pois qualquer pessoa capaz de acessar o respectivo disco rígido estaria na mesma sala que a máquina em que eu enterro de qualquer maneira: - / obrigado pelas duas respostas!
Tobias Kienzler 26/08