2011-08-26 21 views
3

我想通過使用openssl s_client來測試我的證書和服務器證書是否正常工作。s_client如何呈現客戶端證書鏈

openssl s_client -cert mycert -key mykey -CAfile CA.cert -connect host:name 

但是這個工具只允許你提供我的證書,而不是整個鏈。如果服務器只信任根CA,而不是所有中間CA,則該命令將失敗。

是否有任何身體知道如何解決這個問題,即如何展示整個客戶端證書鏈的服務器

此外,是否有可以測試用java密鑰庫和信任的SSL連接的任何命令?

回答

4

如果您使用PEM文件,-CAfile實際上可以包含多個證書。只需複製並粘貼根證書以及該文件中的所有中間證書,然後s_client就會正確顯示整個鏈,而不僅僅是最終實體證書。

我不知道使用Java測試SSL連接的命令行工具,但使用Http URLConnection和自定義SSLSocketFactory編寫自己的應用程序應該不那麼困難。

+0

Yeap,你是對的,我在openssl doc中看到了解釋。謝謝! – Alfred

-2

您可以使用來自here的SSH安全Shell作爲測試與Java的SSL連接的命令行工具。