我想使用身份验证密钥对来使用ssh passwordless-login。
我添加了
eval `ssh-agent -s`
ssh-add ~/.ssh/my_p_key
到~/.profile
。 这不起作用。如果我使用~/.bashrc
它可以正常工作。
为什么每次调用bash而不是每次用户登录时都必须设置它。我找不到任何解释。
有没有更好的方法来配置它?
答案 0 :(得分:1)
下面的答案解决了我的问题,对我而言,这看起来是一个非常合法的解决方案。
答案 1 :(得分:0)
eval `ssh-agent -s`
设置流程的环境。如果您使用的是窗口管理器,例如在Linux机器上,窗口管理器可能有可能运行一个程序,例如,你的ssh-agent在启动时将环境传递到那里启动的所有进程,所以你的所有终端窗口/选项卡都允许你进行无密码登录。确切的位置,配置和行为取决于使用的桌面/ wm。
如果您使用的是非窗口系统,那么您可能会查看ssh-agent调用的输出并将其粘贴到您打开的所有shell中,但这可能与输入密码一样复杂。输出可能会设置类似
SSH_AGENT_PID=4041
SSH_AUTH_SOCK=/tmp/ssh-WZANnlaFiaBt/agent.3966
您可以在设置这些
的所有地方访问pw-less答案 2 :(得分:0)
仅将“ IdentityFile〜/ .ssh / config”添加到我的.ssh / config对我不起作用。我还必须在该文件中添加“ AddKeysToAgent yes”。
我认为这行是必要的,因为gnome-Keyring会加载我的密钥,但是它存在一个错误,无法将其转发到我所使用的计算机上。