Efter lidt søgning ser det ud til, at denne fejl skyldes, at værtsnavnet "CN" var forkert.
Fra digitalocean :
Hver gang du genererer en CSR, vil du blive bedt om at give oplysninger om certifikatet. Disse oplysninger er kendt som et Distinguised Name (DN). Et vigtigt felt i DN er Common Name (CN), som skal være det nøjagtige Fully Qualified Domain Name (FQDN) for den vært, som du har til hensigt at bruge certifikatet med.
Også fra MongoDB dokumentation :
Hvis din MongoDB-implementering bruger SSL, skal du også angive --host-indstillingen. mongo verificerer, at værtsnavnet på mongoden eller mongoerne, som du forbinder til, matcher CN eller SAN for mongoden eller mongoernes --sslPEMKeyFile-certifikat. Hvis værtsnavnet ikke matcher CN/SAN, vil mongo ikke kunne oprette forbindelse.
LØSNING:
Jeg regenererede nøglerne, erstattede localhost med ethvert andet værtsnavn i CN =<værtsnavn> og fuldførte guiden af Wan Bachtiar .
Kørsel af følgende kommando efter afslutning virkede:
$ mongo --port 27017 -u '<_username_>' -p '<_password_>'
--authenticationDatabase "<_my db_>" --ssl --sslPEMKeyFile
/etc/ssl/client.pem --sslCAFile /etc/ssl/ca.pem --host localhost
Bemærk:MongoDB følger en streng bestemmelse af, hvem der har adgang til hvilken db, en hurtig test i mongo-skallen:
returnere en fejl. Min bruger har dog faktisk kun adgang til den db, der er angivet i "<min db>", så sløjfe gennem rækkerne i "<min db>" fungerer perfekt.