Linux之ssh-agent命令
【摘要】 ssh密钥管理器,ssh-agent命令是一种控制用来保存公钥身份验证所使用的私钥的程序。ssh-agent在X会话或登录会话之初启动,所有其他窗口或程序则以客户端程序的身份启动并加入到ssh-agent程序中。通过使用环境变量,可定位代理并在登录到其他使用ssh机器上时使用代理自动进行身份验证。其实ssh-agent就是一个密钥管理器,运行ssh-agent以后,使用ssh-add将私钥交...
ssh密钥管理器,ssh-agent命令是一种控制用来保存公钥身份验证所使用的私钥的程序。ssh-agent在X会话或登录会话之初启动,所有其他窗口或程序则以客户端程序的身份启动并加入到ssh-agent程序中。通过使用环境变量,可定位代理并在登录到其他使用ssh机器上时使用代理自动进行身份验证。
其实ssh-agent就是一个密钥管理器,运行ssh-agent以后,使用ssh-add将私钥交给ssh-agent保管,其他程序需要身份验证的时候可以将验证申请交给ssh-agent来完成整个认证过程。
我们认为你正在用ssh key做权限认证。为了避免你在启动ssh agent时重复输入密码,你可以输下面两个命令
ssh-agent bash
:启动ssh agent,并把bash挂到上面
ssh-add .ssh/id_rsa
:添加私钥并由ssh agent保管,这样下次就不需要再输入密码了
命令语法
ssh-agent [-c | -s] [-d] [-a bind_address] [-t life] [command [arg ...]]
ssh-agent [-c | -s] -k
命令选项
- -a bind_address:bind the agent to the UNIX-domain socket bind_address.
- -c:生成C-shell风格的命令输出。
- -d:调试模式。
- -k:把ssh-agent进程杀掉。
- -s:生成Bourne shell 风格的命令输出。
- -t life:设置默认值添加到代理人的身份最大寿命。
运行ssh-agent
> ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-lWA15nOUhcYG/agent.26310; export SSH_AUTH_SOCK;
SSH_AGENT_PID=26315; export SSH_AGENT_PID;
echo Agent pid 26315;
运行ssh-agent,它会打印出来它使用的环境和变量。
使用-d参数,运行调试模式
> ssh-agent -d
使用-k参数杀掉ssh-agent进程
> ssh-agent -k
ssh-agent
的使用场景
使用不同的密钥连接到不同的主机时,需要手动指定对应的密钥。ssh-agent 可以帮助我们选择对应的密钥进行认证,不用手动指定密钥即可进行连接。
当私钥设置了密码,我们又需要频繁的使用私钥进行认证时,ssh-agent 可以帮助我们免去重复的输入密码的操作。
原文链接:https://rumenz.com/rumenbiji/linux-ssh-agent.html
微信公众号:入门小站
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)