验证 AWSTOE 安装下载的签名 - EC2 Image Builder

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

验证 AWSTOE 安装下载的签名

本节介绍在基于 Linux 和 Windows 的操作系统 AWSTOE 上验证安装下载的有效性的推荐流程。

在 Linux 上验证 AWSTOE 安装包签名

本主题介绍在基于 Linux 的操作系统 AWSTOE 上验证安装下载有效性的推荐流程。

无论何时从 Internet 下载应用程序,我们都建议您验证软件发布者的身份。另外,请检查应用程序自发布以来是否未被更改或损坏。这会保护您免于安装含有病毒或其他恶意代码的应用程序版本。

如果您在执行本主题中的步骤后确定适用于 AWSTOE 的软件已遭更改或损坏,请不要运行安装文件。相反,请联系 AWS Support 。有关您的支持选项的更多信息,请参阅AWS Support

AWSTOE 基于 Linux 的操作系统的文件使用GnuPG开源实现 Pretty Good Privacy (OpenPGP) 安全数字签名标准进行签名。 GnuPG(也称为GPG)通过数字签名提供身份验证和完整性检查。Amazon EC2 发布了您可用于验证下载的 Amazon EC2 CLI 工具的公钥和签名。有关 PGPGnuPG (GPG) 的更多信息,请参阅 http://www.gnupg.org

第一步是与软件发行商建立信任。下载软件发布者的公有密钥,检查公有密钥的所有人是否真为其人,然后将该公有密钥添加到您的密钥环。密钥环是已知公有密钥的集合。验证公有密钥的真实性后,您可以使用它来验证应用程序的签名。

安装 GPG 工具

如果您的操作系统是 Linux 或 Unix,GPG 工具很可能已经安装。要测试系统上是否已安装这些工具,请在命令提示符处键入 gpg。如果已安装 GPG 工具,您会看到 GPG 命令提示。如果没有安装 GPG 工具,您会看到错误消息,告诉您无法找到命令。您可以从存储库安装 GnuPG 包。

在基于 Debian 的 Linux 上安装 GPG 工具
  • 从终端设备运行以下命令:apt-get install gnupg

在基于 Red Hat 的 Linux 上安装 GPG 工具
  • 从终端设备运行以下命令:yum install gnupg

验证并导入公有密钥

该过程的下一步是对 AWSTOE 公钥进行身份验证,并将其作为可信密钥添加到您的密GPG钥环中。

验证和导入 AWSTOE 公钥
  1. 通过执行下列操作之一获取公共 GPG 生成密钥的副本:

    • 从 https://awstoe-<region>.s3.<region>.amazonaws.com/assets/awstoe.gpg 下载密钥。例如,https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/assets/awstoe.gpg

    • 将以下文本中的密钥复制并粘贴到名为 awstoe.gpg 的文件中。确保包含下列所有项:

      -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v2 mQENBF8UqwsBCACdiRF2bkZYaFSDPFC+LIkWLwFvtUCRwAHtD8KIwTJ6LVn3fHAU GhuK0ZH9mRrqRT2bq/xJjGsnF9VqTj2AJqndGJdDjz75YCZYM+ocZ+r5HSJaeW9i S5dykHj7Txti2zHe0G5+W0v7v5bPi2sPHsN7XWQ7+G2AMEPTz8PjxY//I0DvMQns Sle3l9hz6wCClz1l9LbBzTyHfSm5ucTXvNe88XX5Gmt37OCDM7vfli0Ctv8WFoLN 6jbxuA/sV71yIkPm9IYp3+GvaKeT870+sn8/JOOKE/U4sJV1ppbqmuUzDfhrZUaw 8eW8IN9A1FTIuWiZED/5L83UZuQs1S7s2PjlABEBAAG0GkFXU1RPRSA8YXdzdG9l QGFtYXpvbi5jb20+iQE5BBMBCAAjBQJfFKsLAhsDBwsJCAcDAgEGFQgCCQoLBBYC AwECHgECF4AACgkQ3r3BVvWuvFJGiwf9EVmrBR77+Qe/DUeXZJYoaFr7If/fVDZl 6V3TC6p0J0Veme7uXleRUTFOjzbh+7e5sDX19HrnPquzCnzfMiqbp4lSoeUuNdOf FcpuTCQH+M+sIEIgPno4PLl0Uj2uE1o++mxmonBl/Krk+hly8hB2L/9n/vW3L7BN OMb1Ll9PmgGPbWipcT8KRdz4SUex9TXGYzjlWb3jU3uXetdaQY1M3kVKE1siRsRN YYDtpcjmwbhjpu4xm19aFqNoAHCDctEsXJA/mkU3erwIRocPyjAZE2dnlkL9ZkFZ z9DQkcIarbCnybDM5lemBbdhXJ6hezJE/b17VA0t1fY04MoEkn6oJg== =oyze -----END PGP PUBLIC KEY BLOCK-----
  2. 在您保存 awstoe.gpg 的目录中的命令提示符处,使用以下命令将 AWSTOE 公钥导入密钥环。

    gpg --import awstoe.gpg

    该命令返回的结果类似于下方内容:

    gpg: key F5AEBC52: public key "AWSTOE <awstoe@amazon.com>" imported gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1)

    请记下该键值,因为下一步需要用到。在上一示例中,键值为 F5AEBC52

  3. 通过运行以下命令,将 key-value 替换为上一步中的值来验证指纹:

    gpg --fingerprint key-value

    该命令返回的结果类似于下方内容:

    pub 2048R/F5AEBC52 2020-07-19 Key fingerprint = F6DD E01C 869F D639 15E5 5742 DEBD C156 F5AE BC52 uid [ unknown] AWSTOE <awstoe@amazon.com>

    此外,指纹字符串应与上述示例中所示的 F6DD E01C 869F D639 15E5 5742 DEBD C156 F5AE BC52 相同。将返回的密钥指纹与此页上发布的指纹进行比较。它们应该相互匹配。如果它们不匹配,请不要安装 AWSTOE 安装脚本,然后与联系 AWS Support。

验证软件包的签名

在安装 GPG 工具、验证并导入 AWSTOE 公有密钥以及确认公有密钥可信后,便可以验证安装脚本的签名。

验证安装脚本签名
  1. 在命令提示符处,运行以下命令以下载应用程序的二进制文件:

    curl -O https://awstoe-<region>.s3.<region>.amazonaws.com/latest/linux/<architecture>/awstoe

    例如:

    curl -O https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/linux/amd64/awstoe

    支持的 architecture 值可以是 amd64386arm64

  2. 在命令提示符处,运行以下命令以下载相同的 S3 key prefix 路径中对应的应用程序二进制文件的签名文件:

    curl -O https://awstoe-<region>.s3.<region>.amazonaws.com/latest/linux/<architecture>/awstoe.sig

    例如:

    curl -O https://awstoe-us-east-1.s3.us-east-1.amazonaws.com/latest/linux/amd64/awstoe.sig

    支持的 architecture 值可以是 amd64386arm64

  3. 通过在您保存的目录awstoe.sig和 AWSTOE 安装文件中的命令提示符处运行以下命令来验证签名。这两个文件都必须存在。

    gpg --verify ./awstoe.sig ~/awstoe

    输出应与以下内容类似:

    gpg: Signature made Mon 20 Jul 2020 08:54:55 AM IST using RSA key ID F5AEBC52 gpg: Good signature from "AWSTOE awstoe@amazon.com" [unknown] 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: F6DD E01C 869F D639 15E5 5742 DEBD C156 F5AE BC52

    如果输出包含短语 Good signature from "AWSTOE <awstoe@amazon.com>",则意味着已成功验证签名,您可以继续运行 AWSTOE 安装脚本。

    如果输出包含短语 BAD signature,则检查是否正确执行了此过程。如果您持续获得此响应,不要运行之前下载的安装文件,并且请联系 AWS Support。

下面是有关您可能看到的警告的详细信息:

  • 警告:此密钥未使用可信签名进行认证!没有迹象表明签名属于所有者。理想情况下,您可以亲自前往 AWS 办公室领取钥匙。但最可能的情况是,从网站下载此密钥。在这种情况下,该网站就是一个 AWS 网站。

  • gpg: no ultimately trusted keys found. 这意味着您 (或您信任的其他人) 对特定密钥不是“绝对信任”。

有关更多信息,请参阅 http://www.gnupg.org

在 Windows 上验证 AWSTOE 安装包下载的签名

本主题介绍在基于 Windows 的操作系统上验证 AWS Task Orchestrator and Executor 应用程序安装文件有效性的推荐流程。

无论何时从 Internet 下载应用程序,我们都建议您验证软件发布者的身份,并检查应用程序从发行以来是否已遭更改或损坏。这会保护您免于安装含有病毒或其他恶意代码的应用程序版本。

如果您在执行本主题中的步骤后确定适用于 AWSTOE 应用程序的软件已遭更改或损坏,请不要运行安装文件。相反,请联系 AWS Support。

要验证基于 Windows 的操作系统上的已下载 awstoe 二进制文件是否有效,必须确保其 Amazon Services LLC 签署人证书的指纹等于此值:

F8 83 11 EE F0 4A A2 91 E3 79 21 BA 6B FC AF F8 19 92 12 D7

注意

在新二进制文件的推出窗口期间,您的签名者证书可能与新的指纹不匹配。如果您的签名者证书不匹配,请验证指纹值是否为:

5B 77 F4 F0 C3 7A 8B 89 D9 A7 8F 54 B6 85 11 CE 9E A3 BF 17

要验证此值,请执行以下过程:

  1. 右键单击下载的 awstoe.exe,然后打开 Properties (属性) 窗口。

  2. 选择数字签名选项卡。

  3. 签名列表 中,选择 Amazon Services LLC,然后选择详细信息

  4. 选择常规选项卡 (如果尚未选择),然后选择查看证书

  5. 选择详细信息选项卡,然后选择显示下拉列表中的全部 (如果尚未选择)。

  6. 向下滚动直至您看到指纹字段,然后选择指纹。这将在下部窗口中显示整个指纹值。

    • 如果下部窗口中的指纹值等于以下值:

      F8 83 11 EE F0 4A A2 91 E3 79 21 BA 6B FC AF F8 19 92 12 D7

      那么你下载的 AWSTOE 二进制文件是真实的,可以安全地安装。

      注意

      在新二进制文件的推出窗口期间,您的签名者证书可能与新的指纹不匹配。如果您的签名者证书不匹配,请验证指纹值是否为:

      5B 77 F4 F0 C3 7A 8B 89 D9 A7 8F 54 B6 85 11 CE 9E A3 BF 17

    • 如果下部详细信息窗口中的指纹值不等于前述值,请不要运行 awstoe.exe