openssl-verify
名稱
openssl-verify - 憑證驗證指令
語法
openssl verify [-help] [-CRLfile filename|uri] [-crl_download] [-show_chain] [-verbose] [-trusted filename|uri] [-untrusted filename|uri] [-vfyopt nm:v] [-nameopt option] [-CAfile file] [-no-CAfile] [-CApath dir] [-no-CApath] [-CAstore uri] [-no-CAstore] [-engine id] [-allow_proxy_certs] [-attime timestamp] [-no_check_time] [-check_ss_sig] [-crl_check] [-crl_check_all] [-explicit_policy] [-extended_crl] [-ignore_critical] [-inhibit_any] [-inhibit_map] [-partial_chain] [-policy arg] [-policy_check] [-policy_print] [-purpose purpose] [-suiteB_128] [-suiteB_128_only] [-suiteB_192] [-trusted_first] [-no_alt_chains] [-use_deltas] [-auth_level num] [-verify_depth num] [-verify_email email] [-verify_hostname hostname] [-verify_ip ip] [-verify_name name] [-x509_strict] [-issuer_checks] [-provider name] [-provider-path path] [-propquery propq] [--] [certificate ...]
說明
此指令會驗證憑證鏈。如果憑證鏈有多個問題,此程式會嘗試顯示所有問題。
選項
- -help
-
列印使用說明訊息。
- -CRLfile filename|uri
-
檔案或 URI 應包含一個或多個 PEM 或 DER 格式的 CRL。此選項可以指定多次,以包含來自多個來源的 CRL。
- -crl_download
-
嘗試透過其 CDP 項目下載憑證的 CRL 資訊。
- -show_chain
-
顯示已建立的憑證鏈資訊(如果成功)。來自不受信任清單的鏈中憑證會標示為「不受信任」。
- -verbose
-
列印正在執行的作業的額外資訊。
- -trusted filename|uri
-
(或多或少)受信任憑證的檔案或 URI。有關信任設定的詳細資訊,請參閱 openssl-verification-options(1)。
此選項可以指定多次,以從多個來源載入憑證。
- -untrusted filename|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 propq
- --
-
表示最後一個選項。此後的所有引數都假設為憑證檔案。如果第一個憑證檔名以 - 開頭,這會很有用。
- 憑證 ...
-
一個或多個要驗證的目標憑證,每個檔案一個。如果沒有提供憑證,此命令將嘗試從標準輸入中讀取單一憑證。
診斷
當驗證操作失敗時,輸出訊息可能會有些難以理解。錯誤訊息的一般形式為
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 取得副本。