O prompt gráfico da chave privada ssh não aparece

9

Recentemente, parei de usar um ambiente de desktop completo no ubuntu 11.10 (cansado da unidade), mas estou tentando recuperar um pouco do ambiente de desktop. Atualmente, estou tentando fazer com que a caixa de diálogo "Desbloquear chave privada" seja exibida quando estou tentando usar uma nova chave ssh. No entanto, atualmente o prompt é exibido apenas na janela do terminal em vez da GUI, o que significa que ele não está usando um agente ssh global e, portanto, preciso inserir a senha da chave várias vezes antes de reiniciar.

Eu acho que o que eu quero é gnome-ssh-askpass e tentei configurar o SSH_ASKPASS, mas isso não funcionou: http://www.linuxquestions.org/questions/linux-software-2/how-to-replace-ssh-askpass -with-ssh-askpass-gnome-843220 /

Eu também tentei o gnome-keyring-daemon como gnome-keyring-daemon --components keyring, pkcs11, ssh, mas isso não ajudou: http://live.gnome.org/GnomeKeyring/Ssh

Jason Axelson
fonte
Você já encontrou uma resposta? Eu adoraria ouvir.
asoundmove
Desculpe, não lembro o que acabei fazendo.
Jason Axelson

Respostas:

3

Eu acho que o que você realmente está procurando é um chaveiro , que é semelhante ao que ssh-reagentvocê mencionou. Uma vez configurado .bashrc, você solicitará a senha das chaves que você pediu para gerenciar somente quando iniciar o primeiro terminal após o login e se certificar de que cada novo terminal conheça o seu ssh-agent.

kynan
fonte
2

Para resolver o problema de digitar a senha várias vezes, digite este comando na primeira vez que você abre um terminal: ssh-add


Não é necessário digitar a senha até você sair.

koni_raid
fonte
Eu realmente não gosto dessa solução porque é irritante fazer isso para cada nova janela do terminal (eu costumo criar muitas janelas). Eu uso atualmente ssh-reagente pastebin.com/HBeUzZhs mas mesmo fazendo isso em cada janela é irritante para que eu possa adicioná-lo ao meu .zshrc
Jason Axelson
1
Não é necessário fazer isso para todas as janelas, uma vez é o suficiente.
koni_raid
1

Deve ser automático se você configurou a tecla ssh nos dois sistemas. Com uma instalação padrão, nunca precisei fazer mais nada.

Caso você não tenha feito isso, eis o seguinte:

Gere a chave (RSA ou DSA). Eu acho que o RSA é mais comum.

ssh-keygen -t rsa

ou

ssh-keygen -t dsa

Transfira a chave para o sistema remoto:

ssh-copy-id *username* @ *hostname*

Se não estiver usando a porta padrão 22: (as aspas são necessárias em torno do argumento)

ssh-copy-id *username* @ *hostname* -p *portnum*"

Se você usa o DSA, precisa usar algo como:

ssh-copy-id -i *path*  *to*   id_dsa

Depois de fazer isso, recebo o diálogo. No passado, eu lembro que se eu rodasse o terminal de uma certa maneira, não daria o diálogo, mas não me lembro dos detalhes. Eu acho que foi quando eu criei uma tecla de atalho para um comando personalizado para definir o diretório devido a um bug em que o terminal continuava aparecendo no diretório raiz, mesmo sabendo o meu diretório inicial.

Marty Fried
fonte
0

Eu adicionei isso como uma nova resposta porque não queria que ela fosse a última na minha outra resposta.

Descobri que, se você iniciar o gnome-terminal, o xterm ou outros terminais (acredito) a partir de uma tecla de atalho personalizada, em vez da tecla de atalho ou menu incorporado, ele se comportará de maneira totalmente diferente para o SSH e não usará o chaveiro. De fato, quando tentei no meu sistema depois de me lembrar desse problema, recebi um erro, onde ele sempre funciona com os métodos padrão.

Marty Fried
fonte
Isso pode estar relacionado, pois estou usando o atalho Super + Enter do Awesome WM para iniciar o terminal.
Jason Axelson 23/02
Você executa o Awesome com Gnome? Nesse caso, talvez você possa fazer com que o SSH trabalhe primeiro com o WM padrão; se isso funcionar, você saberá onde procurar soluções.
Marty Fried
Ele estava trabalhando muito bem antes de eu mudei para AwesomeWM
Jason Axelson
Bem, gostaria de poder ajudar mais. Tentei dar uma olhada no Awesome uma vez, mas nunca cheguei longe e não sentia muita vontade de descobrir isso. Parece que pode ser interessante, mas não sei se ele realmente faz algo que não posso fazer com o Compiz, exceto talvez usando menos recursos.
Marty Fried
0

Se o gui do gnome não solicitar a senha, isso pode significar que gnome-keyring-dnão está sendo executado ou está em um estado inválido. Gostaria de verificar se o processo está em execução:

ps -e | grep gnome-keyring-d

Se for, então mate-o:

killall -9 gnome-keyring-d

Depois reinicie

gnome-keyring-daemon

Depois disso, quando eu ssh <remotehost>recebo o prompt da GUI e a parte de ssh-agentbaixo do capô, fazendo seu trabalho.

Lagrange.el.Ciencia
fonte