您如何管理 SSH 密钥?

Oli*_*nde 15 ssh

我有一个有多个用户的服务器,每个用户都有多个授权的 SSH 密钥。是否有任何有效的方法(命令行实用程序?)来跟踪哪个密钥属于谁并快速删除/添加密钥(除了 ssh-copy-id)?

she*_*lic 3

您可以使用每行的最后一部分.ssh/authorized_keys进行注释。从man sshd

协议 1 公钥由以下空格分隔的字段组成:选项、位、指数、模数、注释。协议 2 公钥由:选项、密钥类型、base64 编码密钥、注释组成。

为了回答这个问题,我使用vim但任何编辑器都应该这样做。

我的评论通常包含:

  • 创建日期
  • 物理位置:创建计算机/USB 记忆棒(我不喜欢移动私钥,而是生成/撤销它们并知道它们在哪里)
  • 1-2 个词说明目的(用于哪个登录、用于哪个客户端、用于哪个脚本)


Da1*_*a1T 3

我会查看Monkeysphere项目。它使用 OpenPGP 的信任网络概念来管理 ssh 的authorized_keys 和known_hosts 文件,而不需要更改ssh 客户端或服务器。