El equipo de lanzamiento de MongoDB firma digitalmente todos los paquetes de software para certificar que un paquete de MongoDB en particular es un lanzamiento válido y sin modificaciones. Antes de instalar MongoDB, debes validar el paquete usando la firma PGP proporcionada o la suma de verificación SHA-256.
Las firmas PGP proporcionan las garantías más fuertes al comprobar tanto la autenticidad como la integridad de un archivo para evitar manipulaciones.
Las sumas de comprobación criptográficas solo validan la integridad del archivo para evitar errores de transmisión de red.
Verificar paquetes de Linux/macOS
Utiliza PGP/GPG
MongoDB firma cada rama de lanzamiento con una clave PGP diferente. Los archivos de clave pública para cada rama de lanzamiento están disponibles para su descarga desde el servidor de claves en formato textual .asc y formatos binarios .pub.
Descargue el archivo de instalación de MongoDB.
Descarga los binarios desde el Centro de descargas de MongoDB/span> según tu entorno.
Por ejemplo, para descargar la versión 6.0.26 para macOS desde la shell, ejecuta este comando:
curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-6.0.26.tgz
Descarga y luego importa el archivo clave.
Si no ha descargado e importado la clave pública de MongoDB 6.0, ejecute estos comandos:
curl -LO https://pgp.mongodb.com/server-6.0.26.asc gpg --import server-6.0.26.asc
PGP debería devolver esta respuesta:
gpg: key 4B7C549A058F8B6B: "MongoDB 6.0 Release Signing Key <packaging@mongodb.com>" imported gpg: Total number processed: 1 gpg: imported: 1
Verifica el archivo de instalación de MongoDB.
Ejecuta este comando:
gpg --verify mongodb-macos-x86_64-6.0.26.tgz.sig mongodb-macos-x86_64-6.0.26.tgz
GPG debería devolver esta respuesta:
gpg: Signature made Wed Jun 5 03:17:20 2019 EDT gpg: using RSA key 4B7C549A058F8B6B gpg: Good signature from "MongoDB 6.0 Release Signing Key <packaging@mongodb.com>" [unknown]
Si el paquete está debidamente firmado, pero actualmente no confía en la clave de firma en su trustdb local, gpg también devolverá el siguiente mensaje :
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
Si recibes el siguiente mensaje de error, verifica que hayas importado la clave pública correcta:
gpg: Can't check signature: public key not found
Usa SHA-256
Descargue el archivo de instalación de MongoDB.
Descarga los binarios desde el Centro de descargas de MongoDB/span> según tu entorno.
Por ejemplo, para descargar la versión 6.0.26 para macOS a través de la shell, escriba este comando:
curl -LO https://fastdl.mongodb.org/osx/mongodb-macos-x86_64-6.0.26.tgz
Utiliza la suma de comprobación SHA-256 para verificar el archivo del paquete MongoDB.
Calcula la suma de verificación del archivo del paquete:
shasum -c mongodb-macos-x86_64-6.0.26.tgz.sha256
que debe devolver lo siguiente si la suma de verificación coincide con el paquete descargado:
mongodb-macos-x86_64-6.0.26.tgz: OK
Verifica los paquetes de Windows
Esto verifica el binario de MongoDB contra su clave SHA256.
Download the installer.
Descarga el instalador de MongoDB .msi. Por ejemplo, para descargar la última versión de MongoDB Community Edition:
➤ Centro de descargas de la comunidad MongoDB
En el Version desplegable, seleccione
6.0.26 (current release).En el menú desplegable Platform, selecciona Windows.
En el menú desplegable Package, selecciona msi.
Haz clic en Download y guarda el archivo en tu carpeta de Descargas.
Obtén el archivo de firma pública.
Obtener el archivo de firma pública para tu versión de MongoDB.
Por ejemplo, para la firma SHA256 de la última versión de MongoDB Community Edition:
Desde https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-6.0.26-signed.msi.sha256copie el contenido.
Guarde el contenido en un archivo
mongodb-windows-x86_64-6.0.26-signed.msi.sha256en su carpeta de Descargas.
Compara el archivo de firma con el hash del instalador de MongoDB.
Para comparar el archivo de firma con el hash del binario de MongoDB, invoca este script de Powershell:
$sigHash = (Get-Content $Env:HomePath\Downloads\mongodb-windows-x86_64-6.0.26-signed.msi.sha256 | Out-String).SubString(0,64).ToUpper(); ` $fileHash = (Get-FileHash $Env:HomePath\Downloads\mongodb-windows-x86_64-6.0.26-signed.msi).Hash.Trim(); ` echo $sigHash; echo $fileHash; ` $sigHash -eq $fileHash
C777DF7816BB8C9A760FDEA782113949408B6F39D72BE29A2551FA51E2FE0473 C777DF7816BB8C9A760FDEA782113949408B6F39D72BE29A2551FA51E2FE0473 True
El comando produce tres líneas:
Un hash
SHA256que descargó directamente de MongoDB.Un hash
SHA256calculado a partir del binario de MongoDB que descargó de MongoDB.Un resultado
TrueoFalsedependiendo de si los hashes coinciden.
Si los hashes coinciden, se verifica el binario de MongoDB.