Ssl

使用 OpenSSL 從遠端伺服器獲取 SSL 證書

  • June 3, 2020

我遇到了一個奇怪的問題,我無法繞過它。我正在嘗試從命令行使用 OpenSSL 驗證 SSL 證書:

openssl s_client -showcerts -connect server.org:443

但是,無論我以這種方式呼叫此伺服器上的哪個域,它始終提供該伺服器上第一個(按字母順序)域的證書,即使該特定域確實有自己的證書。此外,當我在瀏覽器中呼叫任何這些 url 時,一切正常

知道我做錯了什麼嗎?

問候, 拉德克

您可能使用的是舊版本的 openssl,即 1.0.2 或更低版本。有了這些,您必須顯式使用該-servername選項,以便使用 SNI 擴展在 TLS 握手中宣布預期的主機名:

openssl s_client -connect example.com:443 -servername example.com

對於更高版本的 openssl,此選項預設啟用。

引用自:https://serverfault.com/questions/1019807