Saya memiliki masalah yang sama, dan bagi saya itu ternyata menjadi masalah dengan cara saya membuat keystore. Saya perhatikan bahwa Anda menggunakan file yang sama, truststore.ts, untuk truststore dan keystore. Ini bisa bekerja, tapi saya sarankan menggunakan file terpisah untuk menghindari kebingungan.
Saya telah membuat file .pem untuk CA root dan untuk pengguna mongo, dan berhasil menggunakannya untuk terhubung dengan shell mongo. Dari yang saya buat truststore.jks dan keystore.jks.
Pertama, untuk membuat truststore.jks saya menjalankan:
keytool -import -alias root -storepass mypass -keystore truststore.jks -file rootca.pem -noprompt
Untuk keystore.jks Anda memerlukan kunci publik dan pribadi, jadi pertama-tama konversikan file PEM ke format PKCS12, lalu impor ke JKS:
openssl pkcs12 -export -out myuser.pkcs12 -in myuser.pem -password pass:mypass
keytool -importkeystore -srckeystore myuser.pkcs12 -srcstoretype PKCS12 -destkeystore keystore.jks -deststoretype JKS -deststorepass mypass -srcstorepass mypass