openssl-verify
名称
openssl-verify - 证书验证命令
语法
openssl verify [-help] [-CRLfile 文件名|uri] [-crl_download] [-show_chain] [-verbose] [-trusted 文件名|uri] [-untrusted 文件名|uri] [-vfyopt nm:v] [-nameopt 选项] [-CAfile 文件] [-no-CAfile] [-CApath 目录] [-no-CApath] [-CAstore uri] [-no-CAstore] [-engine id] [-allow_proxy_certs] [-attime 时间戳] [-no_check_time] [-check_ss_sig] [-crl_check] [-crl_check_all] [-explicit_policy] [-extended_crl] [-ignore_critical] [-inhibit_any] [-inhibit_map] [-partial_chain] [-policy 参数] [-policy_check] [-policy_print] [-purpose 用途] [-suiteB_128] [-suiteB_128_only] [-suiteB_192] [-trusted_first] [-no_alt_chains] [-use_deltas] [-auth_level 数字] [-verify_depth 数字] [-verify_email 邮箱] [-verify_hostname 主机名] [-verify_ip IP地址] [-verify_name 名称] [-x509_strict] [-issuer_checks] [-provider 名称] [-provider-path 路径] [-propquery 属性查询] [--] [证书 ...]
描述
此命令验证证书链。如果证书链存在多个问题,此程序会尝试显示所有问题。
选项
- -help
-
打印用法信息。
- -CRLfile 文件名|uri
-
文件或URI应包含一个或多个以PEM或DER格式表示的CRL。此选项可以指定多次以包含来自多个来源的CRL。
- -crl_download
-
尝试通过证书的CDP条目下载CRL信息。
- -show_chain
-
显示已构建的证书链信息(如果成功)。来自不受信任列表的链中的证书将被标记为“不受信任”。
- -verbose
-
打印有关正在执行的操作的额外信息。
- -trusted 文件名|uri
-
一个(或多或少)受信任证书的文件或URI。有关信任设置的更多信息,请参阅openssl-verification-options(1)。
此选项可以指定多次以从多个来源加载证书。
- -untrusted 文件名|uri
-
用于构建链的不可信证书的文件或URI。此选项可以指定多次以从多个来源加载证书。
- -vfyopt nm:v
-
在验证操作期间将选项传递给签名算法。这些选项的名称和值是特定于算法的。
- -nameopt 选项
-
这指定了主题或发行者名称的显示方式。有关详细信息,请参阅openssl-namedisplay-options(1)。
- -engine id
-
参见openssl(1)中的“引擎选项”。此选项已弃用。
要加载需要引擎支持的证书或CRL,请在任何-trusted、-untrusted或-CRLfile选项之前指定-engine选项。
- -CAfile 文件, -no-CAfile, -CApath 目录, -no-CApath, -CAstore uri, -no-CAstore
-
有关详细信息,请参阅openssl-verification-options(1)中的“受信任证书选项”。
- -allow_proxy_certs, -attime, -no_check_time, -check_ss_sig, -crl_check, -crl_check_all, -explicit_policy, -extended_crl, -ignore_critical, -inhibit_any, -inhibit_map, -no_alt_chains, -partial_chain, -policy, -policy_check, -policy_print, -purpose, -suiteB_128, -suiteB_128_only, -suiteB_192, -trusted_first, -use_deltas, -auth_level, -verify_depth, -verify_email, -verify_hostname, -verify_ip, -verify_name, -x509_strict -issuer_checks
-
设置证书链验证的各种选项。有关详细信息,请参阅openssl-verification-options(1)中的“验证选项”。
- -provider 名称
- -provider-path 路径
- -propquery 属性查询
- --
-
指示最后一个选项。此选项之后的所有参数都假定为证书文件。如果第一个证书文件名以-开头,则此选项很有用。
- 证书 ...
-
一个或多个要验证的目标证书,每个文件一个。如果没有给出证书,此命令将尝试从标准输入读取单个证书。
诊断
当验证操作失败时,输出消息可能有些难以理解。错误消息的一般形式是
server.pem: /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Test CA (1024 bit)
error 24 at 1 depth lookup:invalid CA certificate
第一行包含正在验证的证书的名称,后跟证书的主题名称。第二行包含错误号和深度。深度是在检测到问题时正在验证的证书的编号,从目标(“叶子”)证书本身的0开始,然后是签署目标证书的CA的1,依此类推。最后,显示错误号的文本版本。
错误代码和消息的列表可以在X509_STORE_CTX_get_error(3)中找到;完整列表在头文件<openssl/x509_vfy.h>中定义。
为了确定证书链的所有问题,此命令会忽略许多错误。
参见
openssl-verification-options(1)、openssl-x509(1)、ossl_store-file(7)
历史
-show_chain选项在OpenSSL 1.1.0中添加。
-engine选项在OpenSSL 3.0中已弃用。
版权
版权所有 2000-2021 OpenSSL 项目作者。保留所有权利。
根据 Apache 许可证 2.0(“许可证”)许可。除非符合许可证,否则您不得使用此文件。您可以在源代码分发中的LICENSE文件中或https://www.openssl.org/source/license.html中获取副本。