O servidor MongoDB oferece suporte ao listening para conexões criptografadas e não criptografadas TLS/SSL na mesma porta TCP. Isso permite atualizações de clusters MongoDB para usar conexões criptografadas TLS/SSL.
Observação
O MongoDB desabilita o suporte para criptografia TLS 1.0 em sistemas em que o TLS 1.1+ está disponÃvel.
Procedimento (usando configurações tls)
Importante
Uma descrição completa de certificados TLS/SSL, PKI (Public Key Infrastructure) e autoridade de certificação está além do escopo deste documento. Esta página pressupõe conhecimento prévio de TLS/SSL, bem como acesso a certificados válidos.
Para atualizar de um cluster MongoDB usando nenhuma criptografia TLS/SSL para um usando apenas criptografia TLS/SSL, use o seguinte processo de atualização contÃnua.
Observação
The procedures in this section use the tls settings/option. For procedures using their ssl aliases, see Procedure (Using ssl Settings).
As configurações/opções tls oferecem funcionalidade idêntica à das opções ssl, pois o MongoDB sempre foi compatÃvel com o TLS 1.0 e posterior.
For each node of a cluster, start the node with the command-line option
--tlsModeor the configuration file optionnet.tls.modeset toallowTLS. TheallowTLSsetting allows the node to accept both TLS/SSL and non-TLS/non-SSL incoming connections. Its connections to other servers do not use TLS/SSL. Include other TLS/SSL options [1] as well as any other options that are required for your specific configuration.Observação
mongodemongosse vinculam ao localhost por padrão. Se os membros do sistema forem executados em hosts diferentes, ou se você desejar que os clientes remotos se conectem ao sistema, especifique--bind_ipounet.bindIp.Por exemplo:
mongod --replSet <name> --tlsMode allowTLS --tlsCertificateKeyFile <TLS/SSL certificate and key file> --tlsCAFile <path to root CA PEM file> <additional options> Para especificar estas opções no arquivo de configuração, inclua as seguintes configurações no arquivo:
net: tls: mode: allowTLS certificateKeyFile: <path to TLS/SSL certificate and key PEM file> CAFile: <path to root CA PEM file> Atualize todos os nós do cluster para essas configurações.
Mude todos os clientes para usar TLS/SSL. Consulte Conecte-se a um conjunto de réplicas habilitado para TLS.
For each node of a cluster, use the
setParametercommand to update thetlsModetopreferTLS. [2] WithpreferTLSas itsnet.tls.mode, the node accepts both TLS/SSL and non-TLS/non-SSL incoming connections, and its connections to other servers use TLS/SSL. For example:db.adminCommand( { setParameter: 1, tlsMode: "preferTLS" } ) Atualize todos os nós do cluster para essas configurações.
Neste ponto, todas as conexões devem estar usando TLS/SSL.
For each node of the cluster, use the
setParametercommand to update thetlsModetorequireTLS. [2] WithrequireTLSas itsnet.tls.mode, the node will reject any non-TLS/non-SSL connections. For example:db.adminCommand( { setParameter: 1, tlsMode: "requireTLS" } ) Após a atualização de todos os nós, edite o arquivo de configuração com as configurações TLS/SSL apropriadas para garantir que, após a reinicialização subsequente, o cluster use TLS/SSL.
Procedimento (usando configurações ssl)
Importante
Uma descrição completa de certificados TLS/SSL, PKI (Public Key Infrastructure) e autoridade de certificação está além do escopo deste documento. Esta página pressupõe conhecimento prévio de TLS/SSL, bem como acesso a certificados válidos.
Para atualizar de um cluster MongoDB usando nenhuma criptografia TLS/SSL para um usando apenas criptografia TLS/SSL, use o seguinte processo de atualização contÃnua.
Observação
The procedures in this section use the ssl settings/option. For procedures using their tls aliases, see Upgrade a Cluster to Use TLS/SSL.
As configurações/opções tls oferecem funcionalidade idêntica à das opções ssl, pois o MongoDB sempre foi compatÃvel com o TLS 1.0 e posterior.
For each node of a cluster, start the node with the command-line option
--sslModeor the configuration file optionnet.ssl.modeset toallowSSL. TheallowSSLsetting allows the node to accept both TLS/SSL and non-TLS/non-SSL incoming connections. Its connections to other servers do not use TLS/SSL. Include other TLS/SSL options [1] as well as any other options that are required for your specific configuration.Observação
mongodemongosse vinculam ao localhost por padrão. Se os membros do sistema forem executados em hosts diferentes, ou se você desejar que os clientes remotos se conectem ao sistema, especifique--bind_ipounet.bindIp.Por exemplo:
mongod --replSet <name> --sslMode allowSSL --sslPEMKeyFile <path to TLS/SSL Certificate and key PEM file> --sslCAFile <path to root CA PEM file> <additional options> Para especificar estas opções no arquivo de configuração, inclua as seguintes configurações no arquivo:
net: ssl: mode: <allowSSL> PEMKeyFile: <path to TLS/SSL certificate and key PEM file> CAFile: <path to root CA PEM file> Atualize todos os nós do cluster para essas configurações.
Mude todos os clientes para usar TLS/SSL. Consulte Conecte-se a um conjunto de réplicas habilitado para TLS.
For each node of a cluster, use the
setParametercommand to update thesslModetopreferSSL. [2] WithpreferSSLas itsnet.ssl.mode, the node accepts both TLS/SSL and non-TLS/non-SSL incoming connections, and its connections to other servers use TLS/SSL. For example:db.adminCommand( { setParameter: 1, sslMode: "preferSSL" } ) Atualize todos os nós do cluster para essas configurações.
Neste ponto, todas as conexões devem estar usando TLS/SSL.
For each node of the cluster, use the
setParametercommand to update thesslModetorequireSSL. [2] WithrequireSSLas itsnet.ssl.mode, the node rejects any non-TLS/non-SSL connections. For example:db.adminCommand( { setParameter: 1, sslMode: "requireSSL" } ) Após a atualização de todos os nós, edite o arquivo de configuração com as configurações TLS/SSL apropriadas para garantir que, após a reinicialização subsequente, o cluster use TLS/SSL.
| [2] | (1, 2, 3, 4) As an alternative to using the setParameter command, you can also restart the nodes with the appropriate TLS/SSL options and values. |
| [1] | (1, 2) Você pode usar armazenamentos de certificados SSL do sistema para Windows e macOS. Para usar o armazenamento de certificados SSL do sistema, use:
Ao usar o armazenamento de certificados SSL do sistema, o OCSP (Online Certificate Status Protocol) é usado para validar o status de revogação dos certificados. |