将私钥密码添加到 ssh-agent

  1. 要将私钥密码添加到 ssh-agent,请输入以下命令:
# exec ssh-agent $SHELL
  1. 下一步是使用ssh-add命令添加密钥。
# ssh-add
Enter passphrase for /root/.ssh/id_rsa: 
Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa)
  1. “ssh-add -l”命令列出代理当前代表的所有身份的指纹。
# ssh-add -l
2048 SHA256:4lYqkqgXmhIxoyMdT+ZfGFCxeMUqTnXLjrRQKjbEC/U /root/.ssh/id_rsa (RSA)
  1. 我们现在可以尝试不使用密码登录远程系统。
$ ssh 192.168.12.10
Last login: Thu Apr 06 11:13:29 2014 from 192.168.12.20

在此示例中,密码仅在当前登录会话中被记住,并在我们注销时被忘记。

生成认证密钥对

使用 ssh-keygen 命令生成身份验证密钥对,如下所述。
在创建密钥对时提供密码短语,例如“密码”。

# ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:4lYqkqgXmhIxoyMdT+ZfGFCxeMUqTnXLjrRQKjbEC/U root@onitroad
The key's randomart image is:
+---[RSA 2048]----+
| o.  .oo.        |
|. o...ooo        |
| o .E=o+ .       |
|+ * B.+ o        |
|.* @ +.*S        |
|=.o.+.++o        |
|o=o...+.         |
|= .. o.          |
|o.               |
+----[SHA256]-----+
如何避免ssh为无密码登录提示密钥密码短语

ssh-agent 程序是一个身份验证代理,用于处理 SSH 私钥的密码。
使用 ssh-add 将密钥添加到 ssh-agent 维护的列表中。
将私钥密码添加到 ssh-agent 后,每次使用公钥连接到远程主机时都不需要输入它。

欢迎 on it road

将公钥复制到远程主机

  1. 将公钥复制到远程系统上的 ~/.ssh/authorized_keys。
# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.12.10
  1. 现在尝试使用“ssh 'root@192.168.12.10'”登录机器,并检查 .ssh/authorized_keys 文件以确保我们没有添加我们不期望的另外密钥。
$ ssh 192.168.12.10
Enter passphrase for key '/root/.ssh/id_rsa': 
Last login: Wed Apr 06 09:03:50 2014 from 192.168.12.20
日期:2020-09-17 00:13:09 来源:oir作者:oir