git - 在使用 Git 或 SSH 复制/远程登录等时,我们应该重复使用相同的 SSH key 还是每次都创建新 key ?

标签 git ssh heroku ssh-keys

随着越来越多地使用 Git 或 SSH 复制或登录,我们可以只使用 1 对公钥和私钥,或者我们可能可以在不同的机器上创建不同的对,例如 1 对笔记本电脑和 1 对桌面电脑, 1 个用于虚拟机。

我们应该使用一对还是应该使用多对?

如果我们只使用 1 对,那么我们需要将 2 个文件(公共(public)和私有(private))复制到其他机器上,我们需要确保我们不通过 FTP 进行,否则信息可能会泄露对公众?

即使我们使用 SFTP,我们也需要在我们要传输的机器上设置服务器......或者有更好的方法吗?

一般来说,大多数程序和系统是否允许用户拥有多个 SSH key ?例如,当我们使用 GitHub 帐户或 Heroku 时,系统是否有约定允许用户使用多个 SSH key 来识别同一个人?

我认为如果我们使用多个 key ,可能会出现一个小问题,如果我们在 Ubuntu 10.04 上创建这样的 key ,然后稍后安装 Ubuntu 10.10 并创建新 key ,那么很快,我们可能会拥有我们没有的 key '不知道它们来自哪里,例如来自 Ubuntu 8.04 的一对,我们不知道。

最佳答案

SSH key 的规则很简单:

  • 为您打算验证的每台机器生成一个新的公钥/私钥对。
  • 永远不要将私钥复制到另一台机器上,无论是通过网络、可移动媒体还是您能想到的任何其他方法。
  • 切勿与任何人分享密码或密码短语,也切勿将其写下来。
  • 如果您怀疑某个 key 已被泄露,请生成一个新 key 。唯一的成本是更新具有公钥的服务。

关于git - 在使用 Git 或 SSH 复制/远程登录等时,我们应该重复使用相同的 SSH key 还是每次都创建新 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3902911/

相关文章:

git - 找不到文件 packages.config

git - 如何忽略 git status 中的 .gitignore 文件?

GitHub 创建对新分支的 pull 请求?

python - 需要帮助调试由 "Internal server error"引起的 heroku 应用程序上的 "JSON serializable"

node.js - 如果应用程序崩溃,heroku 是否会重新启动 NodeJS 服务器

git - 从 Kubernetes secret 获取凭据时的 go-git 基本身份验证问题

克隆远程 Git 仓库时的 git-upload-pack : command not found,

bash - 自动化 SSH 和运行命令

git - AWS CodeCommit - 可以克隆/pull 但不能推送 (SSH)

ruby - Heroku 进程以状态 0 退出,但其测功机仍为 "crashes"