每当我输入密码时,例如git
,,ssh
我希望它被记住。
所以我已经配置了ssh-agent
我还添加AddKeysToAgent yes
到~/.ssh/config
如果我ssh-add
现在跑步,一切都会好起来的。但没有它,它就不起作用(我每次都必须输入密码)
我知道我可以添加ssh-add
到初始化脚本中,但这不是我想要的,因为我不需要每天都需要它。我以为这就是目的AddKeysToAgent yes
?
我ssh-agent
从一个 systemd 服务开始SSH_AUTH_SOCK=$XDG_RUNTIME_DIR/ssh-agent.socket
。
为了进行测试,我删除了该服务和 SSH_AUTH_SOCK。重新启动并运行eval $(ssh-agent)
,然后登录ssh pi@my-ip
输入密码并再次执行。仍然是密码提示。所以这似乎不是systemd的问题。
移动AddKeysToAgent yes
到第一行用 eval 修复了它。
好的,所以问题是~/.ssh/config
. 它是
Host awesomehost.tld
User user
IdentityFile ~/.ssh/id_rsa
AddKeysToAgent yes
Run Code Online (Sandbox Code Playgroud)
它必须是
Host awesomehost.tld
User user
IdentityFile ~/.ssh/id_rsa
Host *
AddKeysToAgent yes
Run Code Online (Sandbox Code Playgroud)
或者
AddKeysToAgent yes
Host awesomehost.tld
User user
IdentityFile ~/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)