如何撤销ssh证书(不是ssh身份文件!)

我已经生成了这样的ssh证书:

  1. ssh-keygen -f ca_key #生成一个用作证书的ssh密钥对
  2. 生成主机密钥ssh-keygen -s ca_key -I cert_identifier -h host_key.pub
  3. 在服务器的sshdconfiguration文件中指定主机密钥: TrustedUserCAKeys /etc/ssh/ssh_cert/host_key.pub
  4. 生成本地证书以使用ssh证书访问主机: ssh-keygen -s ca_key -I cert_identifier user_key.pub 。 这应该生成user_key-cert.pub

我现在可以使用ssh -i user_key user@host (使用user_key-cert.pub)login到服务器。 除了禁用TrustedUserCAKeys文件,我怎样才能撤销证书?

sshd_config有一个RevokedKeys文件。 您可以列出多个密钥或证书,每行一个。 在未来,OpenSSH将支持通过证书序列号撤销,这将使更小的撤销列表。

这些可能是你感兴趣的:

CARevocationFile /path/to/bundle.crl该文件包含PEM格式的证书签名者的多个“Certificate Revocation List”(证书撤销列表)(CRL)并列在一起。

CARevocationPath / path / to / CRLs /“哈希目录”与证书签名者的“证书撤销列表”(CRL)。 每个CRL应该存储在名称为[HASH] .r [NUMBER]的单独文件中,其中[HASH]是CRL哈希值,[NUMBER]是从零开始的整数。 哈希是这样的命令的结果:$ openssl crl -in crl_file_name -noout -hash

(前3个谷歌search“ssh ca撤销”…)