Red Hat Training

A Red Hat training course is available for RHEL 8

5.8. 通过 ssh-agent ,使用 SSH 密钥连接到远程机器

为了避免在每次发起 SSH 连接时输入密语,您可以使用 ssh-agent 工具缓存 SSH 私钥。确保私钥和密语安全。

先决条件

  • 您有一个运行 SSH 守护进程的远程主机,并且可通过网络访问。
  • 您知道登录到远程主机的 IP 地址或者主机名以及凭证。
  • 您已用密码生成了 SSH 密钥对,并将公钥传送到远程机器。

如需更多信息,请参阅 生成 SSH 密钥对

流程

  1. 可选:验证您是否可以使用密钥来对远程主机进行身份验证:

    1. 使用 SSH 连接到远程主机:

      $ ssh example.user1@198.51.100.1 hostname
    2. 输入您在创建密钥时设定的密码短语以授予对私钥的访问权限。

      $ ssh example.user1@198.51.100.1 hostname
       host.example.com
  2. 启动 ssh-agent

    $ eval $(ssh-agent)
    Agent pid 20062
  3. 将密钥添加到 ssh-agent

    $ ssh-add ~/.ssh/id_rsa
    Enter passphrase for ~/.ssh/id_rsa:
    Identity added: ~/.ssh/id_rsa (example.user0@198.51.100.12)

验证

  • 可选:使用 SSH 登录到主机机器。

    $ ssh example.user1@198.51.100.1
    
    Last login: Mon Sep 14 12:56:37 2020

    请注意您不必输入密码短语。