[英]Mongodb Java driver won't connect via TLS
我試圖通過TLS連接到我的mongoDb。 因此,我使用以下參數啟動了守護程序:
mongod --sslMode requireSSL --sslPEMKeyFile <pem> --sslCAFile <ca>
我將rootCA導入到Java密鑰庫中,並通過Java客戶端應用程序(Springboot)中的JVM Arguments對其進行設置。 我還通過JVM Argument將TLS設置為1.1版。
但是我得到以下錯誤:
com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting to
connect. Client view of cluster state is {type=Unknown, servers=
[{address=10.0.2.103:27017, type=Unknown, state=Connecting, exception=
{com.mongodb.MongoException$Network: Exception opening the socket}, caused
by {javax.net.ssl.SSLHandshakeException: Remote host closed connection
during handshake}, caused by {java.io.EOFException: SSL peer shut down
incorrectly}}]
我的證書是使用我自己的CA簽名的。
我在線閱讀了有關客戶端證書的內容,但是CA是否足以驗證服務器具有有效的證書?
編輯:通過安裝具有SSL支持的mongodb解決了該問題。 現在,我遇到了另一個問題。 我已經將我的ca.pem導入了我的信任庫,並將我的client.pem導入了我的密鑰庫(並在我的springboot屬性中進行了設置)。 但是mongodb服務器始終聲明:“對等方未提供SSL證書”。 為什么會這樣?
我通過安裝另一個包含SSL支持的MongoDB版本解決了我的問題。 我沒有的那個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.