Configurei meu material ssh com a ajuda deste guia e ele funcionava bem (eu poderia executar hg push
sem precisar de uma senha). O que poderia ter acontecido entre então e agora, considerando que ainda estou usando o mesmo diretório inicial.
$ cat .hg/hgrc
[paths]
default = ssh://[email protected]/tshepang/bloog
$ hg push
Enter passphrase for key '/home/wena/.ssh/id_rsa':
pushing to ssh://[email protected]/tshepang/bloog
searching for changes
...
ssh
key-authentication
tshepang
fonte
fonte
eval
você apenas digitarssh-agent
?eval
faz a extração.ssh-add /path/to/key
Uma maneira de resolver isso é com
ssh-agent
essh-add
:Depois disso, a senha é salva para a sessão atual. e não será solicitado novamente.
fonte
Eu uso o Keychain para gerenciar chaves ssh. Ele também está disponível no Debian e, provavelmente, no Ubuntu com
Aqui está a página do pacote de chaves do Debian . Como você pode ver, o projeto não é muito ativo, mas funciona para mim. Também comentei um pouco sobre isso em outra resposta aqui
fonte
Crie (ou edite, se existir) o seguinte arquivo ~ / .ssh / config:
fonte
IgnoreUnknown AddKeysToAgent,UseKeychain
logo acimaUseKeychain yes
.UseKeychain
opção foi adicionada no OpenSSH 7.1p2 (28-02-2016). Talvez você tenha uma versão anterior. openssh.com/txt/release-7.2Por conveniência, o método ideal é uma combinação das respostas de jmtd e Faheem .
Usar
ssh-agent
sozinho significa que uma nova instância dessh-agent
precisa ser criada para cada novo terminal que você abrir.keychain
quando inicializado, solicitará a senha da (s) chave (s) privada (s) e a armazenará. Dessa forma, sua chave privada é protegida por senha, mas você não precisará digitar sua senha repetidamente.O wiki do Arch recomenda inicializar as chaves do
/etc/profile.d/
seu perfil de shell, como.bash_profile
ou.bashrc
. Isso tem uma desvantagem, pois inicializa seu chaveiro assim que você abre um terminal.Uma abordagem mais flexível é combinar
keychain
com umatmux
sessão específica . Então, em.bash_profile
:... e, em seguida, é apenas um caso de iniciar a
tmux
sessão protegida como e quando necessário (iniciado a partir de um keybind):Agora, seu chaveiro será inicializado apenas uma vez quando você iniciar essa
tmux
sessão específica . Enquanto essa sessão persistir, você poderá acessar essasssh
chaves e enviar para seus repositórios remotos.fonte
.profile
- assim você receberá as chaves assim que fizer o login.Você pode usar
sshpass
:Você só precisa adicionar
sshpass -p yourpassphrase
antes de anexar seussh
comando usual .fonte