建立于: 6年前 ( 更新: 6年前 )
在ssh的核心包中的进程诸如,scp、ssh、ssh-add、ssh-agent、sshd及ssh-keygen
本文主要简单描述ssh-agent及ssh-add使用情境。
在开始前先来看看这些命令用途的简介:
我们使用
非常简单,只要在命令行输入命令
完成后,我们就可以透过
未使用任何参数时,
密钥有密码时,会要求输入密钥的密码,如果提供了多个密钥档,他会记住最后一组输入的密码。
用途一(记忆密码):
所以我们可以透过
这样我们连线到远程主机时就不需打复杂的密钥密码了。
我们可以透过-K,将密码记忆到钥匙圈中。(在Mac OS上重开机就会忘了ssh-agent密钥)
用途二 (转发验证代员连线): 噢太文言文了,说白一点,就是跨主机验证。
Client---->ServerA---->ServerB。
举例,Server A无法登录Server B,我们Client是能登A及B的。
我们可以透过
我们能透过,如下的命令
不过每次激活这个功能好像很麻烦,所以我们也可以将他添加到自己的ssh组态档中。
~/.ssh/config
本文主要简单描述ssh-agent及ssh-add使用情境。
在开始前先来看看这些命令用途的简介:
scp | Secure Copy主机间进行加密安全的拷贝。 |
ssh | Secure Shell客户端,用来连接伺服器运行系统命令,可以视为有加密的telnet。 |
ssh-add | 把密钥识别加到验证代理员。 |
ssh-agent | 进行公钥验证时,让远程主机可以访问保存您的私人钥匙。 |
sshd | 默认会聆听通信埠22的Secure Shell伺服器。 |
ssh-keygen | ssh的密钥生成器,可以生成公私钥对,进行远程主机的公钥验证。 |
ssh-add
前,先来看看验证代理员(ssh-agent -- authentication agent),如何启动他?非常简单,只要在命令行输入命令
ssh-agent
即可。完成后,我们就可以透过
ssh-add
命令,将密钥添加到 ssh-agent
(验证代理员)。未使用任何参数时,
ssh-add
会去新建~/.ssh/id_rsa, ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 and ~/.ssh/identity.密钥有密码时,会要求输入密钥的密码,如果提供了多个密钥档,他会记住最后一组输入的密码。
用途一(记忆密码):
所以我们可以透过
ssh-add
把密码添加到 ssh-agent
来记忆我们的密钥密码,这样我们连线到远程主机时就不需打复杂的密钥密码了。
我们可以透过-K,将密码记忆到钥匙圈中。(在Mac OS上重开机就会忘了ssh-agent密钥)
用途二 (转发验证代员连线): 噢太文言文了,说白一点,就是跨主机验证。
Client---->ServerA---->ServerB。
举例,Server A无法登录Server B,我们Client是能登A及B的。
我们可以透过
ssh -A ServerA
,因为有了-A参数,启动了转发(forwarding)功能,这样就连到ServerA再透过转发代理,使用我们的密钥连到ServerB了。我们能透过,如下的命令
ssh-add -L
查看新建到ssh-agent的公钥。不过每次激活这个功能好像很麻烦,所以我们也可以将他添加到自己的ssh组态档中。
~/.ssh/config
Host ServerA
HostName 35.194.181.21
ForwardAgent yes
No Comment
Post your comment