使用 GPG 验证包(Linux 和 macOS)
MongoDB 发布团队对 MongoDB Shell 包进行数字签名,以验证包是否为有效且未被篡改的 MongoDB 发布版本。在您安装 MongoDB Shell 之前,您可以使用数字签名来验证该包。
本页面描述了如何使用 GPG 验证 Linux 和 macOS 包。
在开始之前
如果您尚未安装 MongoDB Shell,请从下载中心.
步骤
1
导入 MongoDB Shell 公钥
curl https://pgp.mongodb.com/mongosh.asc | gpg --import
如果密钥导入成功,则命令返回
gpg: key CEED0419D361CB16: public key "Mongosh Release Signing Key <packaging@mongodb.com>" imported gpg: Total number processed: 1 gpg: imported: 1
如果您之前已导入密钥,则命令返回
gpg: key A8130EC3F9F5F923: "Mongosh Release Signing Key <packaging@mongodb.com>" not changed gpg: Total number processed: 1 gpg: unchanged: 1
2
下载 MongoDB Shell 的公共签名
要下载 MongoDB Shell 的公共签名,请访问 GitHub 上的mongosh Releases页面并下载相应的.sig
文件。
例如,如果您正在运行mongodb-mongosh_2.3.2_amd64.deb
,请下载mongodb-mongosh_2.3.2_amd64.deb.sig
注意
在下载签名时,请确保在 GitHub 发布页面中选择正确的版本。
3
验证软件包
gpg --verify <path_to_signature_file> <path_to_mongosh_executable>
如果软件包由 MongoDB 签名,则命令返回
gpg: Signature made Mon Jan 22 10:22:53 2024 CET gpg: using RSA key AB1B92FFBE0D3740425DAD16A8130EC3F9F5F923 gpg: Good signature from "Mongosh Release Signing Key <packaging@mongodb.com>" [unknown]
如果软件包已签名但签名密钥未添加到您的本地trustdb
,则命令返回
gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner.
如果软件包未正确签名,则命令返回错误信息
gpg: Signature made Mon Jan 22 10:22:53 2024 CET gpg: using RSA key AB1B92FFBE0D3740425DAD16A8130EC3F9F5F923 gpg: BAD signature from "Mongosh Release Signing Key <packaging@mongodb.com>" [unknown]