Esegui il provisioning del tuo Raspberry Pi in AWS IoT - AWS IoT Core

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui il provisioning del tuo Raspberry Pi in AWS IoT

Le procedure in questa sezione iniziano con l'immagine microSD salvata su cui è installato AWS CLI il Device Client AWS IoT e creano le risorse e i certificati del dispositivo che forniscono AWS IoT il tuo Raspberry Pi. AWS IoT

Installa la scheda microSD nel Raspberry Pi

Questa procedura installa la scheda microSD con il software necessario caricato e configurato nel Raspberry Pi e la configura in modo da poter continuare con Account AWS i tutorial di questo percorso di apprendimento.

Utilizzare una scheda microSD da (Facoltativo) Salvare l'immagine della scheda microSD che dispone del software necessario per gli esercizi e le esercitazioni in questo percorso di apprendimento.

Per installare la scheda microSD nel Raspberry Pi
  1. Con l'alimentazione scollegata dal Raspberry Pi, inserisci la scheda microSD nel Raspberry Pi.

  2. Collega Raspberry Pi all'alimentazione.

  3. Dopo circa un minuto, sul computer host locale, riavvia la sessione della finestra terminale e accedi al Raspberry Pi.

  4. Sul computer host locale, nella finestra terminale e con le credenziali ID chiave di accesso e Chiave di accesso segreta per il Raspberry Pi:

    1. Esegui l'app di configurazione con questo comando: AWS

      aws configure
    2. Inserisci Account AWS le tue credenziali e le informazioni di configurazione quando richiesto:

      AWS Access Key ID [****************YXYX]: your Access Key ID AWS Secret Access Key [****************YXYX]: your Secret Access Key Default region name [us-west-2]: your Regione AWS code Default output format [json]: json

Dopo aver ripristinato Account AWS le credenziali, sei pronto per continuare. Effettua il provisioning del dispositivo in AWS IoT Core

Effettua il provisioning del dispositivo in AWS IoT Core

Le procedure descritte in questa sezione creano le AWS IoT risorse che forniscono il tuo Raspberry Pi. AWS IoT Man mano che crei queste risorse, ti verrà chiesto di registrare varie informazioni. Queste informazioni vengono utilizzate dalla configurazione del AWS IoT Device Client nella procedura successiva.

Affinché il tuo Raspberry Pi funzioni AWS IoT, deve essere fornito. Il provisioning è il processo di creazione e configurazione AWS IoT delle risorse necessarie per supportare il tuo Raspberry Pi come dispositivo IoT.

Con il Raspberry Pi acceso e riavviato, connetti la finestra terminale del computer host locale al Raspberry Pi e completa queste procedure.

Creare e scaricare i file di certificato del dispositivo

Questa procedura crea i file di certificato del dispositivo per questa demo.

Per creare e scaricare i file di certificato del dispositivo per il tuo Raspberry Pi
  1. Nella finestra terminale del computer host locale, immettere questi comandi per creare i file di certificato del dispositivo per il dispositivo.

    mkdir ~/certs/testconn aws iot create-keys-and-certificate \ --set-as-active \ --certificate-pem-outfile "~/certs/testconn/device.pem.crt" \ --public-key-outfile "~/certs/testconn/public.pem.key" \ --private-key-outfile "~/certs/testconn/private.pem.key"

    Questo comando restituisce una risposta simile alla seguente. Registra il valore certificateArn per utilizzarlo in seguito.

    { "certificateArn": "arn:aws:iot:us-west-2:57EXAMPLE833:cert/76e7e4edb3e52f52334be2f387a06145b2aa4c7fcd810f3aea2d92abc227d269", "certificateId": "76e7e4edb3e52f5233EXAMPLE7a06145b2aa4c7fcd810f3aea2d92abc227d269", "certificatePem": "-----BEGIN CERTIFICATE-----\nMIIDWTCCAkGgAwIBAgI_SHORTENED_FOR_EXAMPLE_Lgn4jfgtS\n-----END CERTIFICATE-----\n", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BA_SHORTENED_FOR_EXAMPLE_ImwIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQE_SHORTENED_FOR_EXAMPLE_T9RoDiukY\n-----END RSA PRIVATE KEY-----\n" } }
  2. Inserisci i seguenti comandi per impostare le autorizzazioni sulla directory dei certificati e sui relativi file.

    chmod 745 ~ chmod 700 ~/certs/testconn chmod 644 ~/certs/testconn/* chmod 600 ~/certs/testconn/private.pem.key
  3. Esegui questo comando per rivedere le autorizzazioni sulle directory e sui file dei certificati.

    ls -l ~/certs/testconn

    L'output del comando dovrebbe essere lo stesso di quello che vedi qui, tranne per le date e gli orari del file.

    -rw-r--r-- 1 pi pi 1220 Oct 28 13:02 device.pem.crt -rw------- 1 pi pi 1675 Oct 28 13:02 private.pem.key -rw-r--r-- 1 pi pi 451 Oct 28 13:02 public.pem.key

A questo punto, hai i file del certificato del dispositivo installati sul tuo Raspberry Pi e puoi proseguire con Crea risorse AWS IoT.

Crea risorse AWS IoT

Questa procedura fornisce il dispositivo AWS IoT creando le risorse necessarie per accedere a AWS IoT funzionalità e servizi.

Per effettuare il provisioning del dispositivo in AWS IoT
  1. Nella finestra terminale del computer host locale, immettere il seguente comando per ottenere l'indirizzo dell'endpoint dati del dispositivo per l' Account AWS.

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

    Questo comando restituisce una risposta simile alla seguente. Registra il valore endpointAddress per utilizzarlo in seguito.

    { "endpointAddress": "a3qjEXAMPLEffp-ats.iot.us-west-2.amazonaws.com" }
  2. Inserisci questo comando per creare una AWS IoT risorsa per il tuo Raspberry Pi.

    aws iot create-thing --thing-name "DevCliTestThing"

    Se la tua risorsa AWS IoT thing è stata creata, il comando restituisce una risposta come questa.

    { "thingName": "DevCliTestThing", "thingArn": "arn:aws:iot:us-west-2:57EXAMPLE833:thing/DevCliTestThing", "thingId": "8ea78707-32c3-4f8a-9232-14bEXAMPLEfd" }
  3. Nella finestra terminale:

    1. Apri un editor di testo, ad esempio nano.

    2. Copia questo documento di JSON policy e incollalo nell'editor di testo aperto.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:Connect" ], "Resource": [ "*" ] } ] }
      Nota

      Questo documento di policy concede generosamente a tutte le risorse l'autorizzazione a connettersi, ricevere, pubblicare e sottoscrivere. Normalmente le policy consentono solo a risorse specifiche di eseguire azioni specifiche. Tuttavia, per il test iniziale della connettività del dispositivo, questa policy eccessivamente generale e permissiva viene utilizzata per ridurre al minimo la possibilità di un problema di accesso durante questo test. Nei tutorial successivi, verranno utilizzati documenti di policy più ristretti per dimostrare le migliori pratiche nella progettazione delle policy.

    3. Salva il file nell'editor di testo come ~/policies/dev_cli_test_thing_policy.json.

  4. Esegui questo comando per utilizzare il documento di policy dei passaggi precedenti per creare una AWS IoT politica.

    aws iot create-policy \ --policy-name "DevCliTestThingPolicy" \ --policy-document "file://~/policies/dev_cli_test_thing_policy.json"

    Se la policy viene creata, verrà visualizzata una risposta simile alla seguente.

    { "policyName": "DevCliTestThingPolicy", "policyArn": "arn:aws:iot:us-west-2:57EXAMPLE833:policy/DevCliTestThingPolicy", "policyDocument": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": [\n \"iot:Publish\",\n \"iot:Subscribe\",\n \"iot:Receive\",\n \"iot:Connect\"\n ],\n \"Resource\": [\n \"*\"\n ]\n }\n ]\n}\n", "policyVersionId": "1" }
  5. Eseguire questo comando per attribuire la policy al certificato del dispositivo. Sostituisci certificateArn con il valore certificateArn salvato in precedenza.

    aws iot attach-policy \ --policy-name "DevCliTestThingPolicy" \ --target "certificateArn"

    In caso di successo, questo comando non restituisce alcun risultato.

  6. Esegui questo comando per allegare il certificato del dispositivo alla risorsa AWS IoT oggetto. Sostituisci certificateArn con il valore certificateArn salvato in precedenza.

    aws iot attach-thing-principal \ --thing-name "DevCliTestThing" \ --principal "certificateArn"

    In caso di successo, questo comando non restituisce alcun risultato.

Dopo aver effettuato correttamente il provisioning del dispositivo AWS IoT, sei pronto per continuareConfigura il AWS IoT Device Client per testare la connettività.