當我使用的OpenSSL API來驗證服務器證書(自簽名),我得到以下錯誤:在1個深度查找Openssl的:錯誤「自我在證書鏈簽署證書」
錯誤19:自簽名證書中證書 鏈
作爲每OpenSSL的documentation,該錯誤(19)是
「X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN:自SIGNE d證書 證書鏈 - 可以使用 不受信任的證書構建證書鏈,但在本地找不到根。「
爲什麼會發生此錯誤?我的服務器證書有問題嗎?
當我使用的OpenSSL API來驗證服務器證書(自簽名),我得到以下錯誤:在1個深度查找Openssl的:錯誤「自我在證書鏈簽署證書」
錯誤19:自簽名證書中證書 鏈
作爲每OpenSSL的documentation,該錯誤(19)是
「X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN:自SIGNE d證書 證書鏈 - 可以使用 不受信任的證書構建證書鏈,但在本地找不到根。「
爲什麼會發生此錯誤?我的服務器證書有問題嗎?
您有一個自簽名證書,所以它默認爲不可信,這就是OpenSSL抱怨的原因。此警告實際上是一件好事,因爲這種情況也可能由於man-in-the-middle attack而上升。
要解決此問題,您需要將其安裝爲受信任的服務器。如果它由不受信任的CA簽署,則您還必須安裝該CA的證書。
查看關於安裝自簽名證書的this link。
這裏是一個班輪驗證證書鏈:
openssl verify -verbose -x509_strict -CAfile ca.pem cert_chain.pem
這並不需要在任何地方安裝CA。