

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

# 测试您的设备并保存 Amazon CA 证书
<a name="iot-dc-prepare-device-test"></a>

本节中的步骤从[上一节](iot-dc-prepare-device-sw.md)继续，安装 Amazon Command Line Interface 和用于对连接进行身份验证的证书颁发机构证书 Amazon IoT Core。

完成本节后，您将知道您的 Raspberry Pi 拥有安装 Amazon IoT 设备客户端所需的系统软件，并且可以正常连接到互联网。

**所需的设备：**
+ [上一节](iot-dc-prepare-device-sw.md)中您的本地开发和测试环境
+ [上一节](iot-dc-prepare-device-sw.md)中您使用 的Raspberry Pi
+ [上一节](iot-dc-prepare-device-sw.md)中的 microSD 存储卡

**Topics**
+ [安装 Amazon Command Line Interface](#iot-dc-prepare-device-test-step1)
+ [配置您的 Amazon Web Services 账户 凭证](#iot-dc-prepare-device-test-step2)
+ [下载 Amazon Root CA 证书](#iot-dc-prepare-device-test-step3)
+ [（可选）保存 microSD 卡映像](#iot-dc-prepare-device-test-step4)

## 安装 Amazon Command Line Interface
<a name="iot-dc-prepare-device-test-step1"></a>

此过程将安装 Amazon CLI 到您的 Raspberry Pi 上。

如果您使用的是 Raspberry Pi 或者可以在物联网设备上编译软件，请在本地主机上的终端窗口中执行以下步骤。如果必须在本地主机上为物联网设备编译软件，请查看物联网设备的软件文档，了解所需库的信息。

**要在你的 Raspberry Pi Amazon CLI 上安装**

1. 运行以下命令下载和并按照安装 Amazon CLI。

   ```
   export PATH=$PATH:~/.local/bin # configures the path to include the directory with the Amazon CLI
   git clone https://github.com/aws/aws-cli.git # download the Amazon CLI code from GitHub
   cd aws-cli && git checkout v2 # go to the directory with the repo and checkout version 2
   pip3 install -r requirements.txt # install the prerequisite software
   ```

1. 运行此命令来安装 Amazon CLI。完成此命令可能最多需要 15 分钟。

   ```
   pip3 install . # install the Amazon CLI 
   ```

1. 运行此命令以确认安装的版本是否正确。 Amazon CLI 

   ```
   aws --version
   ```

   的版本 Amazon CLI 应为 2.2 或更高版本。

如果 Amazon CLI 显示的是当前版本，则表示您已准备好继续[配置您的 Amazon Web Services 账户 凭证](#iot-dc-prepare-device-test-step2)。

## 配置您的 Amazon Web Services 账户 凭证
<a name="iot-dc-prepare-device-test-step2"></a>

在此过程中，您将获取 Amazon Web Services 账户 凭证并将其添加到 Raspberry Pi 上使用。

**将您的 Amazon Web Services 账户 凭证添加到您的设备**

1. 从您那里获取**访问密钥 ID** 和**私有访问密钥** Amazon Web Services 账户 ，以便 Amazon CLI 在您的设备上对其进行身份验证。

   如果您不熟悉 Amazon IAM，Kn [ https://aws.amazon.com/premiumsupport/owledge-centercreate-access-key/](https://www.amazonaws.cn/premiumsupport/knowledge-center/create-access-key/)将介绍在 Amazon 控制台中运行的创建要在设备上使用 Amazon 的 IAM 证书的过程。

1. 在连接到 Raspberry Pi 的本地主机上的终端窗口中。并使用设备的**访问密钥 ID** 和**密钥访问密钥**凭据：

   1. 使用以下命令运行 Amazon 配置应用程序：

      ```
      aws configure
      ```

   1. 出现提示时，输入您的 凭据和配置信息：

      ```
      AWS Access Key ID: your Access Key ID
      AWS Secret Access Key: your Secret Access Key
      Default region name: your Amazon Web Services 区域 code
      Default output format: json
      ```

1. 运行此命令以测试您的设备对您的 Amazon Web Services 账户 和 Amazon IoT Core 端点的访问权限。

   ```
   aws iot describe-endpoint --endpoint-type iot:Data-ATS
   ```

   它应该返回您的 Amazon Web Services 账户特定 Amazon IoT 数据端点，例如以下示例：

   ```
   {
       "endpointAddress": "a3EXAMPLEffp-ats.iot.us-west-2.amazonaws.com"
   }
   ```

如果您看到自己的 Amazon Web Services 账户特定 Amazon IoT 数据端点，则表示您的 Raspberry Pi 具有继续[下载 Amazon Root CA 证书](#iot-dc-prepare-device-test-step3)访问的连接和权限。

**重要**  
你的 Amazon Web Services 账户 凭证现在存储在 Raspberry Pi 的 microSD 卡上。虽然这使你将来可以 Amazon 轻松地与你在这些教程中创建的软件进行交互，但默认情况下，它们也将被保存并复制到你在此步骤之后制作的任何 microSD 卡图像中。  
为了保护 Amazon Web Services 账户 凭证的安全，在保存更多 microSD 卡映像之前，请考虑`aws configure`重新运行并输入访问密**钥 ID 和**私有访问密**钥**的随机字符来擦除凭证，以防止您的 Amazon Web Services 账户 凭据被泄露。  
如果您发现自己无意中保存了 Amazon Web Services 账户 证书，则可以在 IAM 控制台中将其停用。 Amazon 

## 下载 Amazon Root CA 证书
<a name="iot-dc-prepare-device-test-step3"></a>

此过程下载并保存 Amazon Root 证书颁发机构（CA）的证书副本。下载此证书可保存以供后续教程中使用，还可测试设备与 Amazon 服务的连接。

**要下载并保存 Amazon Root CA 证书**

1. 运行以下命令为证书创建一个目录。

   ```
   mkdir ~/certs
   ```

1. 运行此命令下载 Amazon Root CA 证书。

   ```
   curl -o ~/certs/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
   ```

1. 运行这些命令设置对证书目录及其文件的访问权限。

   ```
   chmod 745 ~
   chmod 700 ~/certs
   chmod 644 ~/certs/AmazonRootCA1.pem
   ```

1. 运行此命令查看新目录中的 CA 证书文件。

   ```
   ls -l ~/certs
   ```

   您会看到如下条目。日期和时间会有所不同；但是，文件大小和所有其他信息应与此处显示的相同。

   ```
   -rw-r--r-- 1 pi pi 1188 Oct 28 13:02 AmazonRootCA1.pem
   ```

   如果文件大小不是 `1188`，检查 **curl** 命令参数。您可能下载了错误的文件。

## （可选）保存 microSD 卡映像
<a name="iot-dc-prepare-device-test-step4"></a>

此时，Raspberry Pi 的 microSD 卡具有更新的操作系统和基本的应用程序软件加载。

**要将 microSD 卡映像保存到文件中**

1. 在本地主机上的终端窗口中，清除 Amazon 凭证。

   1. 使用以下命令运行 Amazon 配置应用程序：

      ```
      aws configure
      ```

   1. 出现提示时，替换凭证。您可以离开**原定设置区域名称**和**原定设置输出格式**，因为它们是通过按**Enter**（输入）。

      ```
      AWS Access Key ID [****************YT2H]: XYXYXYXYX
      AWS Secret Access Key [****************9plH]: XYXYXYXYX
      Default region name [us-west-2]: 
      Default output format [json]:
      ```

1. 输入此命令关闭 Raspberry Pi。

   ```
   sudo shutdown -h 0
   ```

1. Raspberry Pi 完全关闭后，卸下其电源接头。

1. 从设备中取出 microSD 卡。

1. 在本地主机上：

   1. 插入 microSD 卡。

   1. 使用 SD 卡成像工具，将 microSD 卡映像保存到文件中。

   1. 保存 microSD 卡映像后，从本地主机上弹出该卡。

1. 从 Raspberry Pi 断开电源后，将 microSD 卡插入 Raspberry Pi。

1. 对设备供电。

1. 大约一分钟后，在本地主机上重新启动终端窗口会话并登录到设备。

   **暂时不要重新输入您的 Amazon Web Services 账户 凭证。**

重新启动并登录 Raspberry Pi 之后，您准备好继续 [教程：安装和配置 Amazon IoT 设备客户端](iot-dc-install-dc.md)。