prompt preguiçoso para senha de chave pública ssh

1

Eu tenho chaves públicas ssh configuradas em meus computadores. Eles têm senhas. Sempre que preciso, por ex. empurre para o github, eu tenho que digitar a frase secreta. Cada vez. E eu prefiro ssh lembrado em acessos subseqüentes.

ssh-agent / keychain parece se encaixar na conta, exceto que eles me incomodam com a senha quando eu entro (quando eu posso não ter certeza de que preciso usar minhas chaves ssh), não quando estou tentando use ssh.

Existe algum recurso em qualquer uma dessas ferramentas ou alguma outra ferramenta que lembraria a frase-senha ssh, mas talvez a pegue quando eu digitá-la para o ssh em vez de quando a sessão for aberta?

Eu de alguma forma consegui isso funcionando em uma caixa do Fedora 16 há um tempo atrás, mas não me lembro o que fiz.

    
por Ellery Newcomer 14.02.2013 / 05:14

4 respostas

2

Aqui está o que eu usei para resolver este problema para shells ssh. Eu alias o comando ssh para primeiro checar se as chaves foram carregadas e se não, carregue-as primeiro, então execute o comando ssh:

alias ssh='[[ 'ssh-add -l' == "The agent has no identities." ]] && ssh-add; ssh'

Eu ponho isso em minhas .alias e obtenho de .bashrc

    
por 23.05.2018 / 11:41
0

Este é o comportamento padrão do agente SSH interno do GNOME Keyring.

Adicione esses módulos às respectivas seções de sua configuração do PAM em /etc/pam.d/system-login (ou, para GDM, gdm-password ).

auth       optional   pam_gnome_keyring.so only_if=login,gdm-password

e

session    optional   pam_gnome_keyring.so only_if=login,gdm-password auto_start

Isso deve ser suficiente se você usar o GNOME (que inicia o daemon de keyring a partir do XDG Autostart). Se você estiver usando qualquer outro ambiente, adicione isso ao seu .xinitrc (para startx) ou .xprofile (para gdm / lxdm / kdm):

if [ "$GNOME_KEYRING_CONTROL" ]; then
    eval $(gnome-keyring-daemon --start)
fi
    
por 14.02.2013 / 08:00
0

Se você executar ssh-agent sem fornecer uma chave, poderá executar ssh-add na primeira vez que precisar da chave.

    
por 14.02.2013 / 10:00
0

Use gpg-agent . Ele pode manipular chaves SSH além das chaves PGP, pedir sua senha apenas uma vez quando você precisar e usar pinentry para a entrada.

Adicione isso a ~/.xinitrc ou ~/.xprofile :

eval $(gpg-agent --enable-ssh-support --daemon)

Após efetuar logout / login, você precisará emitir ssh-add para solicitar que gpg-agent manipule sua chave SSH. Isso é necessário apenas na primeira vez em que você usar gpg-agent , não após cada login.

    
por 29.03.2014 / 14:23