6.9.5. 建立 ssh 代理

用密码来保护你的 SSH 认证私钥是安全的。如果密码没有设置,使用 “ssh-keygen -p“ 来设置。

把你的公钥 (比如:”~/.ssh/id_rsa.pub“) 放到远程主机的”~/.ssh/authorized_keys“,这个远程主机使用上面描述的基于密码的连接方式。

  1. $ ssh-agent bash
  2. $ ssh-add ~/.ssh/id_rsa
  3. Enter passphrase for /home/<username>/.ssh/id_rsa:
  4. Identity added: /home/<username>/.ssh/id_rsa (/home/<username>/.ssh/id_rsa)

从这里执行接下来的命令,就不再需要密码。

  1. $ scp foo <username>@remote.host:foo

按 ^D 来终结 ssh 代理会话。

对于 X 服务端,通常的 Debian 启动脚本会作为父进程执行 ssh-agent。所以你只需要执行一次 ssh-add。进一步的信息,请阅读 ssh-agent(1) 和 ssh-add(1).