測試您的裝置並儲存 Amazon CA 憑證 - AWS IoT Core

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

測試您的裝置並儲存 Amazon CA 憑證

本節中的程序會從上一節繼續安裝 AWS Command Line Interface 和憑證授權單位憑證,用於驗證您與 的連線 AWS IoT Core。

完成本節後,您會知道 Raspberry Pi 具有安裝 AWS IoT Device Client 所需的系統軟體,且其與網際網路具有有效的連線。

必要設備:

安裝 AWS Command Line Interface

此程序會將 安裝在 Raspberry Pi AWS CLI 上。

如果使用的是 Raspberry Pi,或者如果可以在 IoT 裝置上編譯軟體,請在本機主機電腦上的終端機視窗中執行這些步驟。如果必須在本機主機電腦上編譯 IoT 裝置的軟體,請檢閱 IoT 裝置的軟體說明文件,取得其所需之程式庫的相關資訊。

在 Raspberry Pi AWS CLI 上安裝
  1. 執行這些命令來下載和安裝 AWS CLI。

    export PATH=$PATH:~/.local/bin # configures the path to include the directory with the AWS CLI git clone https://github.com/aws/aws-cli.git # download the AWS 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
  2. 執行此命令以安裝 AWS CLI。此命令最多需要 15 分鐘的時間即可完成。

    pip3 install . # install the AWS CLI
  3. 執行此命令以確認 AWS CLI 已安裝正確版本的 。

    aws --version

    的版本 AWS CLI 應為 2.2 或更新版本。

如果 AWS CLI 顯示其目前版本,您就可以繼續 設定您的 AWS 帳戶 憑證

設定您的 AWS 帳戶 憑證

在此程序中,您將取得 AWS 帳戶 憑證,並新增憑證,以便在 Raspberry Pi 上使用。

將 AWS 帳戶 憑證新增至您的裝置
  1. 從 取得存取金鑰 ID秘密存取金鑰 AWS 帳戶 ,以驗證 AWS CLI 裝置上的 。

    如果您是 的新手 AWS IAM, https://aws.amazon.com/premiumsupport/知識中心/create-access-key/ 會描述在 AWS 主控台中執行的程序,以建立 AWS 要在裝置上使用的IAM憑證。

  2. 在連接至 Raspberry Pi 的本機主機電腦終端機視窗上,以及裝置的 Access Key ID (存取金鑰 ID) 和 Secret Access Key (私密存取金鑰) 憑證:

    1. 使用此命令執行 AWS 設定應用程式:

      aws configure
    2. 出現提示時,請輸入憑證和組態資訊:

      AWS Access Key ID: your Access Key ID AWS Secret Access Key: your Secret Access Key Default region name: your AWS 區域 code Default output format: json
  3. 執行此命令,以測試裝置對 AWS 帳戶 和 AWS IoT Core 端點的存取。

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

    它應該傳回您的 AWS 帳戶特定 AWS IoT 資料端點,例如此範例:

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

如果您看到 AWS 帳戶特定的 AWS IoT 資料端點,您的 Raspberry Pi 具有繼續 的連線能力和許可下載 Amazon 根憑證授權機構憑證

重要

您的 AWS 帳戶 憑證現在會儲存在 Raspberry Pi 中的 microSD 卡上。雖然這可讓您在未來 AWS 輕鬆與 互動,以及您將在這些教學課程中建立的軟體互動,但它們也會儲存在您在此步驟之後建立的任何 microSD 卡映像中並複製。

為了保護 AWS 帳戶 憑證的安全,在您儲存任何其他 microSD 卡映像之前,請考慮aws configure再次執行並輸入存取金鑰 ID秘密存取金鑰的隨機字元來清除 AWS 帳戶 憑證,以防止憑證遭到入侵。

如果您發現不小心儲存 AWS 帳戶 了憑證,您可以在主控台中 AWS IAM停用它們。

下載 Amazon 根憑證授權機構憑證

此程序會下載並儲存 Amazon 根憑證憑證授權機構 (CA) 的憑證副本。下載並儲存此憑證以供後續教學課程使用,也可以測試裝置與 AWS 服務之間的連線能力。

下載並儲存 Amazon 根憑證授權機構憑證
  1. 執行此命令,為憑證建立目錄。

    mkdir ~/certs
  2. 執行此命令來下載 Amazon 根憑證授權機構憑證。

    curl -o ~/certs/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
  3. 執行這些命令來設定憑證目錄及其檔案的存取權。

    chmod 745 ~ chmod 700 ~/certs chmod 644 ~/certs/AmazonRootCA1.pem
  4. 執行此命令來查看新目錄中的憑證授權機構憑證檔案。

    ls -l ~/certs

    您應該會看到類似這樣的項目。日期和時間會有所不同;不過,檔案大小和所有其他資訊應該與此處所示相同。

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

    如果檔案大小不是 1188,請檢查 curl 命令參數。您可能下載了不正確的檔案。

(選用) 儲存 microSD 卡映像

此時,Raspberry Pi 的 microSD 卡已經擁有更新的作業系統和加載的基本應用程式軟體。

將 microSD 卡映像儲存至檔案
  1. 在本機主機電腦上的終端機視窗中清除 AWS 憑證。

    1. 使用此命令執行 AWS 設定應用程式:

      aws configure
    2. 出現提示時,請取代憑證。您可以按 Enter 鍵,讓 Default region name (預設區域名稱) 和 Default output format (預設輸出格式) 保持不變。

      AWS Access Key ID [****************YT2H]: XYXYXYXYX AWS Secret Access Key [****************9plH]: XYXYXYXYX Default region name [us-west-2]: Default output format [json]:
  2. 輸入此命令來關閉 Raspberry Pi。

    sudo shutdown -h 0
  3. Raspberry Pi 完全關閉之後,移除其電源連接器。

  4. 從裝置中取出 microSD 卡。

  5. 在本機主機電腦上:

    1. 插入 microSD 卡。

    2. 使用 SD 卡映像工具,將 microSD 卡的映像儲存至檔案中。

    3. 儲存 microSD 卡的映像後,請從本機主機電腦中退出記憶卡。

  6. 在 Raspberry Pi 斷開電源後,將 microSD 卡插入 Raspberry Pi。

  7. 將電源連接至裝置。

  8. 大約一分鐘後,在本機主機電腦上重新啟動終端機視窗工作階段,然後登入裝置。

    還不要重新輸入您的 AWS 帳戶 憑證。

在重新啟動並登入至 Raspberry Pi 之後,您就可以繼續進行 教學課程:安裝和設定 AWS IoT 裝置用戶端