📜  总是要求 ssh-add - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:09:55.509000             🧑  作者: Mango

简介

程序员在使用 ssh 连接远程主机时,经常会遇到需要输入密码的情况。为了避免重复输入密码,可以使用 ssh-agent 和 ssh-add 工具来管理本地的 ssh 密钥。而 ssh-add 命令则是在本地添加私钥到 ssh-agent,以便 ssh 连接时无需重复输入密码。

使用场景

  • 连接多台远程主机时,可以将私钥添加到 ssh-agent 中,再进行 ssh 连接,避免多次输入密码。
  • 在使用 git push、ssh 或 scp 命令时,不必每次输入密码,提高使用效率。

使用方法

在终端中执行以下命令:

ssh-add ~/.ssh/id_rsa

其中 ~/.ssh/id_rsa 为私钥文件的路径,可以根据实际情况修改。执行后会要求输入私钥的密码,输入后即可将私钥添加至 ssh-agent 中。若不想在每次开机后手动执行此命令,可以将其添加到 .bashrc 文件中,每次开机会自动执行。

注意事项

  • 添加私钥后,在终端窗口关闭前有效。若想长期有效,可以使用 ssh-add -t <seconds> 指定有效时间。
  • 若私钥已经在 ssh-agent 中,再次执行 ssh-add 会提示 Identity already exists in the agent
  • 私钥添加至 ssh-agent 后,可以使用 ssh-add -l 查看 ssh-agent 中已存在的私钥列表。
  • 若想删除私钥,可以使用 ssh-add -d <key_file>ssh-add -D 删除 ssh-agent 中的所有私钥。