View a markdown version of this page

Points de terminaison FIPS - AWS IoT Greengrass

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Points de terminaison FIPS

AWS IoT Greengrass prend en charge l'utilisation des points de terminaison FIPS (Federal Information Processing Standard (FIPS) 140-2). Lorsque le mode FIPS est activé, toutes les transmissions de données, y compris les protocoles HTTP et MQTT, vers les AWS Cloud services doivent invoquer et établir des connexions avec les FIPS-compliant points de terminaison correspondants (FIPS - Amazon Web Services ()).AWS

Communications MQTT pour AWS IoT utiliser le point de terminaison FIPS du plan de données IoT (connexion aux points de terminaison AWS IoT FIPS - AWS IoT Core) et la AWS bibliothèque cryptographique développée aws-lc. FIPS-compliant

Pour les communications HTTP dans Greengrass :

  • Pour les composants du noyau et du plug-in, tous les clients HTTP du SDK sont configurés avec des points de terminaison FIPS en définissant la propriété système sur true ; AWS_USE_FIPS_ENDPOINT

  • Pour les composants génériques, tous les composants commencent par la propriété système AWS_USE_FIPS_ENDPOINT définie sur true. Ce processus garantit que les clients HTTP du SDK utilisés par ces composants génériques envoient des requêtes aux FIPS-compliant terminaux.

Note

Dans le cas de Stream Manager, Nucleus transmet la variable d'environnement AWS_GG_FIPS_MODE. Cette variable d'environnement permet aux clients HTTP utilisés dans le Stream Manager d'identifier et de se connecter au point de FIPS-compliant terminaison correspondant.

AWS IoT Greengrass propose deux méthodes pour activer le mode FIPS : le provisionnement et le déploiement. Pour activer le mode FIPS, vous devez définir le paramètre fipsMode de configuration sur true, Nucleus définit ensuite la propriété AWS_USE_FIPS_ENDPOINT système sur true et la propage en tant que variable d'environnement à tous les autres composants. En outre, AWS IoT Greengrass téléchargera un certificat CA racine (CA3) et l'ajoutera au fichier racine CA.pem (ou AmazonRootCA1.pem) existant. Si vous activez FIPS via un nouveau déploiement, Nucleus redémarrera pour s'assurer que la propriété système prend effet après l'activation du mode FIPS.

Outre la configuration du fipsMode paramètre, vous devez également configurer iotDataEndpoint les greengrassDataEndpoint paramètres iotCredEndpoint et. Pour plus d'informations, consultez le document correspondant ci-dessous.

Activez les points de terminaison FIPS avec le déploiement

Obtenez les AWS IoT points de terminaison qui vous Compte AWS conviennent et enregistrez-les pour les utiliser ultérieurement. Votre appareil utilise ces points de terminaison pour se connecter AWS IoT. Deux points de terminaison sont requis, le iotDataEndpoint et leiotCredEndpoint. Procédez comme suit :

  1. Obtenez le point de terminaison de données FIPS de votre région dans les points de terminaison du plan de données AWS IoT Core FIPS. Le point de terminaison de données FIPS pour vous Compte AWS devrait ressembler à ceci : data.iot-fips.us-west-2.amazonaws.com

  2. Obtenez le point de terminaison des informations d'identification FIPS pour votre région dans les points de terminaison du plan de données AWS IoT Core FIPS. Le point de terminaison de vos informations d'identification FIPS Compte AWS devrait ressembler à ceci : data.credentials.iot-fips.us-west-2.amazonaws.com

Ensuite, pour activer FIPS lors d'un déploiement, vous devez appliquer la configuration suivante à Nucleus. La configuration à fusionner lors du déploiement est la suivante.

Console
Configuration à fusionner
{ "fipsMode": "true", "iotDataEndpoint": "data.iot-fips.us-west-2.amazonaws.com", "greengrassDataPlaneEndpoint": "iotData", "iotCredEndpoint": "data.credentials.iot-fips.us-west-2.amazonaws.com" }
AWS CLI

La commande suivante crée un déploiement sur un périphérique principal.

aws greengrassv2 create-deployment --cli-input-json file://dashboard-deployment.json

Le dashboard-deployment.json fichier contient le document JSON suivant.

{ "targetArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "deploymentName": "Deployment for MyGreengrassCore", "components": { "aws.greengrass.Nucleus": { "componentVersion": "2.13.0", "configurationUpdate": { "merge":{\"fipsMode\":\"true\",\"iotDataEndpoint\":\"data.iot-fips.us-west-2.amazonaws.com\",\"greengrassDataPlaneEndpoint\":\"iotData\",\"iotCredEndpoint\":\"data.credentials.iot-fips.us-west-2.amazonaws.com\"}" } } } }
Greengrass CLI

La commande Greengrass CLI suivante crée un déploiement local sur un périphérique principal.

sudo greengrass-cli deployment create \ --recipeDir recipes \ --artifactDir artifacts \ --merge "aws.greengrass.Nucleus=2.13.0" \ --update-config dashboard-configuration.json

Le dashboard-configuration.json fichier contient le document JSON suivant.

{ "aws.greengrass.Nucleus": { "MERGE": { "fipsMode": "true", "iotDataEndpoint": "data.iot-fips.us-west-2.amazonaws.com", "greengrassDataPlaneEndpoint": "iotData", "iotCredEndpoint": "data.credentials.iot-fips.us-west-2.amazonaws.com" } } }

Installez Nucleus avec des terminaux FIPS avec provisionnement manuel des ressources

Provisionnez manuellement AWS les ressources pour les appareils AWS IoT Greengrass V2 principaux dotés de points de terminaison FIPS

Important

Avant de télécharger le logiciel AWS IoT Greengrass Core, vérifiez que votre appareil principal répond à la configuration requise pour installer et exécuter le logiciel AWS IoT Greengrass Core v2.0.

Retrieve AWS IoT points de terminaison

Obtenez les AWS IoT points de terminaison qui vous Compte AWS conviennent et enregistrez-les pour les utiliser ultérieurement. Votre appareil utilise ces points de terminaison pour se connecter AWS IoT. Deux points de terminaison sont requis, le iotDataEndpoint et leiotCredEndpoint. Procédez comme suit :

  1. Obtenez le point de terminaison de données FIPS de votre région dans les points de terminaison du plan de données AWS IoT Core FIPS. Le point de terminaison de données FIPS pour vous Compte AWS devrait ressembler à ceci : data.iot-fips.us-west-2.amazonaws.com

  2. Obtenez le point de terminaison des informations d'identification FIPS pour votre région dans les points de terminaison du plan de données AWS IoT Core FIPS. Le point de terminaison de vos informations d'identification FIPS Compte AWS devrait ressembler à ceci : data.credentials.iot-fips.us-west-2.amazonaws.com

Créez un AWS IoT thing

AWS IoT les objets représentent des périphériques et des entités logiques qui se connectent à AWS IoT. Les appareils principaux de Greengrass sont des AWS IoT objets. Lorsque vous enregistrez un appareil en tant qu' AWS IoT objet, cet appareil peut utiliser un certificat numérique pour s'authentifier. AWS

Dans cette section, vous créez un AWS IoT objet qui représente votre appareil.

Pour créer un AWS IoT thing
  1. Créez AWS IoT ce que vous voulez pour votre appareil. Sur votre ordinateur de développement, exécutez la commande suivante.

    • MyGreengrassCoreRemplacez-le par le nom de l'objet à utiliser. Ce nom est également le nom de votre appareil principal Greengrass.

      Note

      Le nom de l'objet ne peut pas contenir deux points (:).

    aws iot create-thing --thing-name MyGreengrassCore

    La réponse ressemble à l'exemple suivant, si la demande aboutit.

    { "thingName": "MyGreengrassCore", "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "thingId": "8cb4b6cd-268e-495d-b5b9-1713d71dbf42" }
  2. (Facultatif) Ajoutez l' AWS IoT objet à un groupe d'objets nouveau ou existant. Vous utilisez des groupes d'objets pour gérer des flottes d'appareils principaux de Greengrass. Lorsque vous déployez des composants logiciels sur vos appareils, vous pouvez cibler des appareils individuels ou des groupes d'appareils. Vous pouvez ajouter un appareil à un groupe d'objets avec un déploiement Greengrass actif pour déployer les composants logiciels de ce groupe d'objets sur l'appareil. Procédez comme suit :

    1. (Facultatif) Créez un AWS IoT groupe d'objets.

      • MyGreengrassCoreGroupRemplacez-le par le nom du groupe d'objets à créer.

        Note

        Le nom du groupe d'objets ne peut pas contenir deux points (:).

      aws iot create-thing-group --thing-group-name MyGreengrassCoreGroup

      La réponse ressemble à l'exemple suivant, si la demande aboutit.

      { "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" }
    2. Ajoutez l' AWS IoT objet à un groupe d'objets.

      • Remplacez MyGreengrassCore par le nom de votre AWS IoT objet.

      • Remplacez MyGreengrassCoreGroup par le nom du groupe d'objets.

      aws iot add-thing-to-thing-group --thing-name MyGreengrassCore --thing-group-name MyGreengrassCoreGroup

      La commande n'a aucun résultat si la demande aboutit.

Créez le certificat Thing

Lorsque vous enregistrez un appareil en tant qu' AWS IoT objet, cet appareil peut utiliser un certificat numérique pour s'authentifier. AWS Ce certificat permet à l'appareil de communiquer avec AWS IoT et AWS IoT Greengrass.

Dans cette section, vous allez créer et télécharger des certificats auxquels votre appareil peut se connecter AWS.

Si vous souhaitez configurer le logiciel AWS IoT Greengrass Core pour utiliser un module de sécurité matériel (HSM) afin de stocker en toute sécurité la clé privée et le certificat, suivez les étapes pour créer le certificat à partir d'une clé privée dans un HSM. Sinon, suivez les étapes pour créer le certificat et la clé privée dans le AWS IoT service. La fonctionnalité de sécurité matérielle n'est disponible que sur les appareils Linux. Pour plus d'informations sur la sécurité matérielle et la configuration requise pour l'utiliser, consultezIntégration de sécurité matérielle.

Créez le certificat et la clé privée dans le AWS IoT web

Pour créer le certificat d'objet
  1. Créez un dossier dans lequel vous téléchargez les certificats AWS IoT correspondants.

    mkdir greengrass-v2-certs
  2. Créez et téléchargez les certificats AWS IoT correspondants.

    aws iot create-keys-and-certificate --set-as-active --certificate-pem-outfile greengrass-v2-certs/device.pem.crt --public-key-outfile greengrass-v2-certs/public.pem.key --private-key-outfile greengrass-v2-certs/private.pem.key

    La réponse ressemble à l'exemple suivant, si la demande aboutit.

    { "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\ MIIBIjANBgkqhkEXAMPLEQEFAAOCAQ8AMIIBCgKCAQEAEXAMPLE1nnyJwKSMHw4h\ MMEXAMPLEuuN/dMAS3fyce8DW/4+EXAMPLEyjmoF/YVF/gHr99VEEXAMPLE5VF13\ 59VK7cEXAMPLE67GK+y+jikqXOgHh/xJTwo+sGpWEXAMPLEDz18xOd2ka4tCzuWEXAMPLEahJbYkCPUBSU8opVkR7qkEXAMPLE1DR6sx2HocliOOLtu6Fkw91swQWEXAMPLE\\GB3ZPrNh0PzQYvjUStZeccyNCx2EXAMPLEvp9mQOUXP6plfgxwKRX2fEXAMPLEDa\ hJLXkX3rHU2xbxJSq7D+XEXAMPLEcw+LyFhI5mgFRl88eGdsAEXAMPLElnI9EesG\ FQIDAQAB\ -----END PUBLIC KEY-----\ ", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\ key omitted for security reasons\ -----END RSA PRIVATE KEY-----\ " } }

    Enregistrez l'Amazon Resource Name (ARN) du certificat à utiliser pour configurer le certificat ultérieurement.

Création du certificat à partir d'une clé privée dans un HSM

Note

Cette fonctionnalité est disponible pour les versions 2.5.3 et ultérieures du composant Greengrass nucleus. AWS IoT Greengrass ne prend pas actuellement en charge cette fonctionnalité sur les appareils Windows Core.

Pour créer le certificat d'objet
  1. Sur le périphérique principal, initialisez un jeton PKCS #11 dans le HSM et générez une clé privée. La clé privée doit être une clé RSA d'une taille de RSA-2048 clé (ou supérieure) ou une clé ECC.

    Note

    Pour utiliser un module de sécurité matériel avec des clés ECC, vous devez utiliser Greengrass nucleus v2.5.6 ou version ultérieure.

    Pour utiliser un module de sécurité matériel et un gestionnaire de secrets, vous devez utiliser un module de sécurité matériel avec des clés RSA.

    Consultez la documentation de votre HSM pour savoir comment initialiser le jeton et générer la clé privée. Si votre HSM prend en charge les ID d'objet, spécifiez-en un lorsque vous générez la clé privée. Enregistrez l'ID du slot, le code PIN utilisateur, l'étiquette de l'objet, l'ID de l'objet (si votre HSM en utilise un) que vous spécifiez lorsque vous initialisez le jeton et générez la clé privée. Vous utiliserez ces valeurs ultérieurement lorsque vous importerez le certificat d'objet dans le HSM et que vous configurerez le logiciel AWS IoT Greengrass Core.

  2. Créez une demande de signature de certificat (CSR) à partir de la clé privée. AWS IoT utilise ce CSR pour créer un certificat d'objet pour la clé privée que vous avez générée dans le HSM. Pour plus d'informations sur la création d'un CSR à partir de la clé privée, consultez la documentation de votre HSM. Le CSR est un fichier, tel queiotdevicekey.csr.

  3. Copiez le CSR de l'appareil vers votre ordinateur de développement. Si SSH et SCP sont activés sur l'ordinateur de développement et sur le périphérique, vous pouvez utiliser la scp commande sur votre ordinateur de développement pour transférer le CSR. device-ip-addressRemplacez-la par l'adresse IP de votre appareil et remplacez-la ~/iotdevicekey.csr par le chemin d'accès au fichier CSR sur l'appareil.

    scp device-ip-address:~/iotdevicekey.csr iotdevicekey.csr
  4. Sur votre ordinateur de développement, créez un dossier dans lequel vous téléchargerez le certificat AWS IoT correspondant.

    mkdir greengrass-v2-certs
  5. Utilisez le fichier CSR pour créer et télécharger le certificat correspondant à l' AWS IoT objet sur votre ordinateur de développement.

    aws iot create-certificate-from-csr --set-as-active --certificate-signing-request=file://iotdevicekey.csr --certificate-pem-outfile greengrass-v2-certs/device.pem.crt

    La réponse ressemble à l'exemple suivant, si la demande aboutit.

    { "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificateId": "aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4", "certificatePem": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----" }

    Enregistrez l'ARN du certificat à utiliser pour configurer le certificat ultérieurement.

Configurez ensuite le certificat d'objet. Pour de plus amples informations, veuillez consulter Configurer le certificat d'objet.

Création d'un rôle d'échange de jetons

Les appareils principaux de Greengrass utilisent un rôle de service IAM, appelé rôle d'échange de jetons, pour autoriser les appels aux AWS services. L'appareil utilise le fournisseur AWS IoT d'informations d'identification pour obtenir des AWS informations d'identification temporaires pour ce rôle, ce qui lui permet d'interagir avec l'appareil AWS IoT, d'envoyer des journaux à Amazon CloudWatch Logs et de télécharger des artefacts de composants personnalisés depuis Amazon S3. Pour de plus amples informations, veuillez consulter Autoriser les appareils principaux à interagir avec les AWS services.

Vous utilisez un alias de AWS IoT rôle pour configurer le rôle d'échange de jetons pour les appareils principaux de Greengrass. Les alias de rôle vous permettent de modifier le rôle d'échange de jetons pour un appareil tout en conservant la même configuration. Pour plus d'informations, consultez la section Autorisation des appels directs vers les AWS services dans le Guide du AWS IoT Core développeur.

Dans cette section, vous allez créer un rôle IAM d'échange de jetons et un alias de AWS IoT rôle qui pointe vers ce rôle. Si vous avez déjà configuré un appareil principal Greengrass, vous pouvez utiliser son rôle d'échange de jetons et son alias de rôle au lieu d'en créer de nouveaux. Ensuite, vous configurez l'appareil de votre appareil AWS IoT pour qu'il utilise ce rôle et cet alias.

Pour créer un rôle IAM d'échange de jetons
  1. Créez un rôle IAM que votre appareil peut utiliser comme rôle d'échange de jetons. Procédez comme suit :

    1. Créez un fichier contenant le document de politique de confiance requis par le rôle d'échange de jetons.

      Par exemple, sur un Linux-based système, vous pouvez exécuter la commande suivante pour utiliser GNU nano afin de créer le fichier.

      nano device-role-trust-policy.json

      Copiez le code JSON suivant dans le fichier.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    2. Créez le rôle d'échange de jetons à l'aide du document de politique de confiance.

      • GreengrassV2TokenExchangeRoleRemplacez-le par le nom du rôle IAM à créer.

      aws iam create-role --role-name GreengrassV2TokenExchangeRole --assume-role-policy-document file://device-role-trust-policy.json

      La réponse ressemble à l'exemple suivant, si la demande aboutit.

      { "Role": { "Path": "/", "RoleName": "GreengrassV2TokenExchangeRole", "RoleId": "AROAZ2YMUHYHK5OKM77FB", "Arn": "arn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole", "CreateDate": "2021-02-06T00:13:29+00:00", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } }
    3. Créez un fichier contenant le document de politique d'accès requis par le rôle d'échange de jetons.

      Par exemple, sur un Linux-based système, vous pouvez exécuter la commande suivante pour utiliser GNU nano afin de créer le fichier.

      nano device-role-access-policy.json

      Copiez le code JSON suivant dans le fichier.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams", "s3:GetBucketLocation" ], "Resource": "*" } ] }
      Note

      Cette politique d'accès n'autorise pas l'accès aux artefacts des composants dans les compartiments S3. Pour déployer des composants personnalisés qui définissent des artefacts dans Amazon S3, vous devez ajouter des autorisations au rôle afin de permettre à votre appareil principal de récupérer les artefacts des composants. Pour de plus amples informations, veuillez consulter Autoriser l'accès aux compartiments S3 pour les artefacts des composants.

      Si vous ne disposez pas encore d'un compartiment S3 pour les artefacts des composants, vous pouvez ajouter ces autorisations ultérieurement après avoir créé un compartiment.

    4. Créez la politique IAM à partir du document de politique.

      • Remplacez GreengrassV2TokenExchangeRoleAccess par le nom de la politique IAM à créer.

      aws iam create-policy --policy-name GreengrassV2TokenExchangeRoleAccess --policy-document file://device-role-access-policy.json

      La réponse ressemble à l'exemple suivant, si la demande aboutit.

      { "Policy": { "PolicyName": "GreengrassV2TokenExchangeRoleAccess", "PolicyId": "ANPAZ2YMUHYHACI7C5Z66", "Arn": "arn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "PermissionsBoundaryUsageCount": 0, "IsAttachable": true, "CreateDate": "2021-02-06T00:37:17+00:00", "UpdateDate": "2021-02-06T00:37:17+00:00" } }
    5. Associez la politique IAM au rôle d'échange de jetons.

      • Remplacez GreengrassV2TokenExchangeRole par le nom du rôle IAM.

      • Remplacez l'ARN de la politique par l'ARN de la stratégie IAM que vous avez créée à l'étape précédente.

      aws iam attach-role-policy --role-name GreengrassV2TokenExchangeRole --policy-arn arn:aws:iam::123456789012:policy/GreengrassV2TokenExchangeRoleAccess

      La commande n'a aucun résultat si la demande aboutit.

  2. Créez un alias de AWS IoT rôle qui pointe vers le rôle d'échange de jetons.

    • GreengrassCoreTokenExchangeRoleAliasRemplacez-le par le nom de l'alias de rôle à créer.

    • Remplacez l'ARN du rôle par l'ARN du rôle IAM que vous avez créé à l'étape précédente.

    aws iot create-role-alias --role-alias GreengrassCoreTokenExchangeRoleAlias --role-arn arn:aws:iam::123456789012:role/GreengrassV2TokenExchangeRole

    La réponse ressemble à l'exemple suivant, si la demande aboutit.

    { "roleAlias": "GreengrassCoreTokenExchangeRoleAlias", "roleAliasArn": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" }
    Note

    Pour créer un alias de rôle, vous devez être autorisé à transmettre le rôle IAM d'échange de jetons à AWS IoT. Si vous recevez un message d'erreur lorsque vous tentez de créer un alias de rôle, vérifiez que votre AWS utilisateur dispose de cette autorisation. Pour plus d'informations, consultez la section Octroi à un utilisateur des autorisations pour transmettre un rôle à un AWS service dans le Guide de Gestion des identités et des accès AWS l'utilisateur.

  3. Créez et joignez une AWS IoT politique qui permet à votre appareil principal Greengrass d'utiliser l'alias de rôle pour assumer le rôle d'échange de jetons. Si vous avez déjà configuré un appareil principal Greengrass, vous pouvez associer sa AWS IoT politique d'alias de rôle au lieu d'en créer un nouveau. Procédez comme suit :

    1. (Facultatif) Créez un fichier contenant le document AWS IoT de politique requis par l'alias de rôle.

      Par exemple, sur un Linux-based système, vous pouvez exécuter la commande suivante pour utiliser GNU nano afin de créer le fichier.

      nano greengrass-v2-iot-role-alias-policy.json

      Copiez le code JSON suivant dans le fichier.

      • Remplacez l'ARN de la ressource par l'ARN de votre alias de rôle.

      { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:AssumeRoleWithCertificate", "Resource": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" } ] }
    2. Créez une AWS IoT politique à partir du document de stratégie.

      • Remplacez GreengrassCoreTokenExchangeRoleAliasPolicy par le nom de la AWS IoT politique à créer.

      aws iot create-policy --policy-name GreengrassCoreTokenExchangeRoleAliasPolicy --policy-document file://greengrass-v2-iot-role-alias-policy.json

      La réponse ressemble à l'exemple suivant, si la demande aboutit.

      { "policyName": "GreengrassCoreTokenExchangeRoleAliasPolicy", "policyArn": "arn:aws:iot:us-west-2:123456789012:policy/GreengrassCoreTokenExchangeRoleAliasPolicy", "policyDocument": "{ \\"Version\\":\\"2012-10-17\\", \\"Statement\\": [ { \\"Effect\\": \\"Allow\\", \\"Action\\": \\"iot:AssumeRoleWithCertificate\\", \\"Resource\\": \\"arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias\\" } ] }", "policyVersionId": "1" }
    3. Joignez la AWS IoT politique au certificat de l' AWS IoT objet.

      • Remplacez GreengrassCoreTokenExchangeRoleAliasPolicy par le nom de la AWS IoT politique d'alias de rôle.

      • Remplacez l'ARN cible par l'ARN du certificat correspondant à votre AWS IoT produit.

      aws iot attach-policy --policy-name GreengrassCoreTokenExchangeRoleAliasPolicy --target arn:aws:iot:us-west-2:123456789012:cert/aa0b7958770878eabe251d8a7ddd547f4889c524c9b574ab9fbf65f32248b1d4

      La commande n'a aucun résultat si la demande aboutit.

Télécharger les certificats sur l'appareil

Auparavant, vous avez téléchargé le certificat de votre appareil sur votre ordinateur de développement. Dans cette section, vous copiez le certificat sur votre appareil principal afin de configurer l'appareil avec les certificats auxquels il se connecte AWS IoT. Vous pouvez également télécharger le certificat d'autorité de certification (CA) racine d'Amazon. Si vous utilisez un HSM, vous importez également le fichier de certificat dans le HSM dans cette section.

  • Si vous avez créé le certificat d'objet et la clé privée dans le AWS IoT service plus tôt, suivez les étapes pour télécharger les certificats avec clé privée et fichiers de certificats.

  • Si vous avez créé le certificat d'objet à partir d'une clé privée dans un module de sécurité matériel (HSM) plus tôt, suivez les étapes pour télécharger les certificats contenant la clé privée et le certificat dans un HSM.

Télécharger des certificats avec clé privée et des fichiers de certificats

Pour télécharger des certificats sur l'appareil
  1. Copiez le certificat de l' AWS IoT objet depuis votre ordinateur de développement vers le périphérique. Si SSH et SCP sont activés sur l'ordinateur de développement et sur le périphérique, vous pouvez utiliser la scp commande sur votre ordinateur de développement pour transférer le certificat. device-ip-addressRemplacez-la par l'adresse IP de votre appareil.

    scp -r greengrass-v2-certs/ device-ip-address:~
  2. Créez le dossier racine de Greengrass sur l'appareil. Vous installerez ultérieurement le logiciel AWS IoT Greengrass Core dans ce dossier.

    Note

    Pour Windows, la limitation de la longueur du chemin est de 260 caractères. Si vous utilisez Windows, utilisez un dossier racine comme C:\greengrass\v2 ou D:\greengrass\v2 pour maintenir les chemins des composants Greengrass en dessous de la limite de 260 caractères.

    Linux or Unix
    • /greengrass/v2Remplacez-le par le dossier à utiliser.

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    mkdir C:\greengrass\v2
    PowerShell
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    mkdir C:\greengrass\v2
  3. (Linux uniquement) Définissez les autorisations du parent du dossier racine de Greengrass.

    • /greengrassRemplacez-le par le parent du dossier racine.

    sudo chmod 755 /greengrass
  4. Copiez les AWS IoT certificats d'objets dans le dossier racine de Greengrass.

    Linux or Unix
    • Remplacez-le /greengrass/v2 par le dossier racine de Greengrass.

    sudo cp -R ~/greengrass-v2-certs/* /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    robocopy %USERPROFILE%\greengrass-v2-certs C:\greengrass\v2 /E
    PowerShell
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    cp -Path ~\greengrass-v2-certs\* -Destination C:\greengrass\v2
  5. Téléchargez le certificat d'autorité de certification (CA) racine d'Amazon. AWS IoT les certificats sont associés au certificat CA racine d'Amazon par défaut. Téléchargez le certificat CA1 et le certificat CA3.

    Linux or Unix
    • Remplacez /greengrass/v2 ou C:\greengrass\v2 par le dossier racine de Greengrass.

    sudo curl -o /greengrass/v2/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem sudo curl -o - https://www.amazontrust.com/repository/AmazonRootCA3.pem >> /greengrass/v2/AmazonRootCA1.pem
    Windows Command Prompt (CMD)
    curl -o C:\greengrass\v2\\AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
    PowerShell
    iwr -Uri https://www.amazontrust.com/repository/AmazonRootCA1.pem -OutFile C:\greengrass\v2\\AmazonRootCA1.pem

Télécharger des certificats avec la clé privée et le certificat dans un HSM

Note

Cette fonctionnalité est disponible pour la version 2.5.3 et les versions ultérieures du composant Greengrass nucleus. AWS IoT Greengrass ne prend pas actuellement en charge cette fonctionnalité sur les appareils Windows Core.

Pour télécharger des certificats sur l'appareil
  1. Copiez le certificat de l' AWS IoT objet depuis votre ordinateur de développement vers le périphérique. Si SSH et SCP sont activés sur l'ordinateur de développement et sur le périphérique, vous pouvez utiliser la scp commande sur votre ordinateur de développement pour transférer le certificat. device-ip-addressRemplacez-la par l'adresse IP de votre appareil.

    scp -r greengrass-v2-certs/ device-ip-address:~
  2. Créez le dossier racine de Greengrass sur l'appareil. Vous installerez ultérieurement le logiciel AWS IoT Greengrass Core dans ce dossier.

    Note

    Pour Windows, la limitation de la longueur du chemin est de 260 caractères. Si vous utilisez Windows, utilisez un dossier racine comme C:\greengrass\v2 ou D:\greengrass\v2 pour maintenir les chemins des composants Greengrass en dessous de la limite de 260 caractères.

    Linux or Unix
    • /greengrass/v2Remplacez-le par le dossier à utiliser.

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    mkdir C:\greengrass\v2
    PowerShell
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    mkdir C:\greengrass\v2
  3. (Linux uniquement) Définissez les autorisations du parent du dossier racine de Greengrass.

    • /greengrassRemplacez-le par le parent du dossier racine.

    sudo chmod 755 /greengrass
  4. Importez le fichier de certificat de l'~/greengrass-v2-certs/device.pem.crtobjet dans le HSM. Consultez la documentation de votre HSM pour savoir comment y importer des certificats. Importez le certificat en utilisant les mêmes jeton, identifiant d'emplacement, code PIN utilisateur, étiquette d'objet et identifiant d'objet (si votre HSM en utilise un) que vous avez précédemment généré la clé privée dans le HSM.

    Note

    Si vous avez généré la clé privée précédemment sans ID d'objet et que le certificat possède un ID d'objet, définissez l'ID d'objet de la clé privée sur la même valeur que le certificat. Consultez la documentation de votre HSM pour savoir comment définir l'ID d'objet pour l'objet clé privée.

  5. (Facultatif) Supprimez le fichier de certificat d'objet afin qu'il n'existe que dans le HSM.

    rm ~/greengrass-v2-certs/device.pem.crt
  6. Téléchargez le certificat d'autorité de certification (CA) racine d'Amazon. AWS IoT les certificats sont associés au certificat CA racine d'Amazon par défaut. Téléchargez le certificat CA1 et le certificat CA3.

    Linux or Unix
    • Remplacez /greengrass/v2 ou C:\greengrass\v2 par le dossier racine de Greengrass.

    sudo curl -o /greengrass/v2/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem sudo curl -o - https://www.amazontrust.com/repository/AmazonRootCA3.pem >> /greengrass/v2/AmazonRootCA1.pem
    Windows Command Prompt (CMD)
    curl -o C:\greengrass\v2\\AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
    PowerShell
    iwr -Uri https://www.amazontrust.com/repository/AmazonRootCA1.pem -OutFile C:\greengrass\v2\\AmazonRootCA1.pem

Configuration de l'environnement de l'appareil

Suivez les étapes de cette section pour configurer un appareil Linux ou Windows à utiliser comme périphérique AWS IoT Greengrass principal.

Configurer un appareil Linux

Pour configurer un appareil Linux pour AWS IoT Greengrass V2
  1. Installez le moteur d'exécution Java dont le logiciel AWS IoT Greengrass Core a besoin pour fonctionner. Nous vous recommandons d'utiliser les versions de support à long terme d'Amazon Corretto ou d'OpenJDK. La version 8 ou supérieure est requise. Les commandes suivantes vous indiquent comment installer OpenJDK sur votre appareil.

    • Pour Debian-based nos Ubuntu-based distributions :

      sudo apt install default-jdk
    • Pour les Hat-based distributions Red :

      sudo yum install java-11-openjdk-devel
    • Dans Amazon Linux 2 :

      sudo amazon-linux-extras install java-openjdk11
    • Pour Amazon Linux 2023 :

      sudo dnf install java-11-amazon-corretto -y

    Une fois l'installation terminée, exécutez la commande suivante pour vérifier que Java s'exécute sur votre appareil Linux.

    java -version

    La commande imprime la version de Java qui s'exécute sur le périphérique. Par exemple, sur une Debian-based distribution, la sortie peut ressembler à l'exemple suivant.

    openjdk version "11.0.9.1" 2020-11-04
    OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
    OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
  2. (Facultatif) Créez l'utilisateur et le groupe système par défaut qui exécutent les composants sur le périphérique. Vous pouvez également choisir de laisser le programme d'installation du logiciel AWS IoT Greengrass Core créer cet utilisateur et ce groupe lors de l'installation à l'aide de l'argument --component-default-user installer. Pour de plus amples informations, veuillez consulter Arguments d'installation.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Vérifiez que l'utilisateur qui exécute le logiciel AWS IoT Greengrass Core (généralementroot) est autorisé à s'exécuter sudo avec n'importe quel utilisateur et n'importe quel groupe.

    1. Exécutez la commande suivante pour ouvrir le /etc/sudoers fichier.

      sudo visudo
    2. Vérifiez que l'autorisation de l'utilisateur ressemble à l'exemple suivant.

      root ALL=(ALL:ALL) ALL
  4. (Facultatif) Pour exécuter des fonctions Lambda conteneurisées, vous devez activer les cgroups v1, et vous devez activer et monter les cgroups de mémoire et de périphériques. Si vous ne prévoyez pas d'exécuter des fonctions Lambda conteneurisées, vous pouvez ignorer cette étape.

    Pour activer ces options de cgroups, démarrez le périphérique avec les paramètres du noyau Linux suivants.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Pour plus d'informations sur l'affichage et la configuration des paramètres du noyau de votre appareil, consultez la documentation de votre système d'exploitation et de votre chargeur de démarrage. Suivez les instructions pour définir définitivement les paramètres du noyau.

  5. Installez toutes les autres dépendances requises sur votre appareil, comme indiqué dans la liste des exigences figurant dansExigences relatives aux dispositifs.

Configurer un appareil Windows

Note

Cette fonctionnalité est disponible pour la version 2.5.0 et les versions ultérieures du composant Greengrass nucleus.

Pour configurer un appareil Windows pour AWS IoT Greengrass V2
  1. Installez le moteur d'exécution Java dont le logiciel AWS IoT Greengrass Core a besoin pour fonctionner. Nous vous recommandons d'utiliser les versions de support à long terme d'Amazon Corretto ou d'OpenJDK. La version 8 ou supérieure est requise.

  2. Vérifiez si Java est disponible sur la variable système PATH et ajoutez-la si ce n'est pas le cas. Le LocalSystem compte exécute le logiciel AWS IoT Greengrass Core. Vous devez donc ajouter Java à la variable système PATH au lieu de la variable utilisateur PATH pour votre utilisateur. Procédez comme suit :

    1. Appuyez sur la touche Windows pour ouvrir le menu Démarrer.

    2. Tapez environment variables pour rechercher les options du système dans le menu Démarrer.

    3. Dans les résultats de recherche du menu Démarrer, choisissez Modifier les variables d'environnement du système pour ouvrir la fenêtre des propriétés du système.

    4. Choisissez des variables d'environnement... pour ouvrir la fenêtre Variables d'environnement.

    5. Sous Variables système, sélectionnez Path, puis choisissez Modifier. Dans la fenêtre Modifier la variable d'environnement, vous pouvez afficher chaque chemin sur une ligne distincte.

    6. Vérifiez si le chemin d'accès au bin dossier d'installation de Java est présent. Le chemin peut ressembler à l'exemple suivant.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Si le bin dossier de l'installation Java est absent de Path, choisissez Nouveau pour l'ajouter, puis cliquez sur OK.

  3. Ouvrez l'invite de commande Windows (cmd.exe) en tant qu'administrateur.

  4. Créez l'utilisateur par défaut dans le LocalSystem compte de l'appareil Windows. Remplacez-le password par un mot de passe sécurisé.

    net user /add ggc_user password
    Astuce

    Selon votre configuration Windows, le mot de passe de l'utilisateur peut être configuré pour expirer à une date ultérieure. Pour vous assurer que vos applications Greengrass continuent de fonctionner, suivez la date d'expiration du mot de passe et mettez-le à jour avant qu'il n'expire. Vous pouvez également configurer le mot de passe de l'utilisateur pour qu'il n'expire jamais.

    • Pour vérifier la date d'expiration d'un utilisateur et de son mot de passe, exécutez la commande suivante.

      net user ggc_user | findstr /C:expires
    • Pour configurer le mot de passe d'un utilisateur afin qu'il n'expire jamais, exécutez la commande suivante.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Si vous utilisez Windows 10 ou une version ultérieure où la wmic commande est obsolète, exécutez la commande suivante PowerShell .

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Téléchargez et installez l'PsExecutilitaire de Microsoft sur l'appareil.

  6. Utilisez l' PsExec utilitaire pour stocker le nom d'utilisateur et le mot de passe de l'utilisateur par défaut dans l'instance Credential Manager du LocalSystem compte. passwordRemplacez-le par le mot de passe utilisateur que vous avez défini précédemment.

    psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:password

    S'il PsExec License Agreement s'ouvre, choisissez Accept d'accepter la licence et exécutez la commande.

    Note

    Sur les appareils Windows, le LocalSystem compte exécute le noyau Greengrass et vous devez utiliser l' PsExec utilitaire pour stocker les informations utilisateur par défaut dans le LocalSystem compte. L'utilisation de l'application Credential Manager permet de stocker ces informations dans le compte Windows de l'utilisateur actuellement connecté, au lieu de ce LocalSystem compte.

Téléchargez le AWS IoT Greengrass Logiciel de base

Vous pouvez télécharger la dernière version du logiciel AWS IoT Greengrass Core à l'adresse suivante :

Note

Vous pouvez télécharger une version spécifique du logiciel AWS IoT Greengrass Core à partir de l'emplacement suivant. versionRemplacez-la par la version à télécharger.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Pour télécharger le AWS IoT Greengrass Logiciel de base
  1. Sur votre appareil principal, téléchargez le logiciel AWS IoT Greengrass Core dans un fichier nommégreengrass-nucleus-latest.zip.

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip -OutFile greengrass-nucleus-latest.zip

    Si vous téléchargez ce logiciel, vous acceptez le contrat de licence du logiciel Greengrass Core.

  2. (Facultatif) Pour vérifier la signature logicielle Greengrass Nucleus

    Note

    Cette fonctionnalité est disponible avec Greengrass Nucleus version 2.9.5 et versions ultérieures.

    1. Utilisez la commande suivante pour vérifier la signature de votre artefact Greengrass nucleus :

      Linux or Unix
      jarsigner -verify -certs -verbose greengrass-nucleus-latest.zip
      Windows Command Prompt (CMD)

      Le nom du fichier peut être différent selon la version du JDK que vous installez. jdk17.0.6_10Remplacez-la par la version du JDK que vous avez installée.

      "C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe" -verify -certs -verbose greengrass-nucleus-latest.zip
      PowerShell

      Le nom du fichier peut être différent selon la version du JDK que vous installez. jdk17.0.6_10Remplacez-la par la version du JDK que vous avez installée.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. L'jarsignerinvocation produit une sortie qui indique les résultats de la vérification.

      1. Si le fichier zip Greengrass nucleus est signé, la sortie contient l'instruction suivante :

        jar verified.
      2. Si le fichier zip Greengrass nucleus n'est pas signé, la sortie contient l'instruction suivante :

        jar is unsigned.
    3. Si vous avez fourni l'-certsoption Jarsigner en même temps que -verify les -verbose options, la sortie inclut également des informations détaillées sur le certificat du signataire.

  3. Décompressez le logiciel AWS IoT Greengrass Core dans un dossier de votre appareil. GreengrassInstallerRemplacez-le par le dossier que vous souhaitez utiliser.

    Linux or Unix
    unzip greengrass-nucleus-latest.zip -d GreengrassInstaller && rm greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    mkdir GreengrassInstaller && tar -xf greengrass-nucleus-latest.zip -C GreengrassInstaller && del greengrass-nucleus-latest.zip
    PowerShell
    Expand-Archive -Path greengrass-nucleus-latest.zip -DestinationPath .\\GreengrassInstaller rm greengrass-nucleus-latest.zip
  4. (Facultatif) Exécutez la commande suivante pour voir la version du logiciel AWS IoT Greengrass Core.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
Important

Si vous installez une version du noyau Greengrass antérieure à la version 2.4.0, ne supprimez pas ce dossier après avoir installé le AWS IoT Greengrass logiciel Core. Le logiciel AWS IoT Greengrass Core utilise les fichiers de ce dossier pour s'exécuter.

Si vous avez téléchargé la dernière version du logiciel, vous installez la version 2.4.0 ou ultérieure, et vous pouvez supprimer ce dossier après avoir installé le logiciel AWS IoT Greengrass Core.

Installer la   AWS IoT Greengrass Logiciel de base

Exécutez le programme d'installation avec des arguments qui spécifient les actions suivantes :

  • Effectuez l'installation à partir d'un fichier de configuration partiel qui spécifie d'utiliser les AWS ressources et les certificats que vous avez créés précédemment. Le logiciel AWS IoT Greengrass Core utilise un fichier de configuration qui spécifie la configuration de chaque composant Greengrass de l'appareil. Le programme d'installation crée un fichier de configuration complet à partir du fichier de configuration partiel que vous fournissez.

  • Spécifiez d'utiliser l'utilisateur ggc_user du système pour exécuter les composants logiciels sur le périphérique principal. Sur les appareils Linux, cette commande indique également d'utiliser le groupe ggc_group système, et le programme d'installation crée l'utilisateur et le groupe système pour vous.

  • Configurez le logiciel AWS IoT Greengrass Core en tant que service système qui s'exécute au démarrage. Sur les appareils Linux, cela nécessite le système d'initialisation Systemd.

    Important

    Sur les appareils Windows Core, vous devez configurer le logiciel AWS IoT Greengrass Core en tant que service système.

Pour plus d'informations sur les arguments que vous pouvez spécifier, consultezArguments d'installation.

Note

Si vous utilisez un appareil dont AWS IoT Greengrass la mémoire est limitée, vous pouvez contrôler la quantité de mémoire utilisée par le logiciel AWS IoT Greengrass Core. Pour contrôler l'allocation de mémoire, vous pouvez définir les options de taille de tas JVM dans le paramètre de jvmOptions configuration de votre composant Nucleus. Pour de plus amples informations, veuillez consulter Contrôlez l'allocation de mémoire grâce aux options JVM.

  • Si vous avez créé le certificat et la clé privée de l'objet dans le AWS IoT service plus tôt, suivez les étapes pour installer le logiciel AWS IoT Greengrass Core à l'aide de fichiers de clé privée et de certificat.

  • Si vous avez créé le certificat d'objet à partir d'une clé privée dans un module de sécurité matériel (HSM) plus tôt, suivez les étapes pour installer le logiciel AWS IoT Greengrass Core avec la clé privée et le certificat dans un HSM.

Installer la   AWS IoT Greengrass Logiciel de base avec clé privée et fichiers de certificats

Pour installer la   AWS IoT Greengrass Logiciel de base
  1. Vérifiez la version du logiciel AWS IoT Greengrass Core.

    • GreengrassInstallerRemplacez-le par le chemin d'accès au dossier contenant le logiciel.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Utilisez un éditeur de texte pour créer un fichier de configuration nommé config.yaml à fournir au programme d'installation.

    Par exemple, sur un Linux-based système, vous pouvez exécuter la commande suivante pour utiliser GNU nano afin de créer le fichier.

    nano GreengrassInstaller/config.yaml

    Copiez le contenu YAML suivant dans le fichier. Ce fichier de configuration partiel spécifie les paramètres du système et les paramètres du noyau de Greengrass.

    --- system: certificateFilePath: "/greengrass/v2/device.pem.crt" privateKeyPath: "/greengrass/v2/private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" rootpath: "/greengrass/v2" thingName: "MyGreengrassCore" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.18.0" configuration: awsRegion: "us-west-2" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" fipsMode: "true" iotDataEndpoint: "data.iot-fips.us-west-2.amazonaws.com" greengrassDataPlaneEndpoint: "iotData" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com"

    Ensuite, procédez comme suit :

    • Remplacez chaque instance de /greengrass/v2 par le dossier racine de Greengrass.

    • Remplacez MyGreengrassCore par le nom de l' AWS IoT objet.

    • 2.18.0Remplacez-la par la version du logiciel AWS IoT Greengrass Core.

    • Remplacez us-west-2 par l' Région AWS endroit où vous avez créé les ressources.

    • GreengrassCoreTokenExchangeRoleAliasRemplacez-le par le nom de l'alias du rôle d'échange de jetons.

    • Remplacez le iotDataEndpoint par votre point de terminaison de AWS IoT données.

    • Remplacez le point de terminaison iotCredEndpoint par vos AWS IoT informations d'identification.

  3. Exécutez le programme d'installation et spécifiez --init-config de fournir le fichier de configuration.

    • Remplacez /greengrass/v2 ou C:\greengrass\v2 par le dossier racine de Greengrass.

    • Remplacez chaque instance de GreengrassInstaller par le dossier dans lequel vous avez décompressé le programme d'installation.

    Linux or Unix
    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --init-config ./GreengrassInstaller/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true
    Windows Command Prompt (CMD)
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ^ -jar ./GreengrassInstaller/lib/Greengrass.jar ^ --init-config ./GreengrassInstaller/config.yaml ^ --component-default-user ggc_user ^ --setup-system-service true
    PowerShell
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ` -jar ./GreengrassInstaller/lib/Greengrass.jar ` --init-config ./GreengrassInstaller/config.yaml ` --component-default-user ggc_user ` --setup-system-service true
    Important

    Sur les appareils Windows Core, vous --setup-system-service true devez spécifier de configurer le logiciel AWS IoT Greengrass Core en tant que service système.

    Si vous le spécifiez--setup-system-service true, le programme d'installation imprime Successfully set up Nucleus as a system service s'il a configuré et exécuté le logiciel en tant que service système. Dans le cas contraire, le programme d'installation n'émet aucun message s'il installe le logiciel correctement.

    Note

    Vous ne pouvez pas utiliser deploy-dev-tools cet argument pour déployer des outils de développement locaux lorsque vous exécutez le programme d'installation sans --provision true cet argument. Pour plus d'informations sur le déploiement de la CLI Greengrass directement sur votre appareil, consultezInterface de ligne de commande Greengrass.

  4. Vérifiez l'installation en consultant les fichiers du dossier racine.

    Linux or Unix
    ls /greengrass/v2
    Windows Command Prompt (CMD)
    dir C:\greengrass\v2
    PowerShell
    ls C:\greengrass\v2

    Si l'installation est réussie, le dossier racine contient plusieurs dossiers, tels que configpackages, etlogs.

Installer la   AWS IoT Greengrass Logiciel de base avec clé privée et certificat dans un HSM

Note

Cette fonctionnalité est disponible pour les versions 2.5.3 et ultérieures du composant Greengrass nucleus. AWS IoT Greengrass ne prend pas actuellement en charge cette fonctionnalité sur les appareils Windows Core.

Pour installer la   AWS IoT Greengrass Logiciel de base
  1. Vérifiez la version du logiciel AWS IoT Greengrass Core.

    • GreengrassInstallerRemplacez-le par le chemin d'accès au dossier contenant le logiciel.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Pour permettre au logiciel AWS IoT Greengrass Core d'utiliser la clé privée et le certificat dans le HSM, installez le composant fournisseur PKCS #11 lors de l'installation du logiciel AWS IoT Greengrass Core. Le composant fournisseur PKCS #11 est un plug-in que vous pouvez configurer lors de l'installation. Vous pouvez télécharger la dernière version du composant fournisseur PKCS #11 depuis l'emplacement suivant :

    Téléchargez le plug-in du fournisseur PKCS #11 dans un fichier nomméaws.greengrass.crypto.Pkcs11Provider.jar. GreengrassInstallerRemplacez-le par le dossier que vous souhaitez utiliser.

    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar > GreengrassInstaller/aws.greengrass.crypto.Pkcs11Provider.jar

    Si vous téléchargez ce logiciel, vous acceptez le contrat de licence du logiciel Greengrass Core.

  3. Utilisez un éditeur de texte pour créer un fichier de configuration nommé config.yaml à fournir au programme d'installation.

    Par exemple, sur un Linux-based système, vous pouvez exécuter la commande suivante pour utiliser GNU nano afin de créer le fichier.

    nano GreengrassInstaller/config.yaml

    Copiez le contenu YAML suivant dans le fichier. Ce fichier de configuration partiel spécifie les paramètres du système, les paramètres du noyau Greengrass et les paramètres du fournisseur PKCS #11.

    --- system: certificateFilePath: "/greengrass/v2/device.pem.crt" privateKeyPath: "/greengrass/v2/private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" rootpath: "/greengrass/v2" thingName: "MyGreengrassCore" services: aws.greengrass.Nucleus: componentType: "NUCLEUS" version: "2.18.0" configuration: awsRegion: "us-west-2" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" fipsMode: "true" iotDataEndpoint: "data.iot-fips.us-west-2.amazonaws.com" greengrassDataPlaneEndpoint: "iotData" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com"

    Ensuite, procédez comme suit :

    • Remplacez chaque instance iotdevicekey des URI PKCS #11 par l'étiquette d'objet dans laquelle vous avez créé la clé privée et importé le certificat.

    • Remplacez chaque instance de /greengrass/v2 par le dossier racine de Greengrass.

    • Remplacez MyGreengrassCore par le nom de l' AWS IoT objet.

    • 2.18.0Remplacez-la par la version du logiciel AWS IoT Greengrass Core.

    • Remplacez us-west-2 par l' Région AWS endroit où vous avez créé les ressources.

    • GreengrassCoreTokenExchangeRoleAliasRemplacez-le par le nom de l'alias du rôle d'échange de jetons.

    • Remplacez le iotDataEndpoint par votre point de terminaison de AWS IoT données.

    • Remplacez le point de terminaison iotCredEndpoint par vos AWS IoT informations d'identification.

    • Remplacez les paramètres de configuration du aws.greengrass.crypto.Pkcs11Provider composant par les valeurs de la configuration HSM sur le périphérique principal.

  4. Exécutez le programme d'installation et spécifiez --init-config de fournir le fichier de configuration.

    • Remplacez-le /greengrass/v2 par le dossier racine de Greengrass.

    • Remplacez chaque instance de GreengrassInstaller par le dossier dans lequel vous avez décompressé le programme d'installation.

    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller/aws.greengrass.crypto.Pkcs11Provider.jar \ --init-config ./GreengrassInstaller/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true
    Important

    Sur les appareils Windows Core, vous --setup-system-service true devez spécifier de configurer le logiciel AWS IoT Greengrass Core en tant que service système.

    Si vous le spécifiez--setup-system-service true, le programme d'installation imprime Successfully set up Nucleus as a system service s'il a configuré et exécuté le logiciel en tant que service système. Dans le cas contraire, le programme d'installation n'émet aucun message s'il installe le logiciel correctement.

    Note

    Vous ne pouvez pas utiliser deploy-dev-tools cet argument pour déployer des outils de développement locaux lorsque vous exécutez le programme d'installation sans --provision true cet argument. Pour plus d'informations sur le déploiement de la CLI Greengrass directement sur votre appareil, consultezInterface de ligne de commande Greengrass.

  5. Vérifiez l'installation en consultant les fichiers du dossier racine.

    Linux or Unix
    ls /greengrass/v2
    Windows Command Prompt (CMD)
    dir C:\greengrass\v2
    PowerShell
    ls C:\greengrass\v2

    Si l'installation est réussie, le dossier racine contient plusieurs dossiers, tels que configpackages, etlogs.

Si vous avez installé le logiciel AWS IoT Greengrass Core en tant que service système, le programme d'installation exécute le logiciel pour vous. Dans le cas contraire, vous devez exécuter le logiciel manuellement. Pour de plus amples informations, veuillez consulter Exécutez le logiciel AWS IoT Greengrass Core.

Pour plus d'informations sur la configuration et l'utilisation du logiciel AWS IoT Greengrass, consultez les rubriques suivantes :

Installation de points de terminaison FIPS avec provisionnement de flotte

Cette fonctionnalité est disponible pour les versions 2.4.0 et ultérieures du composant Greengrass nucleus.

Installez des points de terminaison FIPS sur votre logiciel AWS IoT Greengrass Core avec provisionnement AWS IoT de flotte pour vos appareils principaux.

Note

Le plug-in de provisionnement de flotte pour Greengrass Nucleus ne prend actuellement pas en charge le stockage de fichiers de clés privées et de certificats dans un module de sécurité matériel (HSM). Pour utiliser un HSM, installez le logiciel AWS IoT Greengrass Core en procédant à un provisionnement manuel.

Pour installer le logiciel AWS IoT Greengrass Core avec le provisionnement de la AWS IoT flotte, vous devez configurer les ressources Compte AWS que vous utilisez pour approvisionner les AWS IoT appareils principaux de Greengrass. Ces ressources incluent un modèle de provisionnement, des certificats de réclamation et un rôle IAM d'échange de jetons. Après avoir créé ces ressources, vous pouvez les réutiliser pour approvisionner plusieurs appareils principaux d'une flotte. Pour de plus amples informations, veuillez consulter Configurer le provisionnement du AWS IoT parc pour les appareils principaux de Greengrass.

Important

Avant de télécharger le logiciel AWS IoT Greengrass Core, vérifiez que votre appareil principal répond à la configuration requise pour installer et exécuter le logiciel AWS IoT Greengrass Core v2.0.

Conditions préalables

Pour installer le logiciel AWS IoT Greengrass Core avec l'approvisionnement de la AWS IoT flotte, vous devez d'abord configurer l'approvisionnement de la AWS IoT flotte pour les appareils principaux de Greengrass. Après avoir effectué ces étapes une fois, vous pouvez utiliser le provisionnement de flotte pour installer le logiciel AWS IoT Greengrass Core sur un nombre quelconque d'appareils.

Retrieve AWS IoT points de terminaison

Obtenez les points de terminaison FIPS qui vous Compte AWS conviennent et enregistrez-les pour les utiliser ultérieurement. Votre appareil utilise ces points de terminaison pour se connecter AWS IoT. Procédez comme suit :

  1. Obtenez le point de terminaison de données FIPS de votre région dans les points de terminaison du plan de données AWS IoT Core FIPS. Le point de terminaison de données FIPS pour vous Compte AWS devrait ressembler à ceci : data.iot-fips.us-west-2.amazonaws.com

  2. Obtenez le point de terminaison des informations d'identification FIPS pour votre région dans les points de terminaison du plan de données AWS IoT Core FIPS. Le point de terminaison de vos informations d'identification FIPS Compte AWS devrait ressembler à ceci : data.credentials.iot-fips.us-west-2.amazonaws.com

Télécharger les certificats sur l'appareil

L'appareil utilise un certificat de réclamation et une clé privée pour authentifier sa demande de provisionnement de AWS ressources et d'acquisition d'un certificat de X.509 périphérique. Vous pouvez intégrer le certificat de réclamation et la clé privée dans l'appareil lors de la fabrication, ou copier le certificat et la clé sur l'appareil lors de l'installation. Dans cette section, vous copiez le certificat de réclamation et la clé privée sur l'appareil. Vous téléchargez également le certificat d'autorité de certification (CA) Amazon Root sur l'appareil.

Important

Le provisionnement affirme que les clés privées doivent être sécurisées à tout moment, y compris sur les appareils principaux de Greengrass. Nous vous recommandons d'utiliser CloudWatch les statistiques et les journaux Amazon pour détecter les signes d'abus, tels que l'utilisation non autorisée du certificat de réclamation pour approvisionner des appareils. Si vous détectez une utilisation abusive, désactivez le certificat de réclamation d'approvisionnement afin qu'il ne puisse pas être utilisé pour le provisionnement des appareils. Pour plus d'informations, consultez la section Surveillance AWS IoT dans le Guide du AWS IoT Core développeur.

Pour vous aider à mieux gérer le nombre d'appareils qui s'enregistrent dans votre compte Compte AWS, vous pouvez spécifier un hook de pré-approvisionnement lorsque vous créez un modèle de provisionnement de flotte. Un hook de pré-approvisionnement est une AWS Lambda fonction qui valide les paramètres de modèle fournis par les appareils lors de l'enregistrement. Par exemple, vous pouvez créer un hook de pré-approvisionnement qui compare l'ID d'un appareil à une base de données pour vérifier que l'appareil est autorisé à effectuer le provisionnement. Pour plus d'informations, consultez la section Pre-provisioning Hooks dans le Guide du AWS IoT Core développeur.

Pour télécharger les certificats de réclamation sur l'appareil
  1. Copiez le certificat de réclamation et la clé privée sur l'appareil. Si SSH et SCP sont activés sur l'ordinateur de développement et sur le périphérique, vous pouvez utiliser la scp commande sur votre ordinateur de développement pour transférer le certificat de réclamation et la clé privée. L'exemple de commande suivant transfère ces fichiers vers le périphérique dans un dossier nommé claim-certs sur votre ordinateur de développement. device-ip-addressRemplacez-la par l'adresse IP de votre appareil.

    scp -r claim-certs/ device-ip-address:~
  2. Créez le dossier racine de Greengrass sur l'appareil. Vous installerez ultérieurement le logiciel AWS IoT Greengrass Core dans ce dossier.

    Note

    Pour Windows, la limitation de la longueur du chemin est de 260 caractères. Si vous utilisez Windows, utilisez un dossier racine comme C:\greengrass\v2 ou D:\greengrass\v2 pour maintenir les chemins des composants Greengrass en dessous de la limite de 260 caractères.

    Linux or Unix
    • /greengrass/v2Remplacez-le par le dossier à utiliser.

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    mkdir C:\greengrass\v2
    PowerShell
    • C:\greengrass\v2Remplacez-le par le dossier à utiliser.

    mkdir C:\greengrass\v2
  3. (Linux uniquement) Définissez les autorisations du parent du dossier racine de Greengrass.

    • /greengrassRemplacez-le par le parent du dossier racine.

    sudo chmod 755 /greengrass
  4. Déplacez les certificats de réclamation vers le dossier racine de Greengrass.

    • Remplacez /greengrass/v2 ou C:\greengrass\v2 par le dossier racine de Greengrass.

    Linux or Unix
    sudo mv ~/claim-certs /greengrass/v2
    Windows Command Prompt (CMD)
    move %USERPROFILE%\claim-certs C:\greengrass\v2
    PowerShell
    mv -Path ~\claim-certs -Destination C:\greengrass\v2
  5. Téléchargez le certificat CA1 et le certificat CA3.

    Linux or Unix
    sudo curl -o - https://www.amazontrust.com/repository/AmazonRootCA3.pem >> /greengrass/v2/AmazonRootCA1.pem
    Windows Command Prompt (CMD)
    curl -o C:\greengrass\v2\\AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
    PowerShell
    iwr -Uri https://www.amazontrust.com/repository/AmazonRootCA1.pem -OutFile C:\greengrass\v2\\AmazonRootCA1.pem

Configuration de l'environnement de l'appareil

Suivez les étapes de cette section pour configurer un appareil Linux ou Windows à utiliser comme périphérique AWS IoT Greengrass principal.

Configurer un appareil Linux

Pour configurer un appareil Linux pour AWS IoT Greengrass V2
  1. Installez le moteur d'exécution Java dont le logiciel AWS IoT Greengrass Core a besoin pour fonctionner. Nous vous recommandons d'utiliser les versions de support à long terme d'Amazon Corretto ou d'OpenJDK. La version 8 ou supérieure est requise. Les commandes suivantes vous indiquent comment installer OpenJDK sur votre appareil.

    • Pour Debian-based nos Ubuntu-based distributions :

      sudo apt install default-jdk
    • Pour les Hat-based distributions Red :

      sudo yum install java-11-openjdk-devel
    • Dans Amazon Linux 2 :

      sudo amazon-linux-extras install java-openjdk11
    • Pour Amazon Linux 2023 :

      sudo dnf install java-11-amazon-corretto -y

    Une fois l'installation terminée, exécutez la commande suivante pour vérifier que Java s'exécute sur votre appareil Linux.

    java -version

    La commande imprime la version de Java qui s'exécute sur le périphérique. Par exemple, sur une Debian-based distribution, la sortie peut ressembler à l'exemple suivant.

    openjdk version "11.0.9.1" 2020-11-04
    OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
    OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
  2. (Facultatif) Créez l'utilisateur et le groupe système par défaut qui exécutent les composants sur le périphérique. Vous pouvez également choisir de laisser le programme d'installation du logiciel AWS IoT Greengrass Core créer cet utilisateur et ce groupe lors de l'installation à l'aide de l'argument --component-default-user installer. Pour de plus amples informations, veuillez consulter Arguments d'installation.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Vérifiez que l'utilisateur qui exécute le logiciel AWS IoT Greengrass Core (généralementroot) est autorisé à s'exécuter sudo avec n'importe quel utilisateur et n'importe quel groupe.

    1. Exécutez la commande suivante pour ouvrir le /etc/sudoers fichier.

      sudo visudo
    2. Vérifiez que l'autorisation de l'utilisateur ressemble à l'exemple suivant.

      root ALL=(ALL:ALL) ALL
  4. (Facultatif) Pour exécuter des fonctions Lambda conteneurisées, vous devez activer les cgroups v1, et vous devez activer et monter les cgroups de mémoire et de périphériques. Si vous ne prévoyez pas d'exécuter des fonctions Lambda conteneurisées, vous pouvez ignorer cette étape.

    Pour activer ces options de cgroups, démarrez le périphérique avec les paramètres du noyau Linux suivants.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Pour plus d'informations sur l'affichage et la configuration des paramètres du noyau de votre appareil, consultez la documentation de votre système d'exploitation et de votre chargeur de démarrage. Suivez les instructions pour définir définitivement les paramètres du noyau.

  5. Installez toutes les autres dépendances requises sur votre appareil, comme indiqué dans la liste des exigences figurant dansExigences relatives aux dispositifs.

Configurer un appareil Windows

Note

Cette fonctionnalité est disponible pour la version 2.5.0 et les versions ultérieures du composant Greengrass nucleus.

Pour configurer un appareil Windows pour AWS IoT Greengrass V2
  1. Installez le moteur d'exécution Java dont le logiciel AWS IoT Greengrass Core a besoin pour fonctionner. Nous vous recommandons d'utiliser les versions de support à long terme d'Amazon Corretto ou d'OpenJDK. La version 8 ou supérieure est requise.

  2. Vérifiez si Java est disponible sur la variable système PATH et ajoutez-la si ce n'est pas le cas. Le LocalSystem compte exécute le logiciel AWS IoT Greengrass Core. Vous devez donc ajouter Java à la variable système PATH au lieu de la variable utilisateur PATH pour votre utilisateur. Procédez comme suit :

    1. Appuyez sur la touche Windows pour ouvrir le menu Démarrer.

    2. Tapez environment variables pour rechercher les options du système dans le menu Démarrer.

    3. Dans les résultats de recherche du menu Démarrer, choisissez Modifier les variables d'environnement système pour ouvrir la fenêtre des propriétés du système.

    4. Choisissez des variables d'environnement... pour ouvrir la fenêtre Variables d'environnement.

    5. Sous Variables système, sélectionnez Path, puis choisissez Modifier. Dans la fenêtre Modifier la variable d'environnement, vous pouvez afficher chaque chemin sur une ligne distincte.

    6. Vérifiez si le chemin d'accès au bin dossier d'installation de Java est présent. Le chemin peut ressembler à l'exemple suivant.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Si le bin dossier de l'installation Java est absent de Path, choisissez Nouveau pour l'ajouter, puis cliquez sur OK.

  3. Ouvrez l'invite de commande Windows (cmd.exe) en tant qu'administrateur.

  4. Créez l'utilisateur par défaut dans le LocalSystem compte de l'appareil Windows. Remplacez-le password par un mot de passe sécurisé.

    net user /add ggc_user password
    Astuce

    Selon votre configuration Windows, le mot de passe de l'utilisateur peut être configuré pour expirer à une date ultérieure. Pour vous assurer que vos applications Greengrass continuent de fonctionner, suivez la date d'expiration du mot de passe et mettez-le à jour avant qu'il n'expire. Vous pouvez également configurer le mot de passe de l'utilisateur pour qu'il n'expire jamais.

    • Pour vérifier la date d'expiration d'un utilisateur et de son mot de passe, exécutez la commande suivante.

      net user ggc_user | findstr /C:expires
    • Pour configurer le mot de passe d'un utilisateur afin qu'il n'expire jamais, exécutez la commande suivante.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Si vous utilisez Windows 10 ou une version ultérieure où la wmic commande est obsolète, exécutez la commande suivante PowerShell .

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Téléchargez et installez l'PsExecutilitaire de Microsoft sur l'appareil.

  6. Utilisez l' PsExec utilitaire pour stocker le nom d'utilisateur et le mot de passe de l'utilisateur par défaut dans l'instance Credential Manager du LocalSystem compte. passwordRemplacez-le par le mot de passe utilisateur que vous avez défini précédemment.

    psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:password

    S'il PsExec License Agreement s'ouvre, choisissez Accept d'accepter la licence et exécutez la commande.

    Note

    Sur les appareils Windows, le LocalSystem compte exécute le noyau Greengrass et vous devez utiliser l' PsExec utilitaire pour stocker les informations utilisateur par défaut dans le LocalSystem compte. L'utilisation de l'application Credential Manager permet de stocker ces informations dans le compte Windows de l'utilisateur actuellement connecté, au lieu de ce LocalSystem compte.

Téléchargez le AWS IoT Greengrass Logiciel de base

Vous pouvez télécharger la dernière version du logiciel AWS IoT Greengrass Core à l'adresse suivante :

Note

Vous pouvez télécharger une version spécifique du logiciel AWS IoT Greengrass Core à partir de l'emplacement suivant. versionRemplacez-la par la version à télécharger.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Pour télécharger le AWS IoT Greengrass Logiciel de base
  1. Sur votre appareil principal, téléchargez le logiciel AWS IoT Greengrass Core dans un fichier nommégreengrass-nucleus-latest.zip.

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip -OutFile greengrass-nucleus-latest.zip

    Si vous téléchargez ce logiciel, vous acceptez le contrat de licence du logiciel Greengrass Core.

  2. (Facultatif) Pour vérifier la signature logicielle Greengrass Nucleus

    Note

    Cette fonctionnalité est disponible avec Greengrass Nucleus version 2.9.5 et versions ultérieures.

    1. Utilisez la commande suivante pour vérifier la signature de votre artefact Greengrass nucleus :

      Linux or Unix
      jarsigner -verify -certs -verbose greengrass-nucleus-latest.zip
      Windows Command Prompt (CMD)

      Le nom du fichier peut être différent selon la version du JDK que vous installez. jdk17.0.6_10Remplacez-la par la version du JDK que vous avez installée.

      "C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe" -verify -certs -verbose greengrass-nucleus-latest.zip
      PowerShell

      Le nom du fichier peut être différent selon la version du JDK que vous installez. jdk17.0.6_10Remplacez-la par la version du JDK que vous avez installée.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. L'jarsignerinvocation produit une sortie qui indique les résultats de la vérification.

      1. Si le fichier zip Greengrass nucleus est signé, la sortie contient l'instruction suivante :

        jar verified.
      2. Si le fichier zip Greengrass nucleus n'est pas signé, la sortie contient l'instruction suivante :

        jar is unsigned.
    3. Si vous avez fourni l'-certsoption Jarsigner avec des -verify -verbose options, la sortie inclut également des informations détaillées sur le certificat du signataire.

  3. Décompressez le logiciel AWS IoT Greengrass Core dans un dossier de votre appareil. GreengrassInstallerRemplacez-le par le dossier que vous souhaitez utiliser.

    Linux or Unix
    unzip greengrass-nucleus-latest.zip -d GreengrassInstaller && rm greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    mkdir GreengrassInstaller && tar -xf greengrass-nucleus-latest.zip -C GreengrassInstaller && del greengrass-nucleus-latest.zip
    PowerShell
    Expand-Archive -Path greengrass-nucleus-latest.zip -DestinationPath .\\GreengrassInstaller rm greengrass-nucleus-latest.zip
  4. (Facultatif) Exécutez la commande suivante pour voir la version du logiciel AWS IoT Greengrass Core.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
Important

Si vous installez une version du noyau Greengrass antérieure à la version 2.4.0, ne supprimez pas ce dossier après avoir installé le AWS IoT Greengrass logiciel Core. Le logiciel AWS IoT Greengrass Core utilise les fichiers de ce dossier pour s'exécuter.

Si vous avez téléchargé la dernière version du logiciel, vous installez la version 2.4.0 ou ultérieure, et vous pouvez supprimer ce dossier après avoir installé le logiciel AWS IoT Greengrass Core.

Téléchargez le AWS IoT plug-in d'approvisionnement de flotte

Vous pouvez télécharger la dernière version du plug-in d'approvisionnement de AWS IoT flotte à l'adresse suivante :

Note

Vous pouvez télécharger une version spécifique du plug-in d'approvisionnement de AWS IoT flotte à partir de l'emplacement suivant. versionRemplacez-la par la version à télécharger. Pour plus d'informations sur chaque version du plug-in de provisionnement de flotte, consultezAWS IoT journal des modifications du plugin de provisionnement de flotte.

https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-version.jar

Le plugin d'approvisionnement de la flotte est open source. Pour consulter son code source, consultez le plugin AWS IoT Fleet Provisioning sur GitHub.

Pour télécharger le AWS IoT plug-in d'approvisionnement de flotte
  • Sur votre appareil, téléchargez le plug-in d'approvisionnement de AWS IoT flotte dans un fichier nomméaws.greengrass.FleetProvisioningByClaim.jar. GreengrassInstallerRemplacez-le par le dossier que vous souhaitez utiliser.

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar > GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar > GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar -OutFile GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar

    Si vous téléchargez ce logiciel, vous acceptez le contrat de licence du logiciel Greengrass Core.

Installer la   AWS IoT Greengrass Logiciel de base

Exécutez le programme d'installation avec des arguments qui spécifient les actions suivantes :

  • Installation à partir d'un fichier de configuration partiel qui spécifie d'utiliser le plug-in de provisionnement de flotte pour provisionner les AWS ressources. Le logiciel AWS IoT Greengrass Core utilise un fichier de configuration qui spécifie la configuration de chaque composant Greengrass de l'appareil. Le programme d'installation crée un fichier de configuration complet à partir du fichier de configuration partiel que vous fournissez et AWS des ressources créées par le plug-in de provisionnement de flotte.

  • Spécifiez d'utiliser l'utilisateur ggc_user du système pour exécuter les composants logiciels sur le périphérique principal. Sur les appareils Linux, cette commande indique également d'utiliser le groupe ggc_group système, et le programme d'installation crée l'utilisateur et le groupe système pour vous.

  • Configurez le logiciel AWS IoT Greengrass Core en tant que service système qui s'exécute au démarrage. Sur les appareils Linux, cela nécessite le système d'initialisation Systemd.

    Important

    Sur les appareils Windows Core, vous devez configurer le logiciel AWS IoT Greengrass Core en tant que service système.

Pour plus d'informations sur les arguments que vous pouvez spécifier, consultezArguments d'installation.

Note

Si vous utilisez un appareil dont AWS IoT Greengrass la mémoire est limitée, vous pouvez contrôler la quantité de mémoire utilisée par le logiciel AWS IoT Greengrass Core. Pour contrôler l'allocation de mémoire, vous pouvez définir les options de taille de tas JVM dans le paramètre de jvmOptions configuration de votre composant Nucleus. Pour de plus amples informations, veuillez consulter Contrôlez l'allocation de mémoire grâce aux options JVM.

Pour installer la   AWS IoT Greengrass Logiciel de base
  1. Vérifiez la version du logiciel AWS IoT Greengrass Core.

    • GreengrassInstallerRemplacez-le par le chemin d'accès au dossier contenant le logiciel.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Utilisez un éditeur de texte pour créer un fichier de configuration nommé config.yaml à fournir au programme d'installation.

    Par exemple, sur un Linux-based système, vous pouvez exécuter la commande suivante pour utiliser GNU nano afin de créer le fichier.

    nano GreengrassInstaller/config.yaml

    Copiez le contenu YAML suivant dans le fichier. Ce fichier de configuration partiel spécifie les paramètres du plug-in d'approvisionnement de flotte. Pour plus d'informations sur les options que vous pouvez spécifier, consultezConfiguration du plugin de provisionnement de AWS IoT flotte.

    Linux or Unix
    --- services: aws.greengrass.Nucleus: version: "2.18.0" configuration: fipsMode: "true" greengrassDataPlaneEndpoint: "iotData" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "/greengrass/v2" awsRegion: "us-west-2" iotDataEndpoint: "data.iot-fips.us-west-2.amazonaws.com" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "/greengrass/v2/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup"
    Windows
    --- services: aws.greengrass.Nucleus: version: "2.18.0" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "C:\\greengrass\\v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "C:\\greengrass\\v2\\claim-certs\\claim.pem.crt" claimCertificatePrivateKeyPath: "C:\\greengrass\\v2\\claim-certs\\claim.private.pem.key" rootCaPath: "C:\\greengrass\\v2\\AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup"

    Ensuite, procédez comme suit :

    • 2.18.0Remplacez-la par la version du logiciel AWS IoT Greengrass Core.

    • Remplacez chaque instance de /greengrass/v2 ou C:\greengrass\v2 par le dossier racine de Greengrass.

      Note

      Sur les appareils Windows, vous devez spécifier les séparateurs de chemin sous la forme de doubles barres obliques inverses (\\), par exemple. C:\\greengrass\\v2

    • Remplacez-le us-west-2 par la AWS région dans laquelle vous avez créé le modèle de provisionnement et les autres ressources.

    • Remplacez le iotDataEndpoint par votre point de terminaison de AWS IoT données.

    • Remplacez le point de terminaison iotCredentialEndpoint par vos AWS IoT informations d'identification.

    • GreengrassCoreTokenExchangeRoleAliasRemplacez-le par le nom de l'alias du rôle d'échange de jetons.

    • GreengrassFleetProvisioningTemplateRemplacez-le par le nom du modèle de provisionnement de flotte.

    • Remplacez le claimCertificatePath par le chemin d'accès au certificat de réclamation sur l'appareil.

    • Remplacez le claimCertificatePrivateKeyPath par le chemin d'accès à la clé privée du certificat de réclamation sur l'appareil.

    • Remplacez les paramètres du modèle (templateParameters) par les valeurs à utiliser pour approvisionner le périphérique. Cet exemple fait référence à l'exemple de modèle qui définit ThingName et ThingGroupName paramétre.

  3. Exécutez le programme d'installation. Spécifiez --trusted-plugin de fournir le plug-in d'approvisionnement de flotte et spécifiez --init-config de fournir le fichier de configuration.

    • Remplacez-le /greengrass/v2 par le dossier racine de Greengrass.

    • Remplacez chaque instance de GreengrassInstaller par le dossier dans lequel vous avez décompressé le programme d'installation.

    Linux or Unix
    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar \ --init-config ./GreengrassInstaller/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true
    Windows Command Prompt (CMD)
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ^ -jar ./GreengrassInstaller/lib/Greengrass.jar ^ --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar ^ --init-config ./GreengrassInstaller/config.yaml ^ --component-default-user ggc_user ^ --setup-system-service true
    PowerShell
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ` -jar ./GreengrassInstaller/lib/Greengrass.jar ` --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar ` --init-config ./GreengrassInstaller/config.yaml ` --component-default-user ggc_user ` --setup-system-service true
    Important

    Sur les appareils Windows Core, vous --setup-system-service true devez spécifier de configurer le logiciel AWS IoT Greengrass Core en tant que service système.

    Si vous le spécifiez--setup-system-service true, le programme d'installation imprime Successfully set up Nucleus as a system service s'il a configuré et exécuté le logiciel en tant que service système. Dans le cas contraire, le programme d'installation n'émet aucun message s'il installe le logiciel correctement.

    Note

    Vous ne pouvez pas utiliser deploy-dev-tools cet argument pour déployer des outils de développement locaux lorsque vous exécutez le programme d'installation sans --provision true cet argument. Pour plus d'informations sur le déploiement de la CLI Greengrass directement sur votre appareil, consultezInterface de ligne de commande Greengrass.

  4. Vérifiez l'installation en consultant les fichiers du dossier racine.

    Linux or Unix
    ls /greengrass/v2
    Windows Command Prompt (CMD)
    dir C:\greengrass\v2
    PowerShell
    ls C:\greengrass\v2

    Si l'installation est réussie, le dossier racine contient plusieurs dossiers, tels que configpackages, etlogs.

Si vous avez installé le logiciel AWS IoT Greengrass Core en tant que service système, le programme d'installation exécute le logiciel pour vous. Dans le cas contraire, vous devez exécuter le logiciel manuellement. Pour de plus amples informations, veuillez consulter Exécutez le logiciel AWS IoT Greengrass Core.

Pour plus d'informations sur la configuration et l'utilisation du logiciel AWS IoT Greengrass, consultez les rubriques suivantes :

Installation de points de terminaison FIPS avec provisionnement automatique des ressources

Le logiciel AWS IoT Greengrass Core inclut un programme d'installation qui configure votre appareil en tant qu'appareil principal Greengrass. Pour configurer rapidement un périphérique, le programme d'installation peut configurer l' AWS IoT AWS IoT objet, le groupe d'objets, le rôle IAM et l'alias de AWS IoT rôle dont le périphérique principal a besoin pour fonctionner. Le programme d'installation peut également déployer les outils de développement locaux sur le périphérique principal, afin que vous puissiez utiliser l'appareil pour développer et tester des composants logiciels personnalisés. Le programme d'installation a besoin AWS d'informations d'identification pour provisionner ces ressources et créer le déploiement.

Si vous ne pouvez pas fournir AWS d'informations d'identification à l'appareil, vous pouvez provisionner les AWS ressources dont le périphérique principal a besoin pour fonctionner. Vous pouvez également déployer les outils de développement sur un appareil principal pour les utiliser comme périphérique de développement. Cela vous permet de fournir moins d'autorisations à l'appareil lorsque vous exécutez le programme d'installation. Pour de plus amples informations, veuillez consulter Installation AWS IoT Greengrass Logiciel de base avec provisionnement manuel des ressources.

Important

Avant de télécharger le logiciel AWS IoT Greengrass Core, vérifiez que votre appareil principal répond à la configuration requise pour installer et exécuter le logiciel AWS IoT Greengrass Core v2.0.

Configuration de l'environnement de l'appareil

Suivez les étapes de cette section pour configurer un appareil Linux ou Windows à utiliser comme périphérique AWS IoT Greengrass principal.

Configurer un appareil Linux

Pour configurer un appareil Linux pour AWS IoT Greengrass V2
  1. Installez le moteur d'exécution Java dont le logiciel AWS IoT Greengrass Core a besoin pour fonctionner. Nous vous recommandons d'utiliser les versions de support à long terme d'Amazon Corretto ou d'OpenJDK. La version 8 ou supérieure est requise. Les commandes suivantes vous indiquent comment installer OpenJDK sur votre appareil.

    • Pour Debian-based nos Ubuntu-based distributions :

      sudo apt install default-jdk
    • Pour les Hat-based distributions Red :

      sudo yum install java-11-openjdk-devel
    • Dans Amazon Linux 2 :

      sudo amazon-linux-extras install java-openjdk11
    • Pour Amazon Linux 2023 :

      sudo dnf install java-11-amazon-corretto -y

    Une fois l'installation terminée, exécutez la commande suivante pour vérifier que Java s'exécute sur votre appareil Linux.

    java -version

    La commande imprime la version de Java qui s'exécute sur le périphérique. Par exemple, sur une Debian-based distribution, la sortie peut ressembler à l'exemple suivant.

    openjdk version "11.0.9.1" 2020-11-04
    OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
    OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
  2. (Facultatif) Créez l'utilisateur et le groupe système par défaut qui exécutent les composants sur le périphérique. Vous pouvez également choisir de laisser le programme d'installation du logiciel AWS IoT Greengrass Core créer cet utilisateur et ce groupe lors de l'installation à l'aide de l'argument --component-default-user installer. Pour de plus amples informations, veuillez consulter Arguments d'installation.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Vérifiez que l'utilisateur qui exécute le logiciel AWS IoT Greengrass Core (généralementroot) est autorisé à s'exécuter sudo avec n'importe quel utilisateur et n'importe quel groupe.

    1. Exécutez la commande suivante pour ouvrir le /etc/sudoers fichier.

      sudo visudo
    2. Vérifiez que l'autorisation de l'utilisateur ressemble à l'exemple suivant.

      root ALL=(ALL:ALL) ALL
  4. (Facultatif) Pour exécuter des fonctions Lambda conteneurisées, vous devez activer les cgroups v1, et vous devez activer et monter les cgroups de mémoire et de périphériques. Si vous ne prévoyez pas d'exécuter des fonctions Lambda conteneurisées, vous pouvez ignorer cette étape.

    Pour activer ces options de cgroups, démarrez le périphérique avec les paramètres du noyau Linux suivants.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Pour plus d'informations sur l'affichage et la configuration des paramètres du noyau de votre appareil, consultez la documentation de votre système d'exploitation et de votre chargeur de démarrage. Suivez les instructions pour définir définitivement les paramètres du noyau.

  5. Installez toutes les autres dépendances requises sur votre appareil, comme indiqué dans la liste des exigences figurant dansExigences relatives aux dispositifs.

Configurer un appareil Windows

Note

Cette fonctionnalité est disponible pour la version 2.5.0 et les versions ultérieures du composant Greengrass nucleus.

Pour configurer un appareil Windows pour AWS IoT Greengrass V2
  1. Installez le moteur d'exécution Java dont le logiciel AWS IoT Greengrass Core a besoin pour fonctionner. Nous vous recommandons d'utiliser les versions de support à long terme d'Amazon Corretto ou d'OpenJDK. La version 8 ou supérieure est requise.

  2. Vérifiez si Java est disponible sur la variable système PATH et ajoutez-la si ce n'est pas le cas. Le LocalSystem compte exécute le logiciel AWS IoT Greengrass Core. Vous devez donc ajouter Java à la variable système PATH au lieu de la variable utilisateur PATH pour votre utilisateur. Procédez comme suit :

    1. Appuyez sur la touche Windows pour ouvrir le menu Démarrer.

    2. Tapez environment variables pour rechercher les options du système dans le menu Démarrer.

    3. Dans les résultats de recherche du menu Démarrer, choisissez Modifier les variables d'environnement système pour ouvrir la fenêtre des propriétés du système.

    4. Choisissez des variables d'environnement... pour ouvrir la fenêtre Variables d'environnement.

    5. Sous Variables système, sélectionnez Path, puis choisissez Modifier. Dans la fenêtre Modifier la variable d'environnement, vous pouvez afficher chaque chemin sur une ligne distincte.

    6. Vérifiez si le chemin d'accès au bin dossier d'installation de Java est présent. Le chemin peut ressembler à l'exemple suivant.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Si le bin dossier de l'installation Java est absent de Path, choisissez Nouveau pour l'ajouter, puis cliquez sur OK.

  3. Ouvrez l'invite de commande Windows (cmd.exe) en tant qu'administrateur.

  4. Créez l'utilisateur par défaut dans le LocalSystem compte de l'appareil Windows. Remplacez-le password par un mot de passe sécurisé.

    net user /add ggc_user password
    Astuce

    Selon votre configuration Windows, le mot de passe de l'utilisateur peut être configuré pour expirer à une date ultérieure. Pour vous assurer que vos applications Greengrass continuent de fonctionner, suivez la date d'expiration du mot de passe et mettez-le à jour avant qu'il n'expire. Vous pouvez également configurer le mot de passe de l'utilisateur pour qu'il n'expire jamais.

    • Pour vérifier la date d'expiration d'un utilisateur et de son mot de passe, exécutez la commande suivante.

      net user ggc_user | findstr /C:expires
    • Pour configurer le mot de passe d'un utilisateur afin qu'il n'expire jamais, exécutez la commande suivante.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Si vous utilisez Windows 10 ou une version ultérieure où la wmic commande est obsolète, exécutez la commande suivante PowerShell .

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Téléchargez et installez l'PsExecutilitaire de Microsoft sur l'appareil.

  6. Utilisez l' PsExec utilitaire pour stocker le nom d'utilisateur et le mot de passe de l'utilisateur par défaut dans l'instance Credential Manager du LocalSystem compte. passwordRemplacez-le par le mot de passe utilisateur que vous avez défini précédemment.

    psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:password

    S'il PsExec License Agreement s'ouvre, choisissez Accept d'accepter la licence et exécutez la commande.

    Note

    Sur les appareils Windows, le LocalSystem compte exécute le noyau Greengrass et vous devez utiliser l' PsExec utilitaire pour stocker les informations utilisateur par défaut dans le LocalSystem compte. L'utilisation de l'application Credential Manager permet de stocker ces informations dans le compte Windows de l'utilisateur actuellement connecté, au lieu de ce LocalSystem compte.

Fournir AWS informations d'identification de l'appareil

Fournissez les AWS informations d'identification de votre appareil afin que le programme d'installation puisse fournir les AWS ressources requises. Pour plus d’informations sur les autorisations requises, consultez Politique IAM minimale permettant au programme d'installation de provisionner les ressources.

Pour fournir AWS informations d'identification de l'appareil
  • Fournissez vos AWS informations d'identification au périphérique afin que le programme d'installation puisse provisionner les ressources AWS IoT et les ressources IAM de votre appareil principal. Pour renforcer la sécurité, nous vous recommandons d'obtenir des informations d'identification temporaires pour un rôle IAM qui n'autorise que les autorisations minimales nécessaires au provisionnement. Pour de plus amples informations, veuillez consulter Politique IAM minimale permettant au programme d'installation de provisionner les ressources.

    Note

    Le programme d'installation n'enregistre ni ne stocke vos informations d'identification.

    Sur votre appareil, effectuez l'une des opérations suivantes pour récupérer les informations d'identification et les mettre à la disposition du programme d'installation du logiciel AWS IoT Greengrass Core :

    • (Recommandé) Utilisez des informations d'identification temporaires auprès de AWS IAM Identity Center

      1. Fournissez l'ID de clé d'accès, la clé d'accès secrète et le jeton de session depuis l'IAM Identity Center. Pour plus d'informations, consultez la section Actualisation manuelle des informations d'identification dans la section Obtention et actualisation des informations d'identification temporaires du guide de l'utilisateur d'IAM Identity Center.

      2. Exécutez les commandes suivantes pour fournir les informations d'identification au logiciel AWS IoT Greengrass Core.

        Linux or Unix
        export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
        Windows Command Prompt (CMD)
        set AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE set AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY set AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
        PowerShell
        $env:AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" $env:AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" $env:AWS_SESSION_TOKEN="AQoDYXdzEJr1K...o5OytwEXAMPLE="
    • Utilisez des informations d'identification de sécurité temporaires provenant d'un rôle IAM :

      1. Fournissez l'ID de clé d'accès, la clé d'accès secrète et le jeton de session à partir d'un rôle IAM que vous assumez. Pour plus d'informations sur la façon de récupérer ces informations d'identification, consultez la section Demande d'informations d'identification de sécurité temporaires dans le Guide de l'utilisateur IAM.

      2. Exécutez les commandes suivantes pour fournir les informations d'identification au logiciel AWS IoT Greengrass Core.

        Linux or Unix
        export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY export AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
        Windows Command Prompt (CMD)
        set AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE set AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY set AWS_SESSION_TOKEN=AQoDYXdzEJr1K...o5OytwEXAMPLE=
        PowerShell
        $env:AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" $env:AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" $env:AWS_SESSION_TOKEN="AQoDYXdzEJr1K...o5OytwEXAMPLE="
    • Utilisez les informations d'identification à long terme d'un utilisateur IAM :

      1. Fournissez l'ID de clé d'accès et la clé d'accès secrète de votre utilisateur IAM. Vous pouvez créer un utilisateur IAM pour le provisionnement que vous supprimerez ultérieurement. Pour connaître la politique IAM à donner à l'utilisateur, consultezPolitique IAM minimale permettant au programme d'installation de provisionner les ressources. Pour plus d'informations sur la façon de récupérer des informations d'identification à long terme, consultez la section Gestion des clés d'accès pour les utilisateurs IAM dans le Guide de l'utilisateur IAM.

      2. Exécutez les commandes suivantes pour fournir les informations d'identification au logiciel AWS IoT Greengrass Core.

        Linux or Unix
        export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
        Windows Command Prompt (CMD)
        set AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE set AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
        PowerShell
        $env:AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" $env:AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
      3. (Facultatif) Si vous avez créé un utilisateur IAM pour approvisionner votre appareil Greengrass, supprimez-le.

      4. (Facultatif) Si vous avez utilisé l'ID de clé d'accès et la clé d'accès secrète d'un utilisateur IAM existant, mettez à jour les clés de cet utilisateur afin qu'elles ne soient plus valides. Pour plus d'informations, consultez la section Mise à jour des clés d'accès dans le guide de Gestion des identités et des accès AWS l'utilisateur.

Téléchargez le AWS IoT Greengrass Logiciel de base

Vous pouvez télécharger la dernière version du logiciel AWS IoT Greengrass Core à l'adresse suivante :

Note

Vous pouvez télécharger une version spécifique du logiciel AWS IoT Greengrass Core à partir de l'emplacement suivant. versionRemplacez-la par la version à télécharger.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Pour télécharger le AWS IoT Greengrass Logiciel de base
  1. Sur votre appareil principal, téléchargez le logiciel AWS IoT Greengrass Core dans un fichier nommégreengrass-nucleus-latest.zip.

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip -OutFile greengrass-nucleus-latest.zip

    Si vous téléchargez ce logiciel, vous acceptez le contrat de licence du logiciel Greengrass Core.

  2. (Facultatif) Pour vérifier la signature logicielle Greengrass Nucleus

    Note

    Cette fonctionnalité est disponible avec Greengrass Nucleus version 2.9.5 et versions ultérieures.

    1. Utilisez la commande suivante pour vérifier la signature de votre artefact Greengrass nucleus :

      Linux or Unix
      jarsigner -verify -certs -verbose greengrass-nucleus-latest.zip
      Windows Command Prompt (CMD)

      Le nom du fichier peut être différent selon la version du JDK que vous installez. jdk17.0.6_10Remplacez-la par la version du JDK que vous avez installée.

      "C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe" -verify -certs -verbose greengrass-nucleus-latest.zip
      PowerShell

      Le nom du fichier peut être différent selon la version du JDK que vous installez. jdk17.0.6_10Remplacez-la par la version du JDK que vous avez installée.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. L'jarsignerinvocation produit une sortie qui indique les résultats de la vérification.

      1. Si le fichier zip Greengrass nucleus est signé, la sortie contient l'instruction suivante :

        jar verified.
      2. Si le fichier zip Greengrass nucleus n'est pas signé, la sortie contient l'instruction suivante :

        jar is unsigned.
    3. Si vous avez fourni l'-certsoption Jarsigner avec des -verify -verbose options, la sortie inclut également des informations détaillées sur le certificat du signataire.

  3. Décompressez le logiciel AWS IoT Greengrass Core dans un dossier de votre appareil. GreengrassInstallerRemplacez-le par le dossier que vous souhaitez utiliser.

    Linux or Unix
    unzip greengrass-nucleus-latest.zip -d GreengrassInstaller && rm greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    mkdir GreengrassInstaller && tar -xf greengrass-nucleus-latest.zip -C GreengrassInstaller && del greengrass-nucleus-latest.zip
    PowerShell
    Expand-Archive -Path greengrass-nucleus-latest.zip -DestinationPath .\\GreengrassInstaller rm greengrass-nucleus-latest.zip
  4. (Facultatif) Exécutez la commande suivante pour voir la version du logiciel AWS IoT Greengrass Core.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
Important

Si vous installez une version du noyau Greengrass antérieure à la version 2.4.0, ne supprimez pas ce dossier après avoir installé le AWS IoT Greengrass logiciel Core. Le logiciel AWS IoT Greengrass Core utilise les fichiers de ce dossier pour s'exécuter.

Si vous avez téléchargé la dernière version du logiciel, vous installez la version 2.4.0 ou ultérieure, et vous pouvez supprimer ce dossier après avoir installé le logiciel AWS IoT Greengrass Core.

Installer la   AWS IoT Greengrass Logiciel de base

Exécutez le programme d'installation avec des arguments qui spécifient les opérations suivantes :

  • Créez les AWS ressources dont le périphérique principal a besoin pour fonctionner.

  • Spécifiez d'utiliser l'utilisateur ggc_user du système pour exécuter les composants logiciels sur le périphérique principal. Sur les appareils Linux, cette commande indique également d'utiliser le groupe ggc_group système, et le programme d'installation crée l'utilisateur et le groupe système pour vous.

  • Configurez le logiciel AWS IoT Greengrass Core en tant que service système qui s'exécute au démarrage. Sur les appareils Linux, cela nécessite le système d'initialisation Systemd.

    Important

    Sur les appareils Windows Core, vous devez configurer le logiciel AWS IoT Greengrass Core en tant que service système.

Pour configurer un périphérique de développement avec des outils de développement locaux, spécifiez l'--deploy-dev-tools trueargument. Le déploiement des outils de développement locaux peut prendre jusqu'à une minute une fois l'installation terminée.

Pour plus d'informations sur les arguments que vous pouvez spécifier, consultezArguments d'installation.

Note

Si vous utilisez un appareil dont AWS IoT Greengrass la mémoire est limitée, vous pouvez contrôler la quantité de mémoire utilisée par le logiciel AWS IoT Greengrass Core. Pour contrôler l'allocation de mémoire, vous pouvez définir les options de taille de tas JVM dans le paramètre de jvmOptions configuration de votre composant Nucleus. Pour de plus amples informations, veuillez consulter Contrôlez l'allocation de mémoire grâce aux options JVM.

Pour installer la   AWS IoT Greengrass Logiciel de base
  1. Utilisez un éditeur de texte pour créer un fichier de configuration nommé config.yaml à fournir au programme d'installation.

    Par exemple, sur un Linux-based système, vous pouvez exécuter la commande suivante pour utiliser GNU nano afin de créer le fichier.

    nano GreengrassInstaller/config.yaml

    Copiez le contenu YAML suivant dans le fichier. Ce fichier de configuration partiel spécifie les paramètres du système et les paramètres du noyau de Greengrass.

    --- services: aws.greengrass.Nucleus: configuration: fipsMode: "true" iotDataEndpoint: "data.iot-fips.us-west-2.amazonaws.com" iotCredEndpoint: "data.credentials.iot-fips.us-west-2.amazonaws.com" greengrassDataPlaneEndpoint: "iotData"
    • us-west-2Remplacez-le par l' Région AWS endroit où vous avez créé les ressources.

    • Remplacez le iotDataEndpoint par votre point de terminaison de AWS IoT données.

    • Remplacez le point de terminaison iotCredEndpoint par vos AWS IoT informations d'identification.

  2. Exécutez le programme d'installation AWS IoT Greengrass Core. Remplacez les valeurs des arguments dans votre commande comme suit.

    Note

    Pour Windows, la limitation de la longueur du chemin est de 260 caractères. Si vous utilisez Windows, utilisez un dossier racine comme C:\greengrass\v2 ou D:\greengrass\v2 pour maintenir les chemins des composants Greengrass en dessous de la limite de 260 caractères.

    1. /greengrass/v2ou C:\greengrass\v2 : chemin d'accès au dossier racine à utiliser pour installer le logiciel AWS IoT Greengrass Core.

    2. GreengrassInstaller. Le chemin d'accès au dossier dans lequel vous avez décompressé le programme d'installation du logiciel AWS IoT Greengrass Core.

    3. region. L' Région AWS endroit où trouver ou créer des ressources.

    4. MyGreengrassCore. Le nom de l' AWS IoT objet correspondant à votre appareil principal Greengrass. Si l'élément n'existe pas, le programme d'installation le crée. Le programme d'installation télécharge les certificats pour s'authentifier en tant que tel AWS IoT . Pour de plus amples informations, veuillez consulter Authentification et autorisation de l'appareil pour AWS IoT Greengrass.

      Note

      Le nom de l'objet ne peut pas contenir deux points (:).

    5. MyGreengrassCoreGroup. Le nom du AWS IoT groupe d'objets pour votre appareil principal Greengrass. Si le groupe d'objets n'existe pas, le programme d'installation le crée et y ajoute l'objet. Si le groupe d'objets existe et fait l'objet d'un déploiement actif, le périphérique principal télécharge et exécute le logiciel spécifié par le déploiement.

      Note

      Le nom du groupe d'objets ne peut pas contenir deux points (:).

    6. GreengrassV2IoTThingPolicy. Le nom de la AWS IoT politique qui permet aux appareils principaux de Greengrass de communiquer avec AWS IoT et AWS IoT Greengrass. Si la AWS IoT politique n'existe pas, le programme d'installation crée une AWS IoT politique permissive portant ce nom. Vous pouvez restreindre les autorisations de cette politique en fonction de votre cas d'utilisation. Pour de plus amples informations, veuillez consulter AWS IoT Politique minimale pour les appareils AWS IoT Greengrass V2 principaux.

    7. GreengrassV2TokenExchangeRole. Le nom du rôle IAM qui permet au périphérique principal Greengrass d'obtenir des informations d'identification temporaires AWS . Si le rôle n'existe pas, le programme d'installation le crée, puis crée et associe une politique nomméeGreengrassV2TokenExchangeRoleAccess. Pour de plus amples informations, veuillez consulter Autoriser les appareils principaux à interagir avec les AWS services.

    8. GreengrassCoreTokenExchangeRoleAlias. L'alias du rôle IAM qui permet au périphérique principal de Greengrass d'obtenir des informations d'identification temporaires ultérieurement. Si l'alias de rôle n'existe pas, le programme d'installation le crée et le pointe vers le rôle IAM que vous spécifiez. Pour de plus amples informations, veuillez consulter Autoriser les appareils principaux à interagir avec les AWS services.

    Linux or Unix
    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --aws-region region \ --thing-name MyGreengrassCore \ --thing-group-name MyGreengrassCoreGroup \ --thing-policy-name GreengrassV2IoTThingPolicy \ --tes-role-name GreengrassV2TokenExchangeRole \ --tes-role-alias-name GreengrassCoreTokenExchangeRoleAlias \ --component-default-user ggc_user:ggc_group \ --provision true \ --init-config ./GreengrassInstaller/config.yaml \ --setup-system-service true
    Windows Command Prompt (CMD)
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ^ -jar ./GreengrassInstaller/lib/Greengrass.jar ^ --aws-region region ^ --thing-name MyGreengrassCore ^ --thing-group-name MyGreengrassCoreGroup ^ --thing-policy-name GreengrassV2IoTThingPolicy ^ --tes-role-name GreengrassV2TokenExchangeRole ^ --tes-role-alias-name GreengrassCoreTokenExchangeRoleAlias ^ --component-default-user ggc_user ^ --provision true ^ --setup-system-service true
    PowerShell
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ` -jar ./GreengrassInstaller/lib/Greengrass.jar ` --aws-region region ` --thing-name MyGreengrassCore ` --thing-group-name MyGreengrassCoreGroup ` --thing-policy-name GreengrassV2IoTThingPolicy ` --tes-role-name GreengrassV2TokenExchangeRole ` --tes-role-alias-name GreengrassCoreTokenExchangeRoleAlias ` --component-default-user ggc_user ` --provision true ` --setup-system-service true
    Important

    Sur les appareils Windows Core, vous --setup-system-service true devez spécifier de configurer le logiciel AWS IoT Greengrass Core en tant que service système.

    Le programme d'installation affiche les messages suivants en cas de succès :

    • Si vous le spécifiez--provision, le programme d'installation affiche Successfully configured Nucleus with provisioned resource details s'il a correctement configuré les ressources.

    • Si vous le spécifiez--deploy-dev-tools, le programme d'installation imprime Configured Nucleus to deploy aws.greengrass.Cli component s'il a créé le déploiement avec succès.

    • Si vous le spécifiez--setup-system-service true, le programme d'installation imprime Successfully set up Nucleus as a system service s'il a configuré et exécuté le logiciel en tant que service.

    • Si vous ne le spécifiez pas--setup-system-service true, le programme d'installation affiche Launched Nucleus successfully s'il a réussi et a exécuté le logiciel.

  3. Ignorez cette étape si vous avez installé la Noyau Greengrass version 2.0.4 ou une version ultérieure. Si vous avez téléchargé la dernière version du logiciel, vous avez installé la version 2.0.4 ou ultérieure.

    Exécutez la commande suivante pour définir les autorisations de fichier requises pour le dossier racine de votre logiciel AWS IoT Greengrass Core. Remplacez-le /greengrass/v2 par le dossier racine que vous avez spécifié dans votre commande d'installation et /greengrass remplacez-le par le dossier parent de votre dossier racine.

    sudo chmod 755 /greengrass/v2 && sudo chmod 755 /greengrass

Si vous avez installé le logiciel AWS IoT Greengrass Core en tant que service système, le programme d'installation exécute le logiciel pour vous. Dans le cas contraire, vous devez exécuter le logiciel manuellement. Pour de plus amples informations, veuillez consulter Exécutez le logiciel AWS IoT Greengrass Core.

Note

Par défaut, le rôle IAM créé par le programme d'installation n'autorise pas l'accès aux artefacts des composants dans les compartiments S3. Pour déployer des composants personnalisés qui définissent des artefacts dans Amazon S3, vous devez ajouter des autorisations au rôle afin de permettre à votre appareil principal de récupérer les artefacts des composants. Pour de plus amples informations, veuillez consulter Autoriser l'accès aux compartiments S3 pour les artefacts des composants.

Si vous ne disposez pas encore d'un compartiment S3 pour les artefacts des composants, vous pouvez ajouter ces autorisations ultérieurement après avoir créé un compartiment.

Pour plus d'informations sur la configuration et l'utilisation du logiciel AWS IoT Greengrass, consultez les rubriques suivantes :

Composants de première partie conformes à la norme FIPS

aws.greengrass.Nucleus data.iot-fips.us-east-1.amazonaws.com
greengrass-fips.us-east-1.amazonaws.com
data.credentials.iot-fips.us-east-1.amazonaws.com
aws.greengrass.TokenExchangeService data.credentials.iot-fips.us-east-1.amazonaws.com
aws.greengrass.Cli
aws.greengrass.StreamManager
  • kinesis-fips.us-east-1.amazonaws.com

  • data.iotsitewise-fips.us-east-1.amazonaws.com

  • s3-fips.us-east-1.amazonaws.com

aws.greengrass.LogManager logs-tips. us-east-1.amazonaws.com
aws.greengrass.crypto.Pkcs11Provider
aws.greengrass.ShadowManager
aws.greengrass.DockerApplicationManager ecr-fips. us-east-1.amazonaws.com
aws.greengrass.SecretManager astuces pour le gestionnaire de secrets. us-east-1.amazonaws.com
aws.greengrass.telemetry.NucleusEmitter
aws.greengrass.clientdevices.IPDetector
aws.greengrass.DiskSpooler