Aprovisione su Raspberry Pi AWS IoT - AWS IoT Core

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Aprovisione su Raspberry Pi AWS IoT

Los procedimientos de esta sección comienzan con la imagen microSD guardada que tiene instalado el cliente AWS CLI and AWS IoT Device y crean los AWS IoT recursos y los certificados de dispositivo que aprovisionan tu Raspberry Pi. AWS IoT

Instalación de la tarjeta microSD en la Raspberry Pi

Este procedimiento instala la tarjeta microSD con el software necesario cargado y configurado en la Raspberry Pi y la configura Cuenta de AWS para que pueda continuar con los tutoriales de esta ruta de aprendizaje.

Utilice una tarjeta microSD de (Opcional) Guardar la imagen de la tarjeta microSD que tenga el software necesario para los ejercicios y tutoriales de esta ruta de aprendizaje.

Para instalar la tarjeta microSD en la Raspberry Pi
  1. Con la alimentación desconectada de la Raspberry Pi, inserte la tarjeta microSD en la Raspberry Pi.

  2. Alimente la Raspberry Pi.

  3. Después de aproximadamente un minuto, en el ordenador host local, reinicie la sesión de la ventana del terminal e inicie sesión en la Raspberry Pi.

  4. En su ordenador host local, en la ventana del terminal y con las credenciales ID de clave de acceso y Clave de acceso secreta de su Raspberry Pi:

    1. Ejecute la aplicación de AWS configuración con este comando:

      aws configure
    2. Introduzca sus Cuenta de AWS credenciales e información de configuración cuando se le solicite:

      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 Región de AWS code Default output format [json]: json

Una vez que haya restaurado sus Cuenta de AWS credenciales, estará listo para continuar haciéndoloAprovisione su dispositivo en AWS IoT Core.

Aprovisione su dispositivo en AWS IoT Core

Los procedimientos de esta sección crean los AWS IoT recursos que aprovisionan tu Raspberry Pi AWS IoT. A medida que cree estos recursos, se le pedirá que registre varios datos. La configuración del cliente del AWS IoT dispositivo utilizará esta información en el siguiente procedimiento.

Para que su Raspberry Pi funcione AWS IoT, debe estar aprovisionada. El aprovisionamiento es el proceso de crear y configurar los AWS IoT recursos necesarios para soportar su Raspberry Pi como dispositivo IoT.

Con la Raspberry Pi encendida y reiniciada, conecte la ventana del terminal del ordenador host local a la Raspberry Pi y siga estos procedimientos.

Crear y descargar archivos de certificado del dispositivo

Este procedimiento crea los archivos de certificado del dispositivo para esta demostración.

Para crear y descargar los archivos de certificado del dispositivo para la Raspberry Pi
  1. En la ventana del terminal de su ordenador host local, introduzca estos comandos para crear los archivos de certificado para su 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"

    El comando devuelve una respuesta similar a la siguiente: Anote el valor certificateArn: lo necesitará más adelante.

    { "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. Introduzca los siguientes comandos para configurar los permisos en el directorio de certificados y sus archivos.

    chmod 745 ~ chmod 700 ~/certs/testconn chmod 644 ~/certs/testconn/* chmod 600 ~/certs/testconn/private.pem.key
  3. Ejecute este comando para revisar los permisos de sus directorios y archivos de certificados.

    ls -l ~/certs/testconn

    El resultado del comando debe ser el mismo que el que se muestra aquí, excepto que las fechas y horas de los archivos serán diferentes.

    -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

En este punto, ya tiene los archivos de certificado del dispositivo instalados en su Raspberry Pi y puede continuar con Crea recursos AWS IoT.

Crea recursos AWS IoT

Este procedimiento aprovisiona el dispositivo AWS IoT mediante la creación de los recursos que el dispositivo necesita para acceder a las AWS IoT funciones y los servicios.

Para aprovisionar su dispositivo en AWS IoT
  1. En la ventana del terminal de su ordenador host local, introduzca el siguiente comando para obtener la dirección del punto de conexión de datos de dispositivo correspondiente a su Cuenta de AWS.

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

    El comando de los pasos anteriores devuelve una respuesta similar a la siguiente. Anote el valor endpointAddress: lo necesitará más adelante.

    { "endpointAddress": "a3qjEXAMPLEffp-ats.iot.us-west-2.amazonaws.com" }
  2. Ingresa este comando para crear un recurso AWS IoT para tu Raspberry Pi.

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

    Si se AWS IoT creó tu recurso, el comando devuelve una respuesta como esta.

    { "thingName": "DevCliTestThing", "thingArn": "arn:aws:iot:us-west-2:57EXAMPLE833:thing/DevCliTestThing", "thingId": "8ea78707-32c3-4f8a-9232-14bEXAMPLEfd" }
  3. En la ventana del terminal:

    1. Abra un editor de texto, como nano.

    2. Copie este documento JSON de política y péguelo en su editor de texto abierto.

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

      Este documento de política otorga generosamente a todos los permisos de recursos para conectarse, recibir, publicar y suscribirse. Normalmente, las políticas solo otorgan permiso a recursos específicos para realizar acciones específicas. Sin embargo, para la prueba inicial de conectividad del dispositivo, se utiliza esta política demasiado general y permisiva para minimizar la posibilidad de que se produzca un problema de acceso durante la prueba. En los siguientes tutoriales, se utilizarán documentos de políticas con un alcance más limitado para demostrar las prácticas recomendadas de diseño de políticas.

    3. Guarde el archivo en el editor de texto como ~/policies/dev_cli_test_thing_policy.json.

  4. Ejecute este comando para usar el documento de política de los pasos anteriores para crear una AWS IoT política.

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

    Si se crea la política, el comando devuelve una respuesta como esta.

    { "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. Ejecute este comando para asociar la política al certificado del dispositivo. Reemplace certificateArn por el valor certificateArn que guardó anteriormente.

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

    Si se ejecuta correctamente, este comando no devuelve nada.

  6. Ejecute este comando para adjuntar el certificado del dispositivo al recurso AWS IoT del objeto. Reemplace certificateArn por el valor certificateArn que guardó anteriormente.

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

    Si se ejecuta correctamente, este comando no devuelve nada.

Una vez que hayas aprovisionado correctamente el dispositivo AWS IoT, estarás listo para continuar Configura el cliente AWS IoT del dispositivo para probar la conectividad haciéndolo.