certrevoke 命令

用途

certrevoke 撤销用户证书。

语法

certrevoke [-S servicename] { -f file -l label [-p privatekeystore] | tag [user-name]}

描述

certrevoke 命令用来撤销由作为系统域部分的认证中心发出的证书。 -S 选项指定在撤销证书时使用的服务。 在 /usr/lib/security/pki/ca.cfg 中定义可用的服务。 不具有 -S 选项的证书请求可使用本地服务来创建。 如果指定不具有 /usr/lib/security/pki/ ca.cfg 文件中的条目的服务名,将返回错误。

如果选择了 -f 选项,那么将从指定的文件读取证书,如果名称为 "-" ,那么将从 stdin 读取证书。 证书必须为 DER 格式。 每当用户指定 -f 选项,那么也必须指定同公用密钥相匹配的专用密钥的标签。 如果用户未提供专用密钥存储器的位置,将使用缺省位置。

如果未指定 -f 选项,那么调用者必须提供要撤销的证书的标记值和可选的用户名。 如果不使用用户名参数进行调用,certrevoke 命令将使用当前用户的名称。

-l 选项将用于检索与要撤销的证书中的公用密钥匹配的专用密钥。 如果用户无法证明其对于同公用密钥匹配的将要被撤销的专用密钥的所有权,那么 certrevoke 命令将失败。 certrevoke 命令在实际执行证书撤销之前,会向用户询问密码。 如果此命令无法打开当前进程的 /dev/tty,它将失败。

标志

描述
-S 服务名称 指定用哪个服务模块。
-f 文件 指定从文件读取要撤销的证书。
-l 标签 指定与要撤销的证书的专用密钥相关联的标签。
-p 私钥库 指定专用密钥存储器的位置。

退出状态

描述
0 命令成功完成。
>0 发生错误。

安全性

这是一个 setuid 命令。

Root 和属于组安全性的调用者可以撤销任何人的证书。 Root 将使用撤销口令来撤销证书。 撤销口令在 /usr/lib/security/ pki/acct.cfg 文件中指定。

非特权用户只能撤销其自己所有的证书。 他们必须证明自己对与要撤销的证书中的公用密钥相匹配的专用密钥的所有权。

审计

该命令记录下列事件信息:

CERT_Revoke <用户名>

示例

要撤销 Bob 拥有的证书 signcert,请输入:
$ certrevoke signcert bob
要撤销文件 cert.der 中的证书,请输入:
$ certrevoke cert.der

文件

/usr/lib/security/pki/ca.cfg