← 中文资源

简体中文版本

用短期 CA 取代 SSH 公钥

运行 SSH 证书颁发机构,签发短期的用户与主机证书,让服务器信任 CA,使密钥轮换与吊销变得可控。

阅读英文原文

概述

把公钥复制到众多主机的 authorized_keys 且从不清理,是离职管理不可靠的根源。SSH CA 把信任集中到一处,按需签发带主体与短有效期的证书,使撤销与轮换从逐机操作变为集中治理。

关键步骤

  1. 生成 CA 密钥对,尽可能存放于 HSM 或 KMS。
  2. 按需签发带主体与短有效期的用户证书。
  3. 配置服务器信任 CA,而不是逐个公钥。
  4. 签发主机证书,使客户端也经同一 CA 校验服务器。

验证

  • 未持有效证书无法登录。
  • 证书主体与登录用户匹配。
  • 到期后证书自动失效。
  • 客户端可校验主机证书。

注意事项

  • SSH CA 引入签发服务,它必须可用,且本身是高价值目标。
  • 它集中了信任却未取代授权策略,仍需审计谁拥有哪些主体。

适用范围

本条目围绕「用短期 CA 取代 SSH 公钥」给出可复制的步骤、验证方式与常见问题,适合需要按此流程落地的工程团队。执行时请结合自身上下文调整命令与阈值,并在变更前后留存证据,便于后续复核与回滚。

# issue a user cert valid for 8 hours
ssh-keygen -s /ca/ca_key -I alice -n alice,deploy -V +8h alice.pub
# server trusts the CA
TrustedUserCAKeys /etc/ssh/ca.pub