Po kilku poszukiwaniach wygląda na to, że ten błąd wynika z faktu, że nazwa hosta „CN” była nieprawidłowa.
Od digitalocean :
Za każdym razem, gdy generujesz CSR, zostaniesz poproszony o podanie informacji dotyczących certyfikatu. Ta informacja jest znana jako nazwa wyróżniająca (DN). Ważnym polem w DN jest nazwa pospolita (CN), która powinna być dokładną w pełni kwalifikowaną nazwą domeny (FQDN) hosta, z którym zamierzasz używać certyfikatu.
Również z MongoDB dokumentacji :
Jeśli wdrożenie MongoDB korzysta z protokołu SSL, należy również określić opcję --host. mongo sprawdza, czy nazwa hosta mongod lub mongos, z którym się łączysz, jest zgodna z CN lub SAN certyfikatu --sslPEMKeyFile mongod lub mongos. Jeśli nazwa hosta nie pasuje do CN/SAN, mongo nie nawiąże połączenia.
ROZWIĄZANIE:
Zregenerowałem klucze, zastąpiłem localhost dowolną inną nazwą hosta w CN =<hostname> i wypełniłem przewodnik Wan Bachtiar .
Uruchomienie następującego polecenia po zakończeniu pracy:
$ mongo --port 27017 -u '<_username_>' -p '<_password_>'
--authenticationDatabase "<_my db_>" --ssl --sslPEMKeyFile
/etc/ssl/client.pem --sslCAFile /etc/ssl/ca.pem --host localhost
Uwaga:MongoDB przestrzega ścisłej zasady, kto ma dostęp do jakiej bazy danych, szybki test w powłoce mongo:
zwrócić błąd. Jednak mój użytkownik w rzeczywistości ma dostęp tylko do bazy danych określonej w „<moja baza>”, więc przechodzenie przez wiersze w „<moja baza danych>" działa idealnie.