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/…
微信公众号: 入门小站