Я настроил свой ssh с помощью этого руководства , и это работало хорошо (я мог работать hg push
без запроса пароля). Что могло произойти между тем и сейчас, учитывая, что я все еще использую тот же домашний каталог.
$ cat .hg/hgrc
[paths]
default = ssh://hg@bitbucket.org/tshepang/bloog
$ hg push
Enter passphrase for key '/home/wena/.ssh/id_rsa':
pushing to ssh://hg@bitbucket.org/tshepang/bloog
searching for changes
...
ssh
key-authentication
tshepang
источник
источник
eval
вы могли бы просто напечататьssh-agent
?eval
делает извинения.ssh-add /path/to/key
Способ решить это с помощью
ssh-agent
иssh-add
:После этого фраза-пароль сохраняется для текущего сеанса. и больше не будет спрашивать
источник
Я использую Keychain для управления ключами SSH. Он также доступен в Debian и, вероятно, в Ubuntu с
Вот страница пакета цепочки для ключей Debian . Как видите, проект не очень активный, но у меня работает. Я также прокомментировал немного об этом в другом ответе здесь
источник
Создайте (или отредактируйте, если он существует) следующий файл ~ / .ssh / config:
источник
IgnoreUnknown AddKeysToAgent,UseKeychain
чуть вышеUseKeychain yes
.UseKeychain
опция была добавлена в OpenSSH 7.1p2 (2016-02-28). Может быть, у вас есть предыдущая версия. openssh.com/txt/release-7.2Для удобства оптимальный метод - это сочетание ответов jmtd и Faheem .
Использование
ssh-agent
одного означает, чтоssh-agent
для каждого нового терминала, который вы открываете, необходимо создавать новый экземпляр .keychain
при инициализации запросит пароль для закрытого ключа (ключей) и сохранит его. Таким образом, ваш закрытый ключ защищен паролем, но вам не придется вводить пароль снова и снова.Вики Arch рекомендует инициализацию брелки от
/etc/profile.d/
или вашего профиля оболочки, таких как.bash_profile
или.bashrc
. Это имеет недостаток в том, что он инициализирует вашу цепочку для ключей, как только вы открываете терминал.Более гибкий подход заключается в сочетании
keychain
с конкретнымtmux
сеансом. Итак, в.bash_profile
:... и тогда это просто случай запуска защищенного
tmux
сеанса по мере необходимости (запускается из связки ключей):Теперь ваша цепочка для ключей будет инициализирована только один раз, когда вы начнете этот конкретный
tmux
сеанс. Пока этот сеанс сохраняется, вы сможете получить доступ к этимssh
ключам и передать их в удаленные репозитории.источник
.profile
- таким образом вы получите подсказку для ключей, как только войдете в систему.Вы можете использовать
sshpass
:Вам просто нужно добавить,
sshpass -p yourpassphrase
прежде чем добавить вашу обычнуюssh
команду.источник