文档菜单
文档首页
/ /
MongoDB CLI
/

验证 MongoDB CLI 包的完整性

本页内容

  • 验证 Linux 包
  • 验证 Windows 包

MongoDB CLI 发布团队对所有软件包和容器镜像进行数字签名,以证明特定包有效且未被篡改。在安装 Linux 或 Windows 的 MongoDB CLI 包之前,您应使用提供的 PGP 签名或 SHA-256 校验和信息验证包。

MongoDB 使用不同的 PGP 密钥为每个发布分支签名。最新的 MongoDB CLI 发布的公钥文件可以从密钥服务器.

以下过程用于验证 MongoDB CLI 包与其 PGP 密钥的一致性。

1

根据您的Linux环境,从MongoDB下载中心下载MongoDB CLI二进制文件。点击复制链接并使用以下说明中的URL。

例如,要通过shell下载Linux的2.0.1版本,运行以下命令

curl -LO https://fastdl.mongodb.org/mongocli/mongocli_2.0.1_linux_x86_64.tar.gz
2

运行以下命令下载文件

curl -LO https://fastdl.mongodb.org/mongocli/mongocli_2.0.1_linux_x86_64.tar.gz.sig
3

运行以下命令下载并导入密钥文件

curl -LO https://pgp.mongodb.com/mongodb-cli.asc
gpg --import mongodb-cli.asc
gpg: key <key-value-short>: public key "MongoDB CLI Release Signing Key <packaging@mongodb.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
4

运行以下命令以验证安装文件

gpg --verify mongocli_2.0.1_linux_x86_64.tar.gz.sig mongocli_2.0.1_linux_x86_64.tar.gz
gpg: Signature made Thu Mar 14 08:25:00 2024 EDT
gpg: using RSA key <key-value-long>
gpg: Good signature from "MongoDB CLI Release Signing Key <packaging@mongodb.com>" [unknown]

如果包已正确签名,但您当前不信任签名密钥,gpg 还会返回以下消息

gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.

以下过程用于验证MongoDB CLI包与其SHA-256密钥。

1

MongoDB下载中心Github下载MongoDB CLI的.msi.zip文件。

2
  1. Github下载发行版的checksums.txt文件,其中包含每个文件的SHA-256密钥。例如,对于版本2.0.1,下载2.0.1的checksums.txt文件。

  2. 打开checksums.txt文件,并复制你下载的包左侧的文本。例如,如果你下载了mongocli_2.0.1_windows_x86_64.zip,复制mongocli_2.0.1_windows_x86_64.zip左侧的文本。这个值是SHA-256密钥值。

  3. 将SHA-256密钥值保存到你的下载文件夹中名为mongocli-key.txt文件中。

3

运行Powershell命令来根据你下载的文件验证包。

如果你下载了mongocli_2.0.1_windows_x86_64.zip,运行以下命令

$sigHash = (Get-Content $Env:HomePath\Downloads\mongocli-key.txt | Out-String).SubString(0,64).ToUpper(); `
$fileHash = (Get-FileHash $Env:HomePath\Downloads\mongocli_2.0.1_windows_x86_64.zip).Hash.Trim(); `
echo $sigHash; echo $fileHash; `
$sigHash -eq $fileHash
<key-value-from-signature-file>
<key-value-from-downloaded-package>
True

如果你下载了mongocli_2.0.1_windows_x86_64.msi,运行以下命令

$sigHash = (Get-Content $Env:HomePath\Downloads\mongocli-key.txt | Out-String).SubString(0,64).ToUpper(); `
$fileHash = (Get-FileHash $Env:HomePath\Downloads\mongocli_2.0.1_windows_x86_64.msi).Hash.Trim(); `
echo $sigHash; echo $fileHash; `
$sigHash -eq $fileHash
<key-value-from-signature-file>
<key-value-from-downloaded-package>
True

该命令返回签名文件中的密钥值、下载包中的密钥值,如果两个值匹配,则返回 True

如果两个值匹配,则验证MongoDB CLI二进制文件。

返回

安装或更新