Hacer mongodump y mongorestore funcionen con seguridad es bastante problemático.
Tengo mongod v3.4.1 con requireSSL ejecutándose en 192.168.99.100 . Es la dirección IP de la máquina acoplable VirtualBox que se ejecuta en mi Windows. Es solo para probar la causa.
La instancia ya está configurada para usar TLS/SSL tanto en el servidor como en el cliente firmado con la misma CA. Uso la dirección IP para mongod Common Name para permitir la validación del nombre de host. La autenticación ya está habilitada para aceptar mi certificado de cliente.
Así que todo está funcionando. Puedo conectarme a él así:
mongo --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem pero ahora no puedo hacer que mongodump y mongorestore funcionen:
mongodump --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem -d olddb mongorestore --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem -d newdb --dir=dump/olddbAmbos devuelven este error:
2017-01-13T04:28:03.881+0800 Failed: error connecting to db server: no reachable servers, openssl error: Host validation errorHe intentado desactivar el certificado del cliente, usar nombre de usuario/contraseña, pero aún no funcionó. Necesito eliminar el SSL para que funcione.
Eso significa que solo puedo usar preferSSL en producción. No hay forma de omitir SSL en localhost si me quedo con requireSSL .
¿Alguien tiene el mismo error? ¿Es un problema conocido?
Agregue esta opción a la línea de comandos:
--sslAllowInvalidHostnames
Muestra de conexión completa:
mongo --host 192.168.99.100 --username luke --password skywalker --authenticationDatabase admin --ssl --sslCAFile rootCA.pem --sslPEMKeyFile me.pem --sslAllowInvalidHostnames
Primero verifique sus registros en la ruta /var/log/mongodb/mongod.log
También hay una ruta predeterminada de certificados SSL. Y para sistemas basados en Unix dado un certificado SSL ubicado en /etc/ssl/mongodb.pem
Según mi comprensión de este problema, diría que se debe verificar la ruta del certificado. El certificado SSL no se encuentra en su entorno de Windows. Intente agregar la ruta completa del certificado. También mire estohttps://docs.mongodb.com/manual/tutorial/configure-ssl-clients/
Codificación feliz