ssh-agent,ssh-add 命令
centos 6.9 下测试:
ssh-agent是一个密钥管理器,运行ssh-agent以后,使用ssh-add将私钥交给ssh-agent保管。
eval `ssh-agent -s`
ssh-add
这两条命令是把私钥交给agent 管理。
如果本机A 192.168.1.2 可以通过秘钥免密码登录B(192.168.1.3),C(192.168.1.4)两个服务器,但B,C无法免密码登录,那么如果在A机器,执行这两条命令,把A机器秘钥交给ssh-agent 管理,那么从A登录B 用
ssh -A root@192.168.1.3,在B机器的/tmp 目录下就会看到/tmp/ssh-xxxxxxxxx/agent.xxxxx 类似这种形式的文件生成,然后你就可以在B机器免密码登录C机器了。
如果你登录C机器的时候也带了 -A 这个参数,那么你还可以从C 机器免密码登录另一台可以免密码从A机器直接登录的机器。
为了不必每次都打这两个命令,可以在~/.bashrc 文件中加入
eval `ssh-agent -s` >> /dev/null ssh-add >>/dev/null
这两行命令,保证开机默认执行。