Verificar a integridade dos pacotes MongoDB
A equipe de lançamento do MongoDB assina digitalmente todos os pacotes de software para certificar que um determinado pacote do MongoDB é uma versão válida e inalterada do MongoDB. Antes de instalar o MongoDB, você deve validar o pacote usando a assinatura PGP fornecida ou a soma de verificação SHA-256.
As assinaturas PGP fornecem as mais fortes garantias, verificando a autenticidade e a integridade de um arquivo para evitar violações.
As somas de verificação criptográficas validam somente a integridade do arquivo para evitar erros de transmissão de rede.
Verifique os pacotes Linux/macOS
Usar PGP/GPG
O MongoDB assina cada ramificação de lançamento com uma chave PGP diferente. Os arquivos de chave pública para cada ramificação de lançamento estão disponíveis para download noservidor de chaves nos formatos textual .asc
e binário .pub
.
Baixe o arquivo de instalação MongoDB.
Baixe os binários do Centro de Download do MongoDB com base em seu ambiente.
Por exemplo, para baixar a versão 5.0.29
para macOS através da shell, execute este comando:
curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-5.0.29.tgz
Baixe e importe o arquivo de chave.
Se você não baixou e importou a chave pública do MongoDB 5.0, execute estes comandos:
curl -LO https://pgp.mongodb.com/server-5.0.asc gpg --import server-5.0.asc
O PGP deve devolver esta resposta:
gpg: key 4B7C549A058F8B6B: "MongoDB 5.0 Release Signing Key <packaging@mongodb.com>" imported gpg: Total number processed: 1 gpg: imported: 1
Verifique o arquivo de instalação do MongoDB.
Execute este comando:
gpg --verify mongodb-macos-x86_64-5.0.29.tgz.sig mongodb-macos-x86_64-5.0.29.tgz
O GPG deve retornar essa resposta:
gpg: Signature made Wed Jun 5 03:17:20 2019 EDT gpg: using RSA key 4B7C549A058F8B6B gpg: Good signature from "MongoDB 5.0 Release Signing Key <packaging@mongodb.com>" [unknown]
Se o pacote estiver devidamente assinado, mas você não confiar na chave de assinatura em seu trustdb
local, gpg
também retornará a seguinte mensagem :
gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6B
Se você receber a seguinte mensagem de erro, confirme se importou a chave pública correta:
gpg: Can't check signature: public key not found
Usar o SHA-256
Baixe o arquivo de instalação MongoDB.
Baixe os binários do Centro de Download do MongoDB com base em seu ambiente.
Por exemplo, para baixar a versão 5.0.29
para macOS através da shell, digite este comando:
curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-5.0.29.tgz
Verificar Pacotes do Windows
Isso verifica o binário MongoDB em relação à sua chave SHA256.
Baixe o instalador.
Faça o download do instalador do MongoDB .msi
. Por exemplo, para baixar a versão mais recente do MongoDB Community Edition:
➤ Centro de downloads da MongoDB Community
Na lista suspensa Version, selecione
5.0.29 (current release)
.No menu suspenso Platform, selecione Windows.
No menu suspenso Package, selecione msi.
Clique em Download e salve o arquivo em sua pasta Downloads.
Obtenha o arquivo de assinatura pública.
Obtenha o arquivo de assinatura pública para sua versão MongoDB.
Por exemplo, para a assinatura SHA256 da versão mais recente do MongoDB Community Edition:
De https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-5.0.29-signed.msi.sha256, copie o conteúdo.
Salve o conteúdo em um arquivo
mongodb-windows-x86_64-5.0.29-signed.msi.sha256
em sua pasta Downloads.
Compare o arquivo de assinatura com o hash do instalador do MongoDB.
Para comparar o arquivo de assinatura com o hash do binário MongoDB, invoque este script Powershell:
$sigHash = (Get-Content $Env:HomePath\Downloads\mongodb-windows-x86_64-5.0.29-signed.msi.sha256 | Out-String).SubString(0,64).ToUpper(); ` $fileHash = (Get-FileHash $Env:HomePath\Downloads\mongodb-windows-x86_64-5.0.29-signed.msi).Hash.Trim(); ` echo $sigHash; echo $fileHash; ` $sigHash -eq $fileHash
C777DF7816BB8C9A760FDEA782113949408B6F39D72BE29A2551FA51E2FE0473 C777DF7816BB8C9A760FDEA782113949408B6F39D72BE29A2551FA51E2FE0473 True
O comando gera três linhas:
Um hash
SHA256
que você baixou diretamente do MongoDB.Um hash
SHA256
calculado do binário MongoDB que você baixou do MongoDB.Um resultado
True
ouFalse
, dependendo da correspondência dos hashes.
Se os hashes corresponderem, o binário do MongoDB será verificado.