View a markdown version of this page

FIPS-Endpunkte - AWS IoT Greengrass

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

FIPS-Endpunkte

AWS IoT Greengrass unterstützt die Verwendung von FIPS-Endpunkten (Federal Information Processing Standard (FIPS) 140-2). Wenn der FIPS-Modus aktiviert ist, sollten alle Datenübertragungen, einschließlich der HTTP- und MQTT-Protokolle, an AWS Cloud Dienste die entsprechenden FIPS-compliant Endpunkte (FIPS — Amazon Web Services ()) aufrufen und Verbindungen zu diesen herstellen. AWS

MQTT-Kommunikation zur AWS IoT Nutzung des FIPS-Endpunkts der IoT-Datenebene (Verbindung zu FIPS-Endpunkten -) und der von ihr entwickelten kryptografischen Bibliothek AWS IoT aws-lc. AWS IoT Core AWS FIPS-compliant

Für die HTTP-Kommunikation in Greengrass:

  • Für Nucleus- und Plugin-Komponenten werden alle SDK-HTTP-Clients mit FIPS-Endpunkten konfiguriert, indem die Systemeigenschaft AWS_USE_FIPS_ENDPOINT auf true gesetzt wird;

  • Bei generischen Komponenten beginnen alle Komponenten damit, dass die Systemeigenschaft auf true AWS_USE_FIPS_ENDPOINT gesetzt ist. Dieser Prozess stellt sicher, dass die von diesen generischen Komponenten verwendeten SDK-HTTP-Clients Anfragen an FIPS-compliant Endpunkte senden.

Anmerkung

Im Fall von Stream Manager übergibt Nucleus die Umgebungsvariable AWS_GG_FIPS_MODE. Diese Umgebungsvariable ermöglicht es den im Stream Manager verwendeten HTTP-Clients, den entsprechenden FIPS-compliant Endpunkt zu identifizieren und eine Verbindung zu ihm herzustellen.

AWS IoT Greengrass bietet zwei Methoden zur Aktivierung des FIPS-Modus: Bereitstellung und Bereitstellung. Um den FIPS-Modus zu aktivieren, müssen Sie den Konfigurationsparameter fipsMode auf true setzen. Nucleus setzt dann die Systemeigenschaft AWS_USE_FIPS_ENDPOINT auf true und gibt sie als Umgebungsvariable an alle anderen Komponenten weiter. Lädt außerdem ein Root-CA-Zertifikat (CA3) herunter und hängt es an die vorhandene Root-Datei CA.pem (oder) an. AWS IoT Greengrass AmazonRootCA1.pem Wenn Sie FIPS über eine neue Bereitstellung aktivieren, wird Nucleus neu gestartet, um sicherzustellen, dass die Systemeigenschaft nach der Aktivierung des FIPS-Modus wirksam wird.

Neben der Konfiguration des fipsMode Parameters müssen Sie auch die iotDataEndpoint Parameter iotCredEndpoint und greengrassDataEndpoint konfigurieren. Weitere Informationen finden Sie im entsprechenden Dokument unten.

Aktivieren Sie FIPS-Endpunkte bei der Bereitstellung

Holen Sie sich die AWS IoT Endpunkte für Ihre und speichern Sie sie AWS-Konto, um sie später zu verwenden. Ihr Gerät verwendet diese Endpunkte, um eine Verbindung herzustellen. AWS IoT Es sind zwei Endpunkte erforderlich, der iotDataEndpoint und der. iotCredEndpoint Gehen Sie wie folgt vor:

  1. Rufen Sie den FIPS-Datenendpunkt für Ihre Region in den Endpunkten der AWS IoT Core FIPS-Datenebene ab. Der FIPS-Datenendpunkt für Sie AWS-Konto sollte wie folgt aussehen: data.iot-fips.us-west-2.amazonaws.com

  2. Rufen Sie den Endpunkt der FIPS-Anmeldeinformationen für Ihre Region in den Endpunkten der AWS IoT Core FIPS-Datenebene ab. Der Endpunkt der FIPS-Anmeldeinformationen für Sie AWS-Konto sollte wie folgt aussehen: data.credentials.iot-fips.us-west-2.amazonaws.com

Um FIPS bei einer Bereitstellung zu aktivieren, müssen Sie dann die folgende Konfiguration auf Nucleus anwenden. Die Konfiguration, die bei der Bereitstellung zusammengeführt werden soll, lautet wie folgt.

Console
Konfiguration, die zusammengeführt werden soll
{ "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

Mit dem folgenden Befehl wird eine Bereitstellung auf einem Kerngerät erstellt.

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

Die dashboard-deployment.json Datei enthält das folgende JSON-Dokument.

{ "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

Der folgende Greengrass CLI Greengrass-CLI-Befehl erstellt eine lokale Bereitstellung auf einem Kerngerät.

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

Die dashboard-configuration.json Datei enthält das folgende JSON-Dokument.

{ "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" } } }

Installieren Sie Nucleus mit FIPS-Endpunkten mit manueller Ressourcenbereitstellung

Manuelles Bereitstellen von AWS Ressourcen für AWS IoT Greengrass V2 Kerngeräte mit FIPS-Endpunkten

Wichtig

Bevor Sie die AWS IoT Greengrass Core-Software herunterladen, überprüfen Sie, ob Ihr Core-Gerät die Anforderungen für die Installation und Ausführung der AWS IoT Greengrass Core-Software v2.0 erfüllt.

Abrufen AWS IoT Endpunkte

Holen Sie sich die AWS IoT Endpunkte für Ihre und speichern Sie sie AWS-Konto, um sie später zu verwenden. Ihr Gerät verwendet diese Endpunkte, um eine Verbindung herzustellen. AWS IoT Es sind zwei Endpunkte erforderlich, der iotDataEndpoint und der. iotCredEndpoint Gehen Sie wie folgt vor:

  1. Rufen Sie den FIPS-Datenendpunkt für Ihre Region in den Endpunkten der AWS IoT Core FIPS-Datenebene ab. Der FIPS-Datenendpunkt für Sie AWS-Konto sollte wie folgt aussehen: data.iot-fips.us-west-2.amazonaws.com

  2. Rufen Sie den Endpunkt der FIPS-Anmeldeinformationen für Ihre Region in den Endpunkten der AWS IoT Core FIPS-Datenebene ab. Der Endpunkt der FIPS-Anmeldeinformationen für Sie AWS-Konto sollte wie folgt aussehen: data.credentials.iot-fips.us-west-2.amazonaws.com

Erstellen Sie eine AWS IoT Objekt

AWS IoT Dinge stellen Geräte und logische Entitäten dar, mit denen eine Verbindung hergestellt wird AWS IoT. Die Kerngeräte von Greengrass sind AWS IoT Dinge. Wenn Sie ein Gerät als AWS IoT Ding registrieren, kann dieses Gerät ein digitales Zertifikat zur Authentifizierung verwenden. AWS

In diesem Abschnitt erstellen Sie ein Objekt, AWS IoT das Ihr Gerät repräsentiert.

Um eine zu erstellen AWS IoT Objekt
  1. Erstellen Sie AWS IoT etwas für Ihr Gerät. Führen Sie auf Ihrem Entwicklungscomputer den folgenden Befehl aus.

    • MyGreengrassCoreErsetzen Sie es durch den Namen des zu verwendenden Dings. Dieser Name ist auch der Name Ihres Greengrass-Core-Geräts.

      Anmerkung

      Der Name des Dings darf keine Doppelpunkte (:) enthalten.

    aws iot create-thing --thing-name MyGreengrassCore

    Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

    { "thingName": "MyGreengrassCore", "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyGreengrassCore", "thingId": "8cb4b6cd-268e-495d-b5b9-1713d71dbf42" }
  2. (Optional) Fügen Sie das AWS IoT Ding einer neuen oder vorhandenen Dinggruppe hinzu. Sie verwenden Dinggruppen, um Flotten von Greengrass-Core-Geräten zu verwalten. Wenn Sie Softwarekomponenten auf Ihren Geräten bereitstellen, können Sie einzelne Geräte oder Gerätegruppen ins Visier nehmen. Sie können ein Gerät zu einer Dinggruppe mit einer aktiven Greengrass-Bereitstellung hinzufügen, um die Softwarekomponenten dieser Dinggruppe auf dem Gerät bereitzustellen. Gehen Sie wie folgt vor:

    1. (Optional) Erstellen Sie eine AWS IoT Dinggruppe.

      • MyGreengrassCoreGroupErsetzen Sie durch den Namen der zu erstellenden Dinggruppe.

        Anmerkung

        Der Name der Dinggruppe darf keine Doppelpunkte (:) enthalten.

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

      Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

      { "thingGroupName": "MyGreengrassCoreGroup", "thingGroupArn": "arn:aws:iot:us-west-2:123456789012:thinggroup/MyGreengrassCoreGroup", "thingGroupId": "4df721e1-ff9f-4f97-92dd-02db4e3f03aa" }
    2. Fügt das AWS IoT Ding einer Dinggruppe hinzu.

      • MyGreengrassCoreErsetze es durch den Namen deiner AWS IoT Sache.

      • MyGreengrassCoreGroupErsetze es durch den Namen der Dinggruppe.

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

      Der Befehl hat keine Ausgabe, wenn die Anfrage erfolgreich ist.

Erstellen Sie das Ding-Zertifikat

Wenn Sie ein Gerät als AWS IoT Ding registrieren, kann dieses Gerät ein digitales Zertifikat zur Authentifizierung verwenden. AWS Dieses Zertifikat ermöglicht es dem Gerät, mit AWS IoT und AWS IoT Greengrass zu kommunizieren.

In diesem Abschnitt erstellen und laden Sie Zertifikate herunter, mit denen Ihr Gerät eine Verbindung herstellen kann AWS.

Wenn Sie die AWS IoT Greengrass Core-Software so konfigurieren möchten, dass ein Hardware-Sicherheitsmodul (HSM) zum sicheren Speichern des privaten Schlüssels und des Zertifikats verwendet wird, folgen Sie den Schritten, um das Zertifikat aus einem privaten Schlüssel in einem HSM zu erstellen. Folgen Sie andernfalls den Schritten zur Erstellung des Zertifikats und des privaten Schlüssels im AWS IoT Dienst. Die Hardware-Sicherheitsfunktion ist nur auf Linux-Geräten verfügbar. Weitere Informationen zur Hardwaresicherheit und zu den Anforderungen für deren Verwendung finden Sie unterIntegration von Hardware-Sicherheit.

Erstellen Sie das Zertifikat und den privaten Schlüssel im AWS IoT Service nicht zulässig

Um das Ding-Zertifikat zu erstellen
  1. Erstellen Sie einen Ordner, in den Sie die Zertifikate für das AWS IoT Ding herunterladen.

    mkdir greengrass-v2-certs
  2. Erstellen Sie die Zertifikate für das AWS IoT Ding und laden Sie sie herunter.

    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

    Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

    { "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-----\ " } }

    Speichern Sie den Amazon-Ressourcennamen (ARN) des Zertifikats, um ihn später für die Konfiguration des Zertifikats zu verwenden.

Erstellen Sie das Zertifikat aus einem privaten Schlüssel in einem HSM

Anmerkung

Diese Funktion ist für Version 2.5.3 und höher der Greengrass Nucleus-Komponente verfügbar. AWS IoT Greengrass unterstützt diese Funktion derzeit nicht auf Windows-Core-Geräten.

Um das Ding-Zertifikat zu erstellen
  1. Initialisieren Sie auf dem Kerngerät ein PKCS #11 -Token im HSM und generieren Sie einen privaten Schlüssel. Der private Schlüssel muss ein RSA-Schlüssel mit einer RSA-2048 Schlüsselgröße (oder größer) oder ein ECC-Schlüssel sein.

    Anmerkung

    Um ein Hardware-Sicherheitsmodul mit ECC-Schlüsseln zu verwenden, müssen Sie Greengrass Nucleus v2.5.6 oder höher verwenden.

    Um ein Hardware-Sicherheitsmodul und einen Secret Manager zu verwenden, müssen Sie ein Hardware-Sicherheitsmodul mit RSA-Schlüsseln verwenden.

    Lesen Sie in der Dokumentation zu Ihrem HSM nach, wie Sie das Token initialisieren und den privaten Schlüssel generieren. Wenn Ihr HSM Objekt-IDs unterstützt, geben Sie beim Generieren des privaten Schlüssels eine Objekt-ID an. Speichern Sie die Slot-ID, die Benutzer-PIN, die Objektbezeichnung und die Objekt-ID (falls Ihr HSM eine verwendet), die Sie bei der Initialisierung des Tokens und Generieren des privaten Schlüssels angeben. Sie verwenden diese Werte später, wenn Sie das Ding-Zertifikat in das HSM importieren und die Core-Software konfigurieren. AWS IoT Greengrass

  2. Erstellen Sie eine Zertifikatsignieranforderung (CSR) aus dem privaten Schlüssel. AWS IoT verwendet diesen CSR, um ein Ding-Zertifikat für den privaten Schlüssel zu erstellen, den Sie im HSM generiert haben. Informationen zum Erstellen eines CSR aus dem privaten Schlüssel finden Sie in der Dokumentation zu Ihrem HSM. Die CSR ist eine Datei, wie z. B. iotdevicekey.csr

  3. Kopieren Sie die CSR vom Gerät auf Ihren Entwicklungscomputer. Wenn SSH und SCP auf dem Entwicklungscomputer und dem Gerät aktiviert sind, können Sie den scp Befehl auf Ihrem Entwicklungscomputer verwenden, um die CSR zu übertragen. device-ip-addressErsetzen Sie es durch die IP-Adresse Ihres Geräts und ~/iotdevicekey.csr ersetzen Sie es durch den Pfad zur CSR-Datei auf dem Gerät.

    scp device-ip-address:~/iotdevicekey.csr iotdevicekey.csr
  4. Erstellen Sie auf Ihrem Entwicklungscomputer einen Ordner, in den Sie das Zertifikat für das AWS IoT Ding herunterladen.

    mkdir greengrass-v2-certs
  5. Verwenden Sie die CSR-Datei, um das Zertifikat für das AWS IoT Ding zu erstellen und auf Ihren Entwicklungscomputer herunterzuladen.

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

    Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

    { "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-----" }

    Speichern Sie den ARN des Zertifikats, um ihn später für die Konfiguration des Zertifikats zu verwenden.

Als Nächstes konfigurieren Sie das Ding-Zertifikat. Weitere Informationen finden Sie unter Konfigurieren Sie das Ding-Zertifikat.

Erstellen Sie eine Token-Exchange-Rolle

Greengrass-Core-Geräte verwenden eine IAM-Servicerolle, die so genannte Token-Exchange-Rolle, um Aufrufe von Diensten zu autorisieren. AWS Das Gerät verwendet den AWS IoT Anmeldeinformationsanbieter, um temporäre AWS Anmeldeinformationen für diese Rolle abzurufen. Dadurch kann das Gerät mit Amazon S3 interagieren AWS IoT, Protokolle an Amazon CloudWatch Logs senden und benutzerdefinierte Komponentenartefakte von Amazon S3 herunterladen. Weitere Informationen finden Sie unter Autorisieren Sie Kerngeräte für die Interaktion mit Diensten AWS.

Sie verwenden einen AWS IoT Rollenalias, um die Token-Exchange-Rolle für Greengrass-Core-Geräte zu konfigurieren. Mit Rollenaliasen können Sie die Token-Exchange-Rolle für ein Gerät ändern, die Gerätekonfiguration jedoch unverändert lassen. Weitere Informationen finden Sie im AWS IoT Core Entwicklerhandbuch unter Autorisieren von direkten Aufrufen von AWS Diensten.

In diesem Abschnitt erstellen Sie eine Token Exchange-IAM-Rolle und einen Rollenalias, der auf die AWS IoT Rolle verweist. Wenn Sie bereits ein Greengrass-Core-Gerät eingerichtet haben, können Sie dessen Token-Exchange-Rolle und den Rollenalias verwenden, anstatt neue zu erstellen. Dann konfigurieren Sie das AWS IoT Ding Ihres Geräts so, dass es diese Rolle und diesen Alias verwendet.

So erstellen Sie eine Token-Exchange-IAM-Rolle
  1. Erstellen Sie eine IAM-Rolle, die Ihr Gerät als Token-Exchange-Rolle verwenden kann. Gehen Sie wie folgt vor:

    1. Erstellen Sie eine Datei, die das Vertrauensrichtliniendokument enthält, das für die Token-Exchange-Rolle erforderlich ist.

      Auf einem Linux-based System können Sie beispielsweise den folgenden Befehl ausführen, um GNU nano zum Erstellen der Datei zu verwenden.

      nano device-role-trust-policy.json

      Kopieren Sie das folgende JSON in die Datei.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "credentials.iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    2. Erstellen Sie die Token-Exchange-Rolle mit dem Dokument zur Vertrauensrichtlinie.

      • GreengrassV2TokenExchangeRoleErsetzen Sie sie durch den Namen der IAM-Rolle, die erstellt werden soll.

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

      Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

      { "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. Erstellen Sie eine Datei, die das Dokument mit der Zugriffsrichtlinie enthält, das für die Token-Exchange-Rolle erforderlich ist.

      Auf einem Linux-based System können Sie beispielsweise den folgenden Befehl ausführen, um GNU nano zum Erstellen der Datei zu verwenden.

      nano device-role-access-policy.json

      Kopieren Sie das folgende JSON in die Datei.

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

      Diese Zugriffsrichtlinie erlaubt keinen Zugriff auf Komponentenartefakte in S3-Buckets. Um benutzerdefinierte Komponenten bereitzustellen, die Artefakte in Amazon S3 definieren, müssen Sie der Rolle Berechtigungen hinzufügen, damit Ihr Kerngerät Komponenten-Artefakte abrufen kann. Weitere Informationen finden Sie unter Erlauben Sie den Zugriff auf S3-Buckets für Komponentenartefakte.

      Wenn Sie noch keinen S3-Bucket für Komponenten-Artefakte haben, können Sie diese Berechtigungen später hinzufügen, nachdem Sie einen Bucket erstellt haben.

    4. Erstellen Sie die IAM-Richtlinie aus dem Richtliniendokument.

      • GreengrassV2TokenExchangeRoleAccessErsetzen Sie durch den Namen der IAM-Richtlinie, die erstellt werden soll.

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

      Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

      { "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. Hängen Sie die IAM-Richtlinie an die Token-Exchange-Rolle an.

      • Ersetzen Sie GreengrassV2TokenExchangeRole durch den Namen der IAM-Rolle.

      • Ersetzen Sie den Richtlinien-ARN durch den ARN der IAM-Richtlinie, die Sie im vorherigen Schritt erstellt haben.

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

      Der Befehl hat keine Ausgabe, wenn die Anfrage erfolgreich ist.

  2. Erstellen Sie einen AWS IoT Rollenalias, der auf die Token-Exchange-Rolle verweist.

    • GreengrassCoreTokenExchangeRoleAliasErsetzen Sie ihn durch den Namen des zu erstellenden Rollenalias.

    • Ersetzen Sie den Rollen-ARN durch den ARN der IAM-Rolle, die Sie im vorherigen Schritt erstellt haben.

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

    Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

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

    Um einen Rollenalias zu erstellen, benötigen Sie die Berechtigung, die Token-Exchange-IAM-Rolle an zu übergeben. AWS IoT Wenn Sie beim Versuch, einen Rollenalias zu erstellen, eine Fehlermeldung erhalten, überprüfen Sie, ob Ihr AWS Benutzer über diese Berechtigung verfügt. Weitere Informationen finden Sie im Benutzerhandbuch unter Erteilen von Benutzerberechtigungen zum Übergeben einer Rolle an einen AWS Dienst . AWS Identity and Access Management

  3. Erstellen Sie eine AWS IoT Richtlinie und fügen Sie sie hinzu, die es Ihrem Greengrass-Core-Gerät ermöglicht, den Rollenalias zu verwenden, um die Token-Exchange-Rolle zu übernehmen. Wenn Sie bereits ein Greengrass-Core-Gerät eingerichtet haben, können Sie dessen AWS IoT Rollenalias-Richtlinie anhängen, anstatt eine neue zu erstellen. Gehen Sie wie folgt vor:

    1. (Optional) Erstellen Sie eine Datei, die das AWS IoT Richtliniendokument enthält, das für den Rollenalias erforderlich ist.

      Auf einem Linux-based System können Sie beispielsweise den folgenden Befehl ausführen, um GNU nano zum Erstellen der Datei zu verwenden.

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

      Kopieren Sie das folgende JSON in die Datei.

      • Ersetzen Sie den Ressourcen-ARN durch den ARN Ihres Rollenalias.

      { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:AssumeRoleWithCertificate", "Resource": "arn:aws:iot:us-west-2:123456789012:rolealias/GreengrassCoreTokenExchangeRoleAlias" } ] }
    2. Erstellen Sie eine AWS IoT Richtlinie aus dem Richtliniendokument.

      • GreengrassCoreTokenExchangeRoleAliasPolicyErsetzen Sie es durch den Namen der zu erstellenden AWS IoT Richtlinie.

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

      Die Antwort sieht ähnlich aus wie im folgenden Beispiel, wenn die Anfrage erfolgreich ist.

      { "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. Hängen Sie die AWS IoT Richtlinie an das Zertifikat des AWS IoT Dings an.

      • GreengrassCoreTokenExchangeRoleAliasPolicyErsetzen Sie es durch den Namen der AWS IoT Rollenalias-Richtlinie.

      • Ersetzen Sie den Ziel-ARN durch den ARN des Zertifikats für Ihr AWS IoT Ding.

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

      Der Befehl hat keine Ausgabe, wenn die Anfrage erfolgreich ist.

Laden Sie Zertifikate auf das Gerät herunter

Zuvor haben Sie das Zertifikat Ihres Geräts auf Ihren Entwicklungscomputer heruntergeladen. In diesem Abschnitt kopieren Sie das Zertifikat auf Ihr Hauptgerät, um das Gerät mit den Zertifikaten einzurichten, mit denen es eine Verbindung herstellt AWS IoT. Sie laden auch das Amazon-Zertifikat der Root Certificate Authority (CA) herunter. Wenn Sie ein HSM verwenden, importieren Sie in diesem Abschnitt auch die Zertifikatsdatei in das HSM.

  • Wenn Sie das Ding-Zertifikat und den privaten Schlüssel zuvor im AWS IoT Service erstellt haben, folgen Sie den Schritten zum Herunterladen der Zertifikate mit dem privaten Schlüssel und den Zertifikatsdateien.

  • Wenn Sie das Dingzertifikat zuvor aus einem privaten Schlüssel in einem Hardwaresicherheitsmodul (HSM) erstellt haben, folgen Sie den Schritten zum Herunterladen der Zertifikate mit dem privaten Schlüssel und dem Zertifikat in einem HSM.

Laden Sie Zertifikate mit privatem Schlüssel und Zertifikatsdateien herunter

Um Zertifikate auf das Gerät herunterzuladen
  1. Kopieren Sie das AWS IoT Ding-Zertifikat von Ihrem Entwicklungscomputer auf das Gerät. Wenn SSH und SCP auf dem Entwicklungscomputer und dem Gerät aktiviert sind, können Sie den scp Befehl auf Ihrem Entwicklungscomputer verwenden, um das Zertifikat zu übertragen. device-ip-addressErsetzen Sie es durch die IP-Adresse Ihres Geräts.

    scp -r greengrass-v2-certs/ device-ip-address:~
  2. Erstellen Sie den Greengrass-Stammordner auf dem Gerät. Sie werden später die AWS IoT Greengrass Core-Software in diesem Ordner installieren.

    Anmerkung

    Windows hat eine Pfadlängenbegrenzung von 260 Zeichen. Wenn Sie Windows verwenden, verwenden Sie einen Stammordner wie C:\greengrass\v2 oder, D:\greengrass\v2 um die Pfade der Greengrass-Komponenten unter der 260-Zeichen-Grenze zu halten.

    Linux or Unix
    • Ersetzen Sie ihn /greengrass/v2 durch den zu verwendenden Ordner.

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2Ersetzen Sie es durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
    PowerShell
    • C:\greengrass\v2Ersetzen Sie es durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
  3. (Nur Linux) Legen Sie die Berechtigungen des übergeordneten Ordners des Greengrass-Stammordners fest.

    • /greengrassErsetzen Sie es durch das übergeordnete Element des Stammordners.

    sudo chmod 755 /greengrass
  4. Kopieren Sie die AWS IoT Ding-Zertifikate in den Greengrass-Stammordner.

    Linux or Unix
    • Ersetzen Sie es /greengrass/v2 durch den Greengrass-Stammordner.

    sudo cp -R ~/greengrass-v2-certs/* /greengrass/v2
    Windows Command Prompt
    • Ersetzen Sie ihn C:\greengrass\v2 durch den zu verwendenden Ordner.

    robocopy %USERPROFILE%\greengrass-v2-certs C:\greengrass\v2 /E
    PowerShell
    • C:\greengrass\v2Ersetzen Sie es durch den zu verwendenden Ordner.

    cp -Path ~\greengrass-v2-certs\* -Destination C:\greengrass\v2
  5. Laden Sie das Amazon-Zertifikat der Root Certificate Authority (CA) herunter. AWS IoT Zertifikate sind standardmäßig dem Root-CA-Zertifikat von Amazon zugeordnet. Laden Sie das CA1-Zertifikat und das CA3-Zertifikat herunter.

    Linux or Unix
    • Ersetzen Sie /greengrass/v2 oder durch C:\greengrass\v2 den Greengrass-Stammordner.

    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

Laden Sie Zertifikate mit dem privaten Schlüssel und dem Zertifikat in einem HSM herunter

Anmerkung

Diese Funktion ist für Version 2.5.3 und höher der Greengrass Nucleus-Komponente verfügbar. AWS IoT Greengrass unterstützt diese Funktion derzeit nicht auf Windows-Core-Geräten.

Um Zertifikate auf das Gerät herunterzuladen
  1. Kopieren Sie das AWS IoT Ding-Zertifikat von Ihrem Entwicklungscomputer auf das Gerät. Wenn SSH und SCP auf dem Entwicklungscomputer und dem Gerät aktiviert sind, können Sie den scp Befehl auf Ihrem Entwicklungscomputer verwenden, um das Zertifikat zu übertragen. device-ip-addressErsetzen Sie es durch die IP-Adresse Ihres Geräts.

    scp -r greengrass-v2-certs/ device-ip-address:~
  2. Erstellen Sie den Greengrass-Stammordner auf dem Gerät. Sie werden später die AWS IoT Greengrass Core-Software in diesem Ordner installieren.

    Anmerkung

    Windows hat eine Pfadlängenbegrenzung von 260 Zeichen. Wenn Sie Windows verwenden, verwenden Sie einen Stammordner wie C:\greengrass\v2 oder, D:\greengrass\v2 um die Pfade der Greengrass-Komponenten unter der 260-Zeichen-Grenze zu halten.

    Linux or Unix
    • Ersetzen Sie ihn /greengrass/v2 durch den zu verwendenden Ordner.

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2Ersetzen Sie es durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
    PowerShell
    • C:\greengrass\v2Ersetzen Sie es durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
  3. (Nur Linux) Legen Sie die Berechtigungen des übergeordneten Ordners des Greengrass-Stammordners fest.

    • /greengrassErsetzen Sie es durch das übergeordnete Element des Stammordners.

    sudo chmod 755 /greengrass
  4. Importieren Sie die Ding-Zertifikatsdatei in das HSM. ~/greengrass-v2-certs/device.pem.crt Lesen Sie in der Dokumentation zu Ihrem HSM nach, wie Sie Zertifikate in das HSM importieren. Importieren Sie das Zertifikat mit demselben Token, derselben Slot-ID, Benutzer-PIN, Objektbezeichnung und Objekt-ID (falls Ihr HSM eine verwendet), mit der Sie zuvor den privaten Schlüssel im HSM generiert haben.

    Anmerkung

    Wenn Sie den privaten Schlüssel zuvor ohne Objekt-ID generiert haben und das Zertifikat eine Objekt-ID hat, setzen Sie die Objekt-ID des privaten Schlüssels auf denselben Wert wie das Zertifikat. Lesen Sie in der Dokumentation zu Ihrem HSM nach, wie Sie die Objekt-ID für das Objekt mit dem privaten Schlüssel festlegen.

  5. (Optional) Löschen Sie die Ding-Zertifikatsdatei, sodass sie nur im HSM existiert.

    rm ~/greengrass-v2-certs/device.pem.crt
  6. Laden Sie das Amazon-Zertifikat der Root Certificate Authority (CA) herunter. AWS IoT Zertifikate sind standardmäßig dem Root-CA-Zertifikat von Amazon zugeordnet. Laden Sie sowohl das CA1- als auch das CA3-Zertifikat herunter.

    Linux or Unix
    • Ersetzen Sie /greengrass/v2 oder durch C:\greengrass\v2 den Greengrass-Stammordner.

    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

Richten Sie die Geräteumgebung ein

Folgen Sie den Schritten in diesem Abschnitt, um ein Linux- oder Windows-Gerät einzurichten, das als Ihr AWS IoT Greengrass Hauptgerät verwendet werden soll.

Richten Sie ein Linux-Gerät ein

So richten Sie ein Linux-Gerät ein für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie Amazon Corretto - oder https://openjdk.java.net/ OpenJDK-Versionen mit langfristigem Support verwenden. Version 8 oder höher ist erforderlich. Die folgenden Befehle zeigen Ihnen, wie Sie OpenJDK auf Ihrem Gerät installieren.

    • Für unsere Debian-based Distributionen Ubuntu-based :

      sudo apt install default-jdk
    • Für Hat-based Red-Distributionen:

      sudo yum install java-11-openjdk-devel
    • Für Amazon Linux 2:

      sudo amazon-linux-extras install java-openjdk11
    • Für Amazon Linux 2023:

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

    Wenn die Installation abgeschlossen ist, führen Sie den folgenden Befehl aus, um zu überprüfen, ob Java auf Ihrem Linux-Gerät ausgeführt wird.

    java -version

    Der Befehl druckt die Version von Java, die auf dem Gerät ausgeführt wird. Bei einer Debian-based Distribution könnte die Ausgabe beispielsweise dem folgenden Beispiel ähneln.

    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. (Optional) Erstellen Sie den Standardsystembenutzer und die Standardgruppe, die Komponenten auf dem Gerät ausführen. Sie können auch festlegen, dass das AWS IoT Greengrass Core-Software-Installationsprogramm diesen Benutzer und diese Gruppe während der Installation mit dem --component-default-user Installer-Argument erstellt. Weitere Informationen finden Sie unter Argumente des Installers.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Stellen Sie sicher, dass der Benutzer, der die AWS IoT Greengrass Core-Software ausführt (in der Regelroot), die Berechtigung hat, sie sudo mit einem beliebigen Benutzer und jeder Gruppe auszuführen.

    1. Führen Sie den folgenden Befehl aus, um die /etc/sudoers Datei zu öffnen.

      sudo visudo
    2. Stellen Sie sicher, dass die Berechtigung für den Benutzer wie im folgenden Beispiel aussieht.

      root ALL=(ALL:ALL) ALL
  4. (Optional) Um containerisierte Lambda-Funktionen auszuführen, müssen Sie cgroups v1 aktivieren und die Speicher - und Geräte-Cgroups aktivieren und mounten. Wenn Sie nicht vorhaben, containerisierte Lambda-Funktionen auszuführen, können Sie diesen Schritt überspringen.

    Um diese Cgroups-Optionen zu aktivieren, starten Sie das Gerät mit den folgenden Linux-Kernel-Parametern.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Informationen zum Anzeigen und Einstellen der Kernelparameter für Ihr Gerät finden Sie in der Dokumentation zu Ihrem Betriebssystem und Bootloader. Folgen Sie den Anweisungen, um die Kernel-Parameter dauerhaft einzustellen.

  5. Installieren Sie alle anderen erforderlichen Abhängigkeiten auf Ihrem Gerät, wie in der Anforderungsliste unter angegebenAnforderungen an Speichergeräte.

Richten Sie ein Windows-Gerät ein

Anmerkung

Diese Funktion ist für Version 2.5.0 und höher der Greengrass Nucleus-Komponente verfügbar.

Um ein Windows-Gerät einzurichten für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie Amazon Corretto - oder https://openjdk.java.net/ OpenJDK-Versionen mit langfristigem Support verwenden. Version 8 oder höher ist erforderlich.

  2. Prüfen Sie, ob Java in der https://en.wikipedia.org/wiki/PATH_(variable) PATH-Systemvariablen verfügbar ist, und fügen Sie es hinzu, falls nicht. Auf dem LocalSystem Konto wird die AWS IoT Greengrass Core-Software ausgeführt. Sie müssen also Java zur PATH-Systemvariablen hinzufügen und nicht zur PATH-Benutzervariablen für Ihren Benutzer. Gehen Sie wie folgt vor:

    1. Drücken Sie die Windows-Taste, um das Startmenü zu öffnen.

    2. Geben Sie environment variables ein, um im Startmenü nach den Systemoptionen zu suchen.

    3. Wählen Sie im Startmenü die Option Systemumgebungsvariablen bearbeiten aus, um das Fenster mit den Systemeigenschaften zu öffnen.

    4. Wählen Sie Umgebungsvariablen... um das Fenster „Umgebungsvariablen“ zu öffnen.

    5. Wählen Sie unter Systemvariablen die Option Pfad und dann Bearbeiten aus. Im Fenster „Umgebungsvariable bearbeiten“ können Sie jeden Pfad in einer separaten Zeile anzeigen.

    6. Prüfen Sie, ob der Pfad zum bin Ordner der Java-Installation vorhanden ist. Der Pfad könnte dem folgenden Beispiel ähneln.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Wenn der bin Ordner der Java-Installation in Path fehlt, wählen Sie Neu, um ihn hinzuzufügen, und klicken Sie dann auf OK.

  3. Öffnen Sie die Windows-Eingabeaufforderung (cmd.exe) als Administrator.

  4. Erstellen Sie den Standardbenutzer im LocalSystem Konto auf dem Windows-Gerät. passwordErsetzen Sie es durch ein sicheres Passwort.

    net user /add ggc_user password
    Tipp

    Abhängig von Ihrer Windows-Konfiguration ist das Passwort des Benutzers möglicherweise so eingerichtet, dass es zu einem späteren Zeitpunkt abläuft. Um sicherzustellen, dass Ihre Greengrass-Anwendungen weiterhin funktionieren, verfolgen Sie, wann das Passwort abläuft, und aktualisieren Sie es, bevor es abläuft. Sie können das Passwort des Benutzers auch so einstellen, dass es niemals abläuft.

    • Führen Sie den folgenden Befehl aus, um zu überprüfen, wann ein Benutzer und sein Passwort ablaufen.

      net user ggc_user | findstr /C:expires
    • Führen Sie den folgenden Befehl aus, um das Passwort eines Benutzers so einzustellen, dass es niemals abläuft.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Wenn Sie Windows 10 oder höher verwenden und der wmic Befehl veraltet ist, führen Sie den folgenden PowerShell Befehl aus.

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Laden Sie das PsExec Programm von Microsoft herunter und installieren Sie es auf dem Gerät.

  6. Verwenden Sie das PsExec Tool, um den Benutzernamen und das Passwort für den Standardbenutzer in der Credential Manager-Instanz für das LocalSystem Konto zu speichern. passwordErsetzen Sie es durch das Passwort des Benutzers, das Sie zuvor festgelegt haben.

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

    Wenn das PsExec License Agreement geöffnet wird, stimmen Sie Accept der Lizenz zu und führen Sie den Befehl aus.

    Anmerkung

    Auf Windows-Geräten wird auf dem LocalSystem Konto der Greengrass Nucleus ausgeführt, und Sie müssen das PsExec Programm verwenden, um die Standardbenutzerinformationen im LocalSystem Konto zu speichern. Wenn Sie die Credential Manager-Anwendung verwenden, werden diese Informationen nicht im Konto, sondern im Windows-Konto des aktuell angemeldeten Benutzers gespeichert. LocalSystem

Laden Sie das herunter AWS IoT Greengrass Kernsoftware

Sie können die neueste Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen:

Anmerkung

Sie können eine bestimmte Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen. Ersetzen Sie version durch die Version, die heruntergeladen werden soll.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Um das herunterzuladen AWS IoT Greengrass Kernsoftware
  1. Laden Sie die Core-Software auf Ihrem AWS IoT Greengrass Hauptgerät in eine Datei mit dem Namen heruntergreengrass-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

    Mit dem Download dieser Software stimmen Sie der Greengrass Core-Software-Lizenzvereinbarung zu.

  2. (Optional) Um die Greengrass Nucleus-Softwaresignatur zu überprüfen

    Anmerkung

    Diese Funktion ist mit Greengrass Nucleus Version 2.9.5 und höher verfügbar.

    1. Verwenden Sie den folgenden Befehl, um die Signatur Ihres Greengrass-Nukleus-Artefakts zu überprüfen:

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

      Der Dateiname kann je nach installierter JDK-Version anders aussehen. Ersetzen Sie ihn jdk17.0.6_10 durch die JDK-Version, die Sie installiert haben.

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

      Der Dateiname kann je nach der von Ihnen installierten JDK-Version unterschiedlich aussehen. Ersetzen Sie ihn jdk17.0.6_10 durch die JDK-Version, die Sie installiert haben.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. Der jarsigner Aufruf liefert eine Ausgabe, die die Ergebnisse der Überprüfung angibt.

      1. Wenn die Greengrass-Nucleus-Zip-Datei signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar verified.
      2. Wenn die Greengrass-Nucleus-Zip-Datei nicht signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar is unsigned.
    3. Wenn Sie die -certs Jarsigner-Option zusammen mit den -verbose Optionen -verify und angegeben haben, enthält die Ausgabe auch detaillierte Informationen zum Unterzeichnerzertifikat.

  3. Entpacken Sie die AWS IoT Greengrass Core-Software in einen Ordner auf Ihrem Gerät. GreengrassInstallerErsetzen Sie es durch den Ordner, den Sie verwenden möchten.

    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. (Optional) Führen Sie den folgenden Befehl aus, um die Version der AWS IoT Greengrass Core-Software anzuzeigen.

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

Wenn Sie eine Version von Greengrass Nucleus vor v2.4.0 installieren, entfernen Sie diesen Ordner nicht, nachdem Sie die AWS IoT Greengrass Core-Software installiert haben. Die AWS IoT Greengrass Core-Software verwendet die Dateien in diesem Ordner zur Ausführung.

Wenn Sie die neueste Version der Software heruntergeladen haben, installieren Sie Version 2.4.0 oder höher. Sie können diesen Ordner nach der Installation der AWS IoT Greengrass Core-Software entfernen.

Installieren Sie die AWS IoT Greengrass Kernsoftware

Führen Sie das Installationsprogramm mit Argumenten aus, die die folgenden Aktionen angeben:

  • Installieren Sie die Installation anhand einer Teilkonfigurationsdatei, in der angegeben ist, dass die zuvor erstellten AWS Ressourcen und Zertifikate verwendet werden sollen. Die AWS IoT Greengrass Core-Software verwendet eine Konfigurationsdatei, die die Konfiguration jeder Greengrass-Komponente auf dem Gerät spezifiziert. Das Installationsprogramm erstellt eine vollständige Konfigurationsdatei aus der von Ihnen bereitgestellten Teilkonfigurationsdatei.

  • Geben Sie an, dass der ggc_user Systembenutzer zum Ausführen von Softwarekomponenten auf dem Kerngerät verwendet werden soll. Auf Linux-Geräten gibt dieser Befehl auch an, dass die ggc_group Systemgruppe verwendet werden soll, und das Installationsprogramm erstellt den Systembenutzer und die Systemgruppe für Sie.

  • Richten Sie die AWS IoT Greengrass Core-Software als Systemdienst ein, der beim Booten ausgeführt wird. Auf Linux-Geräten erfordert dies das https://en.wikipedia.org/wiki/Systemd Systemd-Init-System.

    Wichtig

    Auf Windows-Core-Geräten müssen Sie die AWS IoT Greengrass Core-Software als Systemdienst einrichten.

Weitere Hinweise zu den Argumenten, die Sie angeben können, finden Sie unterArgumente des Installers.

Anmerkung

Wenn Sie AWS IoT Greengrass auf einem Gerät mit begrenztem Arbeitsspeicher arbeiten, können Sie die Speichermenge steuern, die die AWS IoT Greengrass Core-Software verwendet. Um die Speicherzuweisung zu steuern, können Sie die Optionen für die Größe des JVM-Heaps im jvmOptions Konfigurationsparameter Ihrer Nucleus-Komponente festlegen. Weitere Informationen finden Sie unter Steuern Sie die Speicherzuweisung mit JVM-Optionen.

  • Wenn Sie das Ding-Zertifikat und den privaten Schlüssel zuvor im AWS IoT Service erstellt haben, folgen Sie den Schritten, um die AWS IoT Greengrass Core-Software mit privaten Schlüssel- und Zertifikatsdateien zu installieren.

  • Wenn Sie das Ding-Zertifikat zuvor aus einem privaten Schlüssel in einem Hardware-Sicherheitsmodul (HSM) erstellt haben, folgen Sie den Schritten, um die AWS IoT Greengrass Core-Software mit dem privaten Schlüssel und dem Zertifikat in einem HSM zu installieren.

Installieren Sie das AWS IoT Greengrass Kernsoftware mit privaten Schlüssel- und Zertifikatsdateien

Um das zu installieren AWS IoT Greengrass Kernsoftware
  1. Überprüfen Sie die Version der AWS IoT Greengrass Core-Software.

    • GreengrassInstallerErsetzen Sie durch den Pfad zu dem Ordner, der die Software enthält.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Verwenden Sie einen Texteditor, um eine Konfigurationsdatei zu erstellen, die so benannt ist, dass sie dem Installationsprogramm config.yaml zur Verfügung gestellt wird.

    Auf einem Linux-based System können Sie beispielsweise den folgenden Befehl ausführen, um GNU nano zum Erstellen der Datei zu verwenden.

    nano GreengrassInstaller/config.yaml

    Kopieren Sie den folgenden YAML-Inhalt in die Datei. Diese teilweise Konfigurationsdatei spezifiziert Systemparameter und Greengrass-Nucleus-Parameter.

    --- 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"

    Führen Sie dann die folgenden Schritte aus:

    • Ersetzen Sie jede Instanz von /greengrass/v2 durch den Greengrass-Stammordner.

    • Ersetze es MyGreengrassCore durch den Namen des Dings AWS IoT .

    • 2.18.0Durch die Version der AWS IoT Greengrass Core-Software ersetzen.

    • us-west-2Ersetzen Sie durch die AWS-Region Stelle, an der Sie die Ressourcen erstellt haben.

    • GreengrassCoreTokenExchangeRoleAliasErsetzen Sie es durch den Namen des Alias für die Token-Exchange-Rolle.

    • Ersetzen Sie den iotDataEndpoint durch Ihren AWS IoT Datenendpunkt.

    • Ersetzen Sie den Endpunkt iotCredEndpoint durch Ihre AWS IoT Anmeldeinformationen.

  3. Führen Sie das Installationsprogramm aus und geben Sie --init-config an, dass Sie die Konfigurationsdatei bereitstellen möchten.

    • Ersetzen Sie /greengrass/v2 oder C:\greengrass\v2 durch den Greengrass-Stammordner.

    • Ersetzen Sie jede Instanz von GreengrassInstaller durch den Ordner, in den Sie das Installationsprogramm entpackt haben.

    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
    Wichtig

    Auf Windows-Core-Geräten müssen Sie angeben, --setup-system-service true dass die AWS IoT Greengrass Core-Software als Systemdienst eingerichtet werden soll.

    Wenn Sie angeben--setup-system-service true, druckt das Installationsprogramm, Successfully set up Nucleus as a system service ob es die Software als Systemdienst eingerichtet und ausgeführt hat. Andernfalls gibt das Installationsprogramm keine Meldung aus, wenn die Software erfolgreich installiert wurde.

    Anmerkung

    Sie können das deploy-dev-tools Argument nicht verwenden, um lokale Entwicklungstools bereitzustellen, wenn Sie das Installationsprogramm ohne das --provision true Argument ausführen. Informationen zur direkten Bereitstellung der Greengrass CLI auf Ihrem Gerät finden Sie unterGreengrass-Befehlszeilenschnittstelle.

  4. Überprüfen Sie die Installation, indem Sie sich die Dateien im Stammordner ansehen.

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

    Wenn die Installation erfolgreich war, enthält der Stammordner mehrere Ordner, z. B. configpackages, undlogs.

Installieren Sie den AWS IoT Greengrass Kernsoftware mit dem privaten Schlüssel und dem Zertifikat in einem HSM

Anmerkung

Diese Funktion ist für Version 2.5.3 und höher der Greengrass Nucleus-Komponente verfügbar. AWS IoT Greengrass unterstützt diese Funktion derzeit nicht auf Windows-Core-Geräten.

Um das zu installieren AWS IoT Greengrass Kernsoftware
  1. Überprüfen Sie die Version der AWS IoT Greengrass Core-Software.

    • GreengrassInstallerErsetzen Sie durch den Pfad zu dem Ordner, der die Software enthält.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Damit die AWS IoT Greengrass Core-Software den privaten Schlüssel und das Zertifikat im HSM verwenden kann, installieren Sie bei der Installation der AWS IoT Greengrass Core-Software die PKCS #11 -Anbieterkomponente. Die PKCS #11 -Anbieterkomponente ist ein Plugin, das Sie während der Installation konfigurieren können. Sie können die neueste Version der PKCS #11 -Anbieterkomponente von der folgenden Adresse herunterladen:

    Laden Sie das PKCS #11 -Anbieter-Plugin in eine Datei mit dem Namen herunter. aws.greengrass.crypto.Pkcs11Provider.jar GreengrassInstallerErsetzen Sie es durch den Ordner, den Sie verwenden möchten.

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

    Mit dem Download dieser Software stimmen Sie der Greengrass Core-Software-Lizenzvereinbarung zu.

  3. Verwenden Sie einen Texteditor, um eine Konfigurationsdatei zu erstellen, die so benannt ist, dass sie dem Installationsprogramm config.yaml zur Verfügung gestellt wird.

    Auf einem Linux-based System können Sie beispielsweise den folgenden Befehl ausführen, um GNU nano zum Erstellen der Datei zu verwenden.

    nano GreengrassInstaller/config.yaml

    Kopieren Sie den folgenden YAML-Inhalt in die Datei. Diese teilweise Konfigurationsdatei spezifiziert Systemparameter, Greengrass-Nucleus-Parameter und PKCS #11 -Anbieterparameter.

    --- 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"

    Führen Sie dann die folgenden Schritte aus:

    • Ersetzen Sie jede Instanz von iotdevicekey in den PKCS #11 -URIs durch die Objektbezeichnung, in der Sie den privaten Schlüssel erstellt und das Zertifikat importiert haben.

    • Ersetzen Sie jede Instanz von /greengrass/v2 durch den Greengrass-Stammordner.

    • Ersetze es MyGreengrassCore durch den Namen des Dings AWS IoT .

    • 2.18.0Durch die Version der AWS IoT Greengrass Core-Software ersetzen.

    • us-west-2Ersetzen Sie durch die AWS-Region Stelle, an der Sie die Ressourcen erstellt haben.

    • GreengrassCoreTokenExchangeRoleAliasErsetzen Sie es durch den Namen des Alias für die Token-Exchange-Rolle.

    • Ersetzen Sie den iotDataEndpoint durch Ihren AWS IoT Datenendpunkt.

    • Ersetzen Sie den Endpunkt iotCredEndpoint durch Ihre AWS IoT Anmeldeinformationen.

    • Ersetzen Sie die Konfigurationsparameter für die aws.greengrass.crypto.Pkcs11Provider Komponente durch die Werte für die HSM-Konfiguration auf dem Kerngerät.

  4. Führen Sie das Installationsprogramm aus und geben Sie --init-config an, dass Sie die Konfigurationsdatei bereitstellen möchten.

    • /greengrass/v2Ersetzen Sie es durch den Greengrass-Stammordner.

    • Ersetzen Sie jede Instanz von GreengrassInstaller durch den Ordner, in den Sie das Installationsprogramm entpackt haben.

    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
    Wichtig

    Auf Windows-Core-Geräten müssen Sie angeben, --setup-system-service true dass die AWS IoT Greengrass Core-Software als Systemdienst eingerichtet werden soll.

    Wenn Sie angeben--setup-system-service true, druckt das Installationsprogramm, Successfully set up Nucleus as a system service ob es die Software als Systemdienst eingerichtet und ausgeführt hat. Andernfalls gibt das Installationsprogramm keine Meldung aus, wenn die Software erfolgreich installiert wurde.

    Anmerkung

    Sie können das deploy-dev-tools Argument nicht verwenden, um lokale Entwicklungstools bereitzustellen, wenn Sie das Installationsprogramm ohne das --provision true Argument ausführen. Informationen zur direkten Bereitstellung der Greengrass CLI auf Ihrem Gerät finden Sie unterGreengrass-Befehlszeilenschnittstelle.

  5. Überprüfen Sie die Installation, indem Sie sich die Dateien im Stammordner ansehen.

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

    Wenn die Installation erfolgreich war, enthält der Stammordner mehrere Ordner, z. B. configpackages, undlogs.

Wenn Sie die AWS IoT Greengrass Core-Software als Systemdienst installiert haben, führt das Installationsprogramm die Software für Sie aus. Andernfalls müssen Sie die Software manuell ausführen. Weitere Informationen finden Sie unter Führen Sie die AWS IoT Greengrass Core-Software aus.

Weitere Informationen zur Konfiguration und Verwendung der Software finden Sie AWS IoT Greengrass unter den folgenden Links:

Installieren Sie FIPS-Endpunkte mit Flottenbereitstellung

Diese Funktion ist für Version 2.4.0 und höher der Greengrass Nucleus-Komponente verfügbar.

Installieren Sie FIPS-Endpunkte auf Ihrer AWS IoT Greengrass Core-Software mit AWS IoT Flottenbereitstellung für Ihre Kerngeräte.

Anmerkung

Das Fleet Provisioning-Plugin für Greengrass Nucleus unterstützt derzeit nicht das Speichern von privaten Schlüssel- und Zertifikatsdateien in einem Hardware-Sicherheitsmodul (HSM). Um ein HSM zu verwenden, installieren Sie die AWS IoT Greengrass Core-Software mit manueller Bereitstellung.

Um die AWS IoT Greengrass Core-Software mit AWS IoT Flottenbereitstellung zu installieren, müssen Sie in Ihrem System Ressourcen einrichten, die für AWS-Konto die Bereitstellung von Greengrass-Core-Geräten AWS IoT verwendet werden. Zu diesen Ressourcen gehören eine Bereitstellungsvorlage, Anspruchszertifikate und eine Token-Exchange-IAM-Rolle. Nachdem Sie diese Ressourcen erstellt haben, können Sie sie wiederverwenden, um mehrere Kerngeräte in einer Flotte bereitzustellen. Weitere Informationen finden Sie unter AWS IoT Flottenbereitstellung für Greengrass-Kerngeräte einrichten.

Wichtig

Bevor Sie die AWS IoT Greengrass Core-Software herunterladen, überprüfen Sie, ob Ihr Kerngerät die Anforderungen für die Installation und Ausführung der AWS IoT Greengrass Core-Software v2.0 erfüllt.

Voraussetzungen

Um die AWS IoT Greengrass Core-Software mit AWS IoT Flottenbereitstellung zu installieren, müssen Sie zunächst die AWS IoT Flottenbereitstellung für Greengrass-Core-Geräte einrichten. Nachdem Sie diese Schritte einmal abgeschlossen haben, können Sie Fleet Provisioning verwenden, um die AWS IoT Greengrass Core-Software auf einer beliebigen Anzahl von Geräten zu installieren.

Abrufen AWS IoT Endpunkte

Holen Sie sich die FIPS-Endpunkte für Ihre und speichern Sie sie AWS-Konto, um sie später zu verwenden. Ihr Gerät verwendet diese Endpunkte, um eine Verbindung herzustellen. AWS IoT Gehen Sie wie folgt vor:

  1. Rufen Sie den FIPS-Datenendpunkt für Ihre Region in den Endpunkten der AWS IoT Core FIPS-Datenebene ab. Der FIPS-Datenendpunkt für Sie AWS-Konto sollte wie folgt aussehen: data.iot-fips.us-west-2.amazonaws.com

  2. Rufen Sie den Endpunkt der FIPS-Anmeldeinformationen für Ihre Region in den Endpunkten der AWS IoT Core FIPS-Datenebene ab. Der Endpunkt der FIPS-Anmeldeinformationen für Sie AWS-Konto sollte wie folgt aussehen: data.credentials.iot-fips.us-west-2.amazonaws.com

Laden Sie Zertifikate auf das Gerät herunter

Das Gerät verwendet ein Anspruchszertifikat und einen privaten Schlüssel, um seine Anforderung zur Bereitstellung von AWS Ressourcen und zum Erwerb eines X.509 Gerätezertifikats zu authentifizieren. Sie können das Anspruchszertifikat und den privaten Schlüssel während der Herstellung in das Gerät einbetten oder das Zertifikat und den Schlüssel während der Installation auf das Gerät kopieren. In diesem Abschnitt kopieren Sie das Anspruchszertifikat und den privaten Schlüssel auf das Gerät. Sie laden auch das Zertifikat der Amazon Root Certificate Authority (CA) auf das Gerät herunter.

Wichtig

Private Schlüssel für Provisioning Claim sollten jederzeit gesichert sein, auch auf Greengrass-Core-Geräten. Wir empfehlen Ihnen, mithilfe von CloudWatch Amazon-Metriken und -Protokollen nach Hinweisen auf Missbrauch zu suchen, wie z. B. die unbefugte Verwendung des Antragszertifikats zur Bereitstellung von Geräten. Wenn Sie einen Missbrauch feststellen, deaktivieren Sie das Provisioning-Antragszertifikat, sodass es nicht für die Gerätebereitstellung verwendet werden kann. Weitere Informationen finden Sie AWS IoT im AWS IoT Core Entwicklerhandbuch unter Überwachung.

Damit Sie besser verwalten können, wie viele und welche Geräte sich bei Ihrem AWS-Konto registrieren, können Sie bei der Erstellung einer Flottenbereitstellungsvorlage einen Pre-Provisioning-Hook angeben. Ein Pre-Provisioning-Hook ist eine AWS Lambda Funktion, die Vorlagenparameter validiert, die Geräte bei der Registrierung angeben. Sie können beispielsweise einen Pre-Provisioning-Hook erstellen, der eine Geräte-ID anhand einer Datenbank abgleicht, um sicherzustellen, dass das Gerät zur Bereitstellung berechtigt ist. Weitere Informationen finden Sie unter Pre-provisioning Hooks im AWS IoT Core Entwicklerhandbuch.

So laden Sie Anspruchszertifikate auf das Gerät herunter
  1. Kopieren Sie das Anspruchszertifikat und den privaten Schlüssel auf das Gerät. Wenn SSH und SCP auf dem Entwicklungscomputer und dem Gerät aktiviert sind, können Sie den scp Befehl auf Ihrem Entwicklungscomputer verwenden, um das Anspruchszertifikat und den privaten Schlüssel zu übertragen. Mit dem folgenden Beispielbefehl werden diese Dateien in einem Ordner, claim-certs der auf Ihrem Entwicklungscomputer benannt ist, auf das Gerät übertragen. device-ip-addressErsetzen Sie es durch die IP-Adresse Ihres Geräts.

    scp -r claim-certs/ device-ip-address:~
  2. Erstellen Sie den Greengrass-Stammordner auf dem Gerät. Sie werden später die AWS IoT Greengrass Core-Software in diesem Ordner installieren.

    Anmerkung

    Windows hat eine Pfadlängenbegrenzung von 260 Zeichen. Wenn Sie Windows verwenden, verwenden Sie einen Stammordner wie C:\greengrass\v2 oder, D:\greengrass\v2 um die Pfade der Greengrass-Komponenten unter der 260-Zeichen-Grenze zu halten.

    Linux or Unix
    • Ersetzen Sie ihn /greengrass/v2 durch den zu verwendenden Ordner.

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • C:\greengrass\v2Ersetzen Sie es durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
    PowerShell
    • C:\greengrass\v2Ersetzen Sie es durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
  3. (Nur Linux) Legen Sie die Berechtigungen des übergeordneten Ordners des Greengrass-Stammordners fest.

    • /greengrassErsetzen Sie es durch das übergeordnete Element des Stammordners.

    sudo chmod 755 /greengrass
  4. Verschieben Sie die Anspruchszertifikate in den Greengrass-Stammordner.

    • Ersetzen Sie /greengrass/v2 oder C:\greengrass\v2 durch den Greengrass-Stammordner.

    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. Laden Sie sowohl das CA1-Zertifikat als auch das CA3-Zertifikat herunter.

    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

Richten Sie die Geräteumgebung ein

Folgen Sie den Schritten in diesem Abschnitt, um ein Linux- oder Windows-Gerät einzurichten, das als Ihr AWS IoT Greengrass Hauptgerät verwendet werden soll.

Richten Sie ein Linux-Gerät ein

So richten Sie ein Linux-Gerät ein für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie Amazon Corretto - oder https://openjdk.java.net/ OpenJDK-Versionen mit langfristigem Support verwenden. Version 8 oder höher ist erforderlich. Die folgenden Befehle zeigen Ihnen, wie Sie OpenJDK auf Ihrem Gerät installieren.

    • Für unsere Debian-based Distributionen Ubuntu-based :

      sudo apt install default-jdk
    • Für Hat-based Red-Distributionen:

      sudo yum install java-11-openjdk-devel
    • Für Amazon Linux 2:

      sudo amazon-linux-extras install java-openjdk11
    • Für Amazon Linux 2023:

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

    Wenn die Installation abgeschlossen ist, führen Sie den folgenden Befehl aus, um zu überprüfen, ob Java auf Ihrem Linux-Gerät ausgeführt wird.

    java -version

    Der Befehl druckt die Version von Java, die auf dem Gerät ausgeführt wird. Bei einer Debian-based Distribution könnte die Ausgabe beispielsweise dem folgenden Beispiel ähneln.

    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. (Optional) Erstellen Sie den Standardsystembenutzer und die Standardgruppe, die Komponenten auf dem Gerät ausführen. Sie können auch festlegen, dass das AWS IoT Greengrass Core-Software-Installationsprogramm diesen Benutzer und diese Gruppe während der Installation mit dem --component-default-user Installer-Argument erstellt. Weitere Informationen finden Sie unter Argumente des Installers.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Stellen Sie sicher, dass der Benutzer, der die AWS IoT Greengrass Core-Software ausführt (in der Regelroot), die Berechtigung hat, sie sudo mit einem beliebigen Benutzer und jeder Gruppe auszuführen.

    1. Führen Sie den folgenden Befehl aus, um die /etc/sudoers Datei zu öffnen.

      sudo visudo
    2. Stellen Sie sicher, dass die Berechtigung für den Benutzer wie im folgenden Beispiel aussieht.

      root ALL=(ALL:ALL) ALL
  4. (Optional) Um containerisierte Lambda-Funktionen auszuführen, müssen Sie cgroups v1 aktivieren und die Speicher - und Geräte-Cgroups aktivieren und mounten. Wenn Sie nicht vorhaben, containerisierte Lambda-Funktionen auszuführen, können Sie diesen Schritt überspringen.

    Um diese Cgroups-Optionen zu aktivieren, starten Sie das Gerät mit den folgenden Linux-Kernel-Parametern.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Informationen zum Anzeigen und Einstellen der Kernelparameter für Ihr Gerät finden Sie in der Dokumentation zu Ihrem Betriebssystem und Bootloader. Folgen Sie den Anweisungen, um die Kernel-Parameter dauerhaft einzustellen.

  5. Installieren Sie alle anderen erforderlichen Abhängigkeiten auf Ihrem Gerät, wie in der Anforderungsliste unter angegebenAnforderungen an Speichergeräte.

Richten Sie ein Windows-Gerät ein

Anmerkung

Diese Funktion ist für Version 2.5.0 und höher der Greengrass Nucleus-Komponente verfügbar.

Um ein Windows-Gerät einzurichten für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie Amazon Corretto - oder https://openjdk.java.net/ OpenJDK-Versionen mit langfristigem Support verwenden. Version 8 oder höher ist erforderlich.

  2. Prüfen Sie, ob Java in der https://en.wikipedia.org/wiki/PATH_(variable) PATH-Systemvariablen verfügbar ist, und fügen Sie es hinzu, falls nicht. Auf dem LocalSystem Konto wird die AWS IoT Greengrass Core-Software ausgeführt. Sie müssen also Java zur PATH-Systemvariablen hinzufügen und nicht zur PATH-Benutzervariablen für Ihren Benutzer. Gehen Sie wie folgt vor:

    1. Drücken Sie die Windows-Taste, um das Startmenü zu öffnen.

    2. Geben Sie environment variables ein, um im Startmenü nach den Systemoptionen zu suchen.

    3. Wählen Sie im Startmenü die Option Systemumgebungsvariablen bearbeiten aus, um das Fenster mit den Systemeigenschaften zu öffnen.

    4. Wählen Sie Umgebungsvariablen... um das Fenster „Umgebungsvariablen“ zu öffnen.

    5. Wählen Sie unter Systemvariablen die Option Pfad und dann Bearbeiten aus. Im Fenster „Umgebungsvariable bearbeiten“ können Sie jeden Pfad in einer separaten Zeile anzeigen.

    6. Prüfen Sie, ob der Pfad zum bin Ordner der Java-Installation vorhanden ist. Der Pfad könnte dem folgenden Beispiel ähneln.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Wenn der bin Ordner der Java-Installation in Path fehlt, wählen Sie Neu, um ihn hinzuzufügen, und klicken Sie dann auf OK.

  3. Öffnen Sie die Windows-Eingabeaufforderung (cmd.exe) als Administrator.

  4. Erstellen Sie den Standardbenutzer im LocalSystem Konto auf dem Windows-Gerät. passwordErsetzen Sie es durch ein sicheres Passwort.

    net user /add ggc_user password
    Tipp

    Abhängig von Ihrer Windows-Konfiguration ist das Passwort des Benutzers möglicherweise so eingerichtet, dass es zu einem späteren Zeitpunkt abläuft. Um sicherzustellen, dass Ihre Greengrass-Anwendungen weiterhin funktionieren, verfolgen Sie, wann das Passwort abläuft, und aktualisieren Sie es, bevor es abläuft. Sie können das Passwort des Benutzers auch so einstellen, dass es niemals abläuft.

    • Führen Sie den folgenden Befehl aus, um zu überprüfen, wann ein Benutzer und sein Passwort ablaufen.

      net user ggc_user | findstr /C:expires
    • Führen Sie den folgenden Befehl aus, um das Passwort eines Benutzers so einzustellen, dass es niemals abläuft.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Wenn Sie Windows 10 oder höher verwenden und der wmic Befehl veraltet ist, führen Sie den folgenden PowerShell Befehl aus.

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Laden Sie das PsExec Programm von Microsoft herunter und installieren Sie es auf dem Gerät.

  6. Verwenden Sie das PsExec Tool, um den Benutzernamen und das Passwort für den Standardbenutzer in der Credential Manager-Instanz für das LocalSystem Konto zu speichern. passwordErsetzen Sie es durch das Passwort des Benutzers, das Sie zuvor festgelegt haben.

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

    Wenn das PsExec License Agreement geöffnet wird, stimmen Sie Accept der Lizenz zu und führen Sie den Befehl aus.

    Anmerkung

    Auf Windows-Geräten wird auf dem LocalSystem Konto der Greengrass Nucleus ausgeführt, und Sie müssen das PsExec Programm verwenden, um die Standardbenutzerinformationen im LocalSystem Konto zu speichern. Wenn Sie die Credential Manager-Anwendung verwenden, werden diese Informationen nicht im Konto, sondern im Windows-Konto des aktuell angemeldeten Benutzers gespeichert. LocalSystem

Laden Sie das herunter AWS IoT Greengrass Kernsoftware

Sie können die neueste Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen:

Anmerkung

Sie können eine bestimmte Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen. Ersetzen Sie version durch die Version, die heruntergeladen werden soll.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Um das herunterzuladen AWS IoT Greengrass Kernsoftware
  1. Laden Sie die Core-Software auf Ihrem AWS IoT Greengrass Hauptgerät in eine Datei mit dem Namen heruntergreengrass-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

    Mit dem Download dieser Software stimmen Sie der Greengrass Core-Software-Lizenzvereinbarung zu.

  2. (Optional) Um die Greengrass Nucleus-Softwaresignatur zu überprüfen

    Anmerkung

    Diese Funktion ist mit Greengrass Nucleus Version 2.9.5 und höher verfügbar.

    1. Verwenden Sie den folgenden Befehl, um die Signatur Ihres Greengrass-Nukleus-Artefakts zu überprüfen:

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

      Der Dateiname kann je nach installierter JDK-Version anders aussehen. Ersetzen Sie ihn jdk17.0.6_10 durch die JDK-Version, die Sie installiert haben.

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

      Der Dateiname kann je nach der von Ihnen installierten JDK-Version unterschiedlich aussehen. Ersetzen Sie ihn jdk17.0.6_10 durch die JDK-Version, die Sie installiert haben.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. Der jarsigner Aufruf liefert eine Ausgabe, die die Ergebnisse der Überprüfung angibt.

      1. Wenn die Greengrass-Nucleus-Zip-Datei signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar verified.
      2. Wenn die Greengrass-Nucleus-Zip-Datei nicht signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar is unsigned.
    3. Wenn Sie die -certs Jarsigner-Option zusammen mit den -verbose Optionen -verify und angegeben haben, enthält die Ausgabe auch detaillierte Informationen zum Unterzeichnerzertifikat.

  3. Entpacken Sie die AWS IoT Greengrass Core-Software in einen Ordner auf Ihrem Gerät. GreengrassInstallerErsetzen Sie es durch den Ordner, den Sie verwenden möchten.

    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. (Optional) Führen Sie den folgenden Befehl aus, um die Version der AWS IoT Greengrass Core-Software anzuzeigen.

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

Wenn Sie eine Version von Greengrass Nucleus vor v2.4.0 installieren, entfernen Sie diesen Ordner nicht, nachdem Sie die AWS IoT Greengrass Core-Software installiert haben. Die AWS IoT Greengrass Core-Software verwendet die Dateien in diesem Ordner zur Ausführung.

Wenn Sie die neueste Version der Software heruntergeladen haben, installieren Sie Version 2.4.0 oder höher. Sie können diesen Ordner nach der Installation der AWS IoT Greengrass Core-Software entfernen.

Laden Sie das herunter AWS IoT Plug-in für die Bereitstellung von Flotten

Sie können die neueste Version des AWS IoT Fleet Provisioning-Plug-ins von der folgenden Adresse herunterladen:

Anmerkung

Sie können eine bestimmte Version des AWS IoT Fleet Provisioning-Plug-ins von der folgenden Adresse herunterladen. Ersetzen Sie version durch die Version, die heruntergeladen werden soll. Weitere Informationen zu den einzelnen Versionen des Fleet Provisioning-Plug-ins finden Sie unterAWS IoT Changelog des Plug-ins für die Flottenbereitstellung.

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

Das Fleet Provisioning-Plugin ist Open Source. Den Quellcode finden Sie im AWS IoT Fleet Provisioning-Plugin unter. GitHub

Um das herunterzuladen AWS IoT Plug-in für die Bereitstellung von Flotten
  • Laden Sie das AWS IoT Fleet Provisioning-Plugin auf Ihr Gerät in eine Datei mit dem Namen herunter. aws.greengrass.FleetProvisioningByClaim.jar GreengrassInstallerErsetzen Sie es durch den Ordner, den Sie verwenden möchten.

    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

    Mit dem Download dieser Software stimmen Sie der Greengrass Core-Software-Lizenzvereinbarung zu.

Installieren Sie den AWS IoT Greengrass Kernsoftware

Führen Sie das Installationsprogramm mit Argumenten aus, die die folgenden Aktionen angeben:

  • Installieren Sie die Installation anhand einer Teilkonfigurationsdatei, in der angegeben ist, dass das Fleet Provisioning-Plugin für die Bereitstellung von AWS Ressourcen verwendet werden soll. Die AWS IoT Greengrass Core-Software verwendet eine Konfigurationsdatei, die die Konfiguration jeder Greengrass-Komponente auf dem Gerät spezifiziert. Das Installationsprogramm erstellt eine vollständige Konfigurationsdatei aus der von Ihnen bereitgestellten Teilkonfigurationsdatei und den AWS Ressourcen, die das Fleet Provisioning-Plugin erstellt.

  • Geben Sie an, dass der ggc_user Systembenutzer zum Ausführen von Softwarekomponenten auf dem Kerngerät verwendet werden soll. Auf Linux-Geräten gibt dieser Befehl auch an, dass die ggc_group Systemgruppe verwendet werden soll, und das Installationsprogramm erstellt den Systembenutzer und die Systemgruppe für Sie.

  • Richten Sie die AWS IoT Greengrass Core-Software als Systemdienst ein, der beim Booten ausgeführt wird. Auf Linux-Geräten erfordert dies das https://en.wikipedia.org/wiki/Systemd Systemd-Init-System.

    Wichtig

    Auf Windows-Core-Geräten müssen Sie die AWS IoT Greengrass Core-Software als Systemdienst einrichten.

Weitere Hinweise zu den Argumenten, die Sie angeben können, finden Sie unterArgumente des Installers.

Anmerkung

Wenn Sie AWS IoT Greengrass auf einem Gerät mit begrenztem Arbeitsspeicher arbeiten, können Sie die Speichermenge steuern, die die AWS IoT Greengrass Core-Software verwendet. Um die Speicherzuweisung zu steuern, können Sie die Optionen für die Größe des JVM-Heaps im jvmOptions Konfigurationsparameter Ihrer Nucleus-Komponente festlegen. Weitere Informationen finden Sie unter Steuern Sie die Speicherzuweisung mit JVM-Optionen.

Um das zu installieren AWS IoT Greengrass Kernsoftware
  1. Überprüfen Sie die Version der AWS IoT Greengrass Core-Software.

    • GreengrassInstallerErsetzen Sie durch den Pfad zu dem Ordner, der die Software enthält.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Verwenden Sie einen Texteditor, um eine Konfigurationsdatei zu erstellen, die so benannt ist, dass sie dem Installationsprogramm config.yaml zur Verfügung gestellt wird.

    Auf einem Linux-based System können Sie beispielsweise den folgenden Befehl ausführen, um GNU nano zum Erstellen der Datei zu verwenden.

    nano GreengrassInstaller/config.yaml

    Kopieren Sie den folgenden YAML-Inhalt in die Datei. Diese teilweise Konfigurationsdatei spezifiziert Parameter für das Fleet Provisioning-Plugin. Weitere Informationen zu den Optionen, die Sie angeben können, finden Sie unterKonfigurieren Sie das AWS IoT Flottenbereitstellungs-Plugin.

    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"

    Führen Sie dann die folgenden Schritte aus:

    • 2.18.0Ersetzen Sie durch die Version der AWS IoT Greengrass Core-Software.

    • Ersetzen Sie jede Instanz von /greengrass/v2 oder C:\greengrass\v2 durch den Greengrass-Stammordner.

      Anmerkung

      Auf Windows-Geräten müssen Sie Pfadtrennzeichen als doppelte umgekehrte Schrägstriche (\\) angeben, z. B. C:\\greengrass\\v2

    • us-west-2Ersetzen Sie durch die AWS Region, in der Sie die Provisioning-Vorlage und andere Ressourcen erstellt haben.

    • Ersetzen Sie das iotDataEndpoint durch Ihren AWS IoT Datenendpunkt.

    • Ersetzen Sie den Endpunkt iotCredentialEndpoint durch Ihre AWS IoT Anmeldeinformationen.

    • GreengrassCoreTokenExchangeRoleAliasErsetzen Sie es durch den Namen des Alias für die Token-Exchange-Rolle.

    • GreengrassFleetProvisioningTemplateErsetzen Sie es durch den Namen der Vorlage für die Flottenbereitstellung.

    • Ersetzen Sie den claimCertificatePath durch den Pfad zum Antragszertifikat auf dem Gerät.

    • Ersetzen Sie den claimCertificatePrivateKeyPath durch den Pfad zum privaten Schlüssel des Anspruchszertifikats auf dem Gerät.

    • Ersetzen Sie die Vorlagenparameter (templateParameters) durch die Werte, die für die Bereitstellung des Geräts verwendet werden sollen. Dieses Beispiel bezieht sich auf die Beispielvorlage, die ThingGroupName Parameter definiertThingName.

  3. Führen Sie das Installationsprogramm aus. Geben Sie --trusted-plugin an, dass das Fleet Provisioning-Plug-In bereitgestellt werden soll, und geben Sie --init-config an, dass die Konfigurationsdatei bereitgestellt werden soll.

    • Ersetzen Sie es /greengrass/v2 durch den Greengrass-Stammordner.

    • Ersetzen Sie jede Instanz von GreengrassInstaller durch den Ordner, in den Sie das Installationsprogramm entpackt haben.

    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
    Wichtig

    Auf Windows-Core-Geräten müssen Sie angeben, --setup-system-service true dass die AWS IoT Greengrass Core-Software als Systemdienst eingerichtet werden soll.

    Wenn Sie angeben--setup-system-service true, druckt das Installationsprogramm, Successfully set up Nucleus as a system service ob es die Software als Systemdienst eingerichtet und ausgeführt hat. Andernfalls gibt das Installationsprogramm keine Meldung aus, wenn die Software erfolgreich installiert wurde.

    Anmerkung

    Sie können das deploy-dev-tools Argument nicht verwenden, um lokale Entwicklungstools bereitzustellen, wenn Sie das Installationsprogramm ohne das --provision true Argument ausführen. Informationen zur direkten Bereitstellung der Greengrass CLI auf Ihrem Gerät finden Sie unterGreengrass-Befehlszeilenschnittstelle.

  4. Überprüfen Sie die Installation, indem Sie sich die Dateien im Stammordner ansehen.

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

    Wenn die Installation erfolgreich war, enthält der Stammordner mehrere Ordner, z. B. configpackages, undlogs.

Wenn Sie die AWS IoT Greengrass Core-Software als Systemdienst installiert haben, führt das Installationsprogramm die Software für Sie aus. Andernfalls müssen Sie die Software manuell ausführen. Weitere Informationen finden Sie unter Führen Sie die AWS IoT Greengrass Core-Software aus.

Weitere Informationen zur Konfiguration und Verwendung der Software finden Sie AWS IoT Greengrass unter den folgenden Links:

Installieren Sie FIPS-Endpunkte mit automatischer Ressourcenbereitstellung

Die AWS IoT Greengrass Core-Software enthält ein Installationsprogramm, das Ihr Gerät als Greengrass-Core-Gerät einrichtet. Um ein Gerät schnell einzurichten, kann der Installer das AWS IoT AWS IoT Ding, die Dinggruppe, die AWS IoT IAM-Rolle und den Rollenalias bereitstellen, die das Kerngerät für den Betrieb benötigt. Das Installationsprogramm kann auch die lokalen Entwicklungstools auf dem Kerngerät bereitstellen, sodass Sie das Gerät verwenden können, um benutzerdefinierte Softwarekomponenten zu entwickeln und zu testen. Das Installationsprogramm benötigt AWS Anmeldeinformationen, um diese Ressourcen bereitzustellen und die Bereitstellung zu erstellen.

Wenn Sie keine AWS Anmeldeinformationen für das Gerät bereitstellen können, können Sie die AWS Ressourcen bereitstellen, die das Kerngerät für den Betrieb benötigt. Sie können die Entwicklungstools auch auf einem Kerngerät bereitstellen, um es als Entwicklungsgerät zu verwenden. Auf diese Weise müssen Sie dem Gerät weniger Berechtigungen gewähren, wenn Sie das Installationsprogramm ausführen. Weitere Informationen finden Sie unter Installieren AWS IoT Greengrass Kernsoftware mit manueller Ressourcenbereitstellung.

Wichtig

Bevor Sie die AWS IoT Greengrass Core-Software herunterladen, überprüfen Sie, ob Ihr Core-Gerät die Anforderungen für die Installation und Ausführung der AWS IoT Greengrass Core-Software v2.0 erfüllt.

Richten Sie die Geräteumgebung ein

Folgen Sie den Schritten in diesem Abschnitt, um ein Linux- oder Windows-Gerät einzurichten, das als Ihr AWS IoT Greengrass Hauptgerät verwendet werden soll.

Richten Sie ein Linux-Gerät ein

So richten Sie ein Linux-Gerät ein für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie Amazon Corretto - oder https://openjdk.java.net/ OpenJDK-Versionen mit langfristigem Support verwenden. Version 8 oder höher ist erforderlich. Die folgenden Befehle zeigen Ihnen, wie Sie OpenJDK auf Ihrem Gerät installieren.

    • Für unsere Debian-based Distributionen Ubuntu-based :

      sudo apt install default-jdk
    • Für Hat-based Red-Distributionen:

      sudo yum install java-11-openjdk-devel
    • Für Amazon Linux 2:

      sudo amazon-linux-extras install java-openjdk11
    • Für Amazon Linux 2023:

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

    Wenn die Installation abgeschlossen ist, führen Sie den folgenden Befehl aus, um zu überprüfen, ob Java auf Ihrem Linux-Gerät ausgeführt wird.

    java -version

    Der Befehl druckt die Version von Java, die auf dem Gerät ausgeführt wird. Bei einer Debian-based Distribution könnte die Ausgabe beispielsweise dem folgenden Beispiel ähneln.

    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. (Optional) Erstellen Sie den Standardsystembenutzer und die Standardgruppe, die Komponenten auf dem Gerät ausführen. Sie können auch festlegen, dass das AWS IoT Greengrass Core-Software-Installationsprogramm diesen Benutzer und diese Gruppe während der Installation mit dem --component-default-user Installer-Argument erstellt. Weitere Informationen finden Sie unter Argumente des Installers.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Stellen Sie sicher, dass der Benutzer, der die AWS IoT Greengrass Core-Software ausführt (in der Regelroot), die Berechtigung hat, sie sudo mit einem beliebigen Benutzer und jeder Gruppe auszuführen.

    1. Führen Sie den folgenden Befehl aus, um die /etc/sudoers Datei zu öffnen.

      sudo visudo
    2. Stellen Sie sicher, dass die Berechtigung für den Benutzer wie im folgenden Beispiel aussieht.

      root ALL=(ALL:ALL) ALL
  4. (Optional) Um containerisierte Lambda-Funktionen auszuführen, müssen Sie cgroups v1 aktivieren und die Speicher - und Geräte-Cgroups aktivieren und mounten. Wenn Sie nicht vorhaben, containerisierte Lambda-Funktionen auszuführen, können Sie diesen Schritt überspringen.

    Um diese Cgroups-Optionen zu aktivieren, starten Sie das Gerät mit den folgenden Linux-Kernel-Parametern.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Informationen zum Anzeigen und Einstellen der Kernelparameter für Ihr Gerät finden Sie in der Dokumentation zu Ihrem Betriebssystem und Bootloader. Folgen Sie den Anweisungen, um die Kernel-Parameter dauerhaft einzustellen.

  5. Installieren Sie alle anderen erforderlichen Abhängigkeiten auf Ihrem Gerät, wie in der Anforderungsliste unter angegebenAnforderungen an Speichergeräte.

Richten Sie ein Windows-Gerät ein

Anmerkung

Diese Funktion ist für Version 2.5.0 und höher der Greengrass Nucleus-Komponente verfügbar.

Um ein Windows-Gerät einzurichten für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie Amazon Corretto - oder https://openjdk.java.net/ OpenJDK-Versionen mit langfristigem Support verwenden. Version 8 oder höher ist erforderlich.

  2. Prüfen Sie, ob Java in der https://en.wikipedia.org/wiki/PATH_(variable) PATH-Systemvariablen verfügbar ist, und fügen Sie es hinzu, falls nicht. Auf dem LocalSystem Konto wird die AWS IoT Greengrass Core-Software ausgeführt. Sie müssen also Java zur PATH-Systemvariablen hinzufügen und nicht zur PATH-Benutzervariablen für Ihren Benutzer. Gehen Sie wie folgt vor:

    1. Drücken Sie die Windows-Taste, um das Startmenü zu öffnen.

    2. Geben Sie environment variables ein, um im Startmenü nach den Systemoptionen zu suchen.

    3. Wählen Sie im Startmenü die Option Systemumgebungsvariablen bearbeiten, um das Fenster Systemeigenschaften zu öffnen.

    4. Wählen Sie Umgebungsvariablen... um das Fenster „Umgebungsvariablen“ zu öffnen.

    5. Wählen Sie unter Systemvariablen die Option Pfad und dann Bearbeiten aus. Im Fenster „Umgebungsvariable bearbeiten“ können Sie jeden Pfad in einer separaten Zeile anzeigen.

    6. Prüfen Sie, ob der Pfad zum bin Ordner der Java-Installation vorhanden ist. Der Pfad könnte dem folgenden Beispiel ähneln.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Wenn der bin Ordner der Java-Installation in Path fehlt, wählen Sie Neu, um ihn hinzuzufügen, und klicken Sie dann auf OK.

  3. Öffnen Sie die Windows-Eingabeaufforderung (cmd.exe) als Administrator.

  4. Erstellen Sie den Standardbenutzer im LocalSystem Konto auf dem Windows-Gerät. passwordErsetzen Sie es durch ein sicheres Passwort.

    net user /add ggc_user password
    Tipp

    Abhängig von Ihrer Windows-Konfiguration ist das Passwort des Benutzers möglicherweise so eingerichtet, dass es zu einem späteren Zeitpunkt abläuft. Um sicherzustellen, dass Ihre Greengrass-Anwendungen weiterhin funktionieren, verfolgen Sie, wann das Passwort abläuft, und aktualisieren Sie es, bevor es abläuft. Sie können das Passwort des Benutzers auch so einstellen, dass es niemals abläuft.

    • Führen Sie den folgenden Befehl aus, um zu überprüfen, wann ein Benutzer und sein Passwort ablaufen.

      net user ggc_user | findstr /C:expires
    • Führen Sie den folgenden Befehl aus, um das Passwort eines Benutzers so einzustellen, dass es niemals abläuft.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Wenn Sie Windows 10 oder höher verwenden und der wmic Befehl veraltet ist, führen Sie den folgenden PowerShell Befehl aus.

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Laden Sie das PsExec Programm von Microsoft herunter und installieren Sie es auf dem Gerät.

  6. Verwenden Sie das PsExec Tool, um den Benutzernamen und das Passwort für den Standardbenutzer in der Credential Manager-Instanz für das LocalSystem Konto zu speichern. passwordErsetzen Sie es durch das Passwort des Benutzers, das Sie zuvor festgelegt haben.

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

    Wenn das PsExec License Agreement geöffnet wird, stimmen Sie Accept der Lizenz zu und führen Sie den Befehl aus.

    Anmerkung

    Auf Windows-Geräten wird auf dem LocalSystem Konto der Greengrass Nucleus ausgeführt, und Sie müssen das PsExec Programm verwenden, um die Standardbenutzerinformationen im LocalSystem Konto zu speichern. Wenn Sie die Credential Manager-Anwendung verwenden, werden diese Informationen nicht im Konto, sondern im Windows-Konto des aktuell angemeldeten Benutzers gespeichert. LocalSystem

Bereitstellen AWS Anmeldeinformationen für das Gerät

Geben Sie Ihre AWS Anmeldeinformationen für Ihr Gerät ein, damit das Installationsprogramm die erforderlichen AWS Ressourcen bereitstellen kann. Weitere Informationen zu den erforderlichen Berechtigungen finden Sie unter Minimale IAM-Richtlinie für das Installationsprogramm zur Bereitstellung von Ressourcen.

Zur Verfügung zu stellen AWS Anmeldeinformationen für das Gerät
  • Geben Sie Ihre AWS Anmeldeinformationen für das Gerät ein, damit das Installationsprogramm die AWS IoT und die IAM-Ressourcen für Ihr Hauptgerät bereitstellen kann. Um die Sicherheit zu erhöhen, empfehlen wir, temporäre Anmeldeinformationen für eine IAM-Rolle zu erwerben, die nur die Mindestberechtigungen zulässt, die für die Bereitstellung erforderlich sind. Weitere Informationen finden Sie unter Minimale IAM-Richtlinie für das Installationsprogramm zur Bereitstellung von Ressourcen.

    Anmerkung

    Das Installationsprogramm speichert oder speichert Ihre Anmeldeinformationen nicht.

    Gehen Sie auf Ihrem Gerät wie folgt vor, um Anmeldeinformationen abzurufen und sie dem AWS IoT Greengrass Core-Software-Installationsprogramm zur Verfügung zu stellen:

    • (Empfohlen) Verwenden Sie temporäre Anmeldeinformationen von AWS IAM Identity Center

      1. Geben Sie die Zugriffsschlüssel-ID, den geheimen Zugriffsschlüssel und das Sitzungstoken aus dem IAM Identity Center ein. Weitere Informationen finden Sie unter Manuelles Aktualisieren der Anmeldeinformationen im Abschnitt Abrufen und Aktualisieren temporärer Anmeldeinformationen im IAM Identity Center-Benutzerhandbuch.

      2. Führen Sie die folgenden Befehle aus, um die Anmeldeinformationen für die AWS IoT Greengrass Core-Software bereitzustellen.

        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="
    • Verwenden Sie temporäre Sicherheitsanmeldeinformationen aus einer IAM-Rolle:

      1. Geben Sie die Zugriffsschlüssel-ID, den geheimen Zugriffsschlüssel und das Sitzungstoken einer IAM-Rolle an, die Sie annehmen. Weitere Informationen zum Abrufen dieser Anmeldeinformationen finden Sie unter Anfordern temporärer Sicherheitsanmeldeinformationen im IAM-Benutzerhandbuch.

      2. Führen Sie die folgenden Befehle aus, um die Anmeldeinformationen für die AWS IoT Greengrass Core-Software bereitzustellen.

        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="
    • Verwenden Sie langfristige Anmeldeinformationen eines IAM-Benutzers:

      1. Geben Sie die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel für Ihren IAM-Benutzer an. Sie können einen IAM-Benutzer für die Bereitstellung erstellen, den Sie später löschen. Die IAM-Richtlinie, die Sie dem Benutzer geben müssen, finden Sie unter. Minimale IAM-Richtlinie für das Installationsprogramm zur Bereitstellung von Ressourcen Weitere Informationen zum Abrufen langfristiger Anmeldeinformationen finden Sie im IAM-Benutzerhandbuch unter Verwalten von Zugriffsschlüsseln für IAM-Benutzer.

      2. Führen Sie die folgenden Befehle aus, um die Anmeldeinformationen für die AWS IoT Greengrass Core-Software bereitzustellen.

        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. (Optional) Wenn Sie einen IAM-Benutzer zur Bereitstellung Ihres Greengrass-Geräts erstellt haben, löschen Sie den Benutzer.

      4. (Optional) Wenn Sie die Zugriffsschlüssel-ID und den geheimen Zugriffsschlüssel eines vorhandenen IAM-Benutzers verwendet haben, aktualisieren Sie die Schlüssel für den Benutzer, sodass sie nicht mehr gültig sind. Weitere Informationen finden Sie im AWS Identity and Access Management Benutzerhandbuch unter Aktualisieren von Zugriffsschlüsseln.

Laden Sie das herunter AWS IoT Greengrass Kernsoftware

Sie können die neueste Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen:

Anmerkung

Sie können eine bestimmte Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen. Ersetzen Sie version durch die Version, die heruntergeladen werden soll.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Um das herunterzuladen AWS IoT Greengrass Kernsoftware
  1. Laden Sie die Core-Software auf Ihrem AWS IoT Greengrass Hauptgerät in eine Datei mit dem Namen heruntergreengrass-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

    Mit dem Download dieser Software stimmen Sie der Greengrass Core-Software-Lizenzvereinbarung zu.

  2. (Optional) Um die Greengrass Nucleus-Softwaresignatur zu überprüfen

    Anmerkung

    Diese Funktion ist mit Greengrass Nucleus Version 2.9.5 und höher verfügbar.

    1. Verwenden Sie den folgenden Befehl, um die Signatur Ihres Greengrass-Nukleus-Artefakts zu überprüfen:

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

      Der Dateiname kann je nach installierter JDK-Version anders aussehen. Ersetzen Sie ihn jdk17.0.6_10 durch die JDK-Version, die Sie installiert haben.

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

      Der Dateiname kann je nach der von Ihnen installierten JDK-Version unterschiedlich aussehen. Ersetzen Sie ihn jdk17.0.6_10 durch die JDK-Version, die Sie installiert haben.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. Der jarsigner Aufruf liefert eine Ausgabe, die die Ergebnisse der Überprüfung angibt.

      1. Wenn die Greengrass-Nucleus-Zip-Datei signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar verified.
      2. Wenn die Greengrass-Nucleus-Zip-Datei nicht signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar is unsigned.
    3. Wenn Sie die -certs Jarsigner-Option zusammen mit den -verbose Optionen -verify und angegeben haben, enthält die Ausgabe auch detaillierte Informationen zum Unterzeichnerzertifikat.

  3. Entpacken Sie die AWS IoT Greengrass Core-Software in einen Ordner auf Ihrem Gerät. GreengrassInstallerErsetzen Sie es durch den Ordner, den Sie verwenden möchten.

    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. (Optional) Führen Sie den folgenden Befehl aus, um die Version der AWS IoT Greengrass Core-Software anzuzeigen.

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

Wenn Sie eine Version von Greengrass Nucleus vor v2.4.0 installieren, entfernen Sie diesen Ordner nicht, nachdem Sie die AWS IoT Greengrass Core-Software installiert haben. Die AWS IoT Greengrass Core-Software verwendet die Dateien in diesem Ordner zur Ausführung.

Wenn Sie die neueste Version der Software heruntergeladen haben, installieren Sie Version 2.4.0 oder höher. Sie können diesen Ordner nach der Installation der AWS IoT Greengrass Core-Software entfernen.

Installieren Sie die AWS IoT Greengrass Kernsoftware

Führen Sie das Installationsprogramm mit Argumenten aus, die Folgendes angeben:

  • Erstellen Sie die AWS Ressourcen, die das Kerngerät für den Betrieb benötigt.

  • Geben Sie an, dass der ggc_user Systembenutzer zum Ausführen von Softwarekomponenten auf dem Kerngerät verwendet werden soll. Auf Linux-Geräten gibt dieser Befehl auch an, dass die ggc_group Systemgruppe verwendet werden soll, und das Installationsprogramm erstellt den Systembenutzer und die Systemgruppe für Sie.

  • Richten Sie die AWS IoT Greengrass Core-Software als Systemdienst ein, der beim Booten ausgeführt wird. Auf Linux-Geräten erfordert dies das https://en.wikipedia.org/wiki/Systemd Systemd-Init-System.

    Wichtig

    Auf Windows-Core-Geräten müssen Sie die AWS IoT Greengrass Core-Software als Systemdienst einrichten.

Um ein Entwicklungsgerät mit lokalen Entwicklungstools einzurichten, geben Sie das --deploy-dev-tools true Argument an. Die Bereitstellung der lokalen Entwicklungstools kann nach Abschluss der Installation bis zu einer Minute dauern.

Weitere Hinweise zu den Argumenten, die Sie angeben können, finden Sie unterArgumente des Installers.

Anmerkung

Wenn Sie AWS IoT Greengrass auf einem Gerät mit begrenztem Arbeitsspeicher arbeiten, können Sie die Speichermenge steuern, die die AWS IoT Greengrass Core-Software verwendet. Um die Speicherzuweisung zu steuern, können Sie die Optionen für die Größe des JVM-Heaps im jvmOptions Konfigurationsparameter Ihrer Nucleus-Komponente festlegen. Weitere Informationen finden Sie unter Steuern Sie die Speicherzuweisung mit JVM-Optionen.

Um das zu installieren AWS IoT Greengrass Kernsoftware
  1. Verwenden Sie einen Texteditor, um eine Konfigurationsdatei zu erstellen, die so benannt ist, dass sie dem Installationsprogramm config.yaml zur Verfügung gestellt wird.

    Auf einem Linux-based System können Sie beispielsweise den folgenden Befehl ausführen, um GNU nano zum Erstellen der Datei zu verwenden.

    nano GreengrassInstaller/config.yaml

    Kopieren Sie den folgenden YAML-Inhalt in die Datei. Diese teilweise Konfigurationsdatei spezifiziert Systemparameter und Greengrass-Nucleus-Parameter.

    --- 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-2Ersetzen Sie durch den AWS-Region Ort, an dem Sie die Ressourcen erstellt haben.

    • Ersetzen Sie den iotDataEndpoint durch Ihren AWS IoT Datenendpunkt.

    • Ersetzen Sie den Endpunkt iotCredEndpoint durch Ihre AWS IoT Anmeldeinformationen.

  2. Führen Sie das AWS IoT Greengrass Core-Installationsprogramm aus. Ersetzen Sie die Argumentwerte in Ihrem Befehl wie folgt.

    Anmerkung

    Windows hat eine Pfadlängenbegrenzung von 260 Zeichen. Wenn Sie Windows verwenden, verwenden Sie einen Stammordner wie C:\greengrass\v2 oder, D:\greengrass\v2 um die Pfade der Greengrass-Komponenten unter der 260-Zeichen-Grenze zu halten.

    1. /greengrass/v2oderC:\greengrass\v2: Der Pfad zum Stammordner, der für die Installation der AWS IoT Greengrass Core-Software verwendet werden soll.

    2. GreengrassInstaller. Der Pfad zu dem Ordner, in den Sie das AWS IoT Greengrass Core-Softwareinstallationsprogramm entpackt haben.

    3. region. Der, AWS-Region in dem Ressourcen gefunden oder erstellt werden können.

    4. MyGreengrassCore. Der Name des Dings AWS IoT für Ihr Greengrass-Core-Gerät. Wenn das Ding nicht existiert, wird es vom Installer erstellt. Das Installationsprogramm lädt die Zertifikate herunter, um sich als das AWS IoT Ding zu authentifizieren. Weitere Informationen finden Sie unter Geräteauthentifizierung und Autorisierung für AWS IoT Greengrass.

      Anmerkung

      Der Name des Dings darf keine Doppelpunkte (:) enthalten.

    5. MyGreengrassCoreGroup. Der Name der AWS IoT Dinggruppe für Ihr Greengrass-Core-Gerät. Wenn die Dinggruppe nicht existiert, erstellt das Installationsprogramm sie und fügt das Ding zu ihr hinzu. Wenn die Dinggruppe existiert und über eine aktive Bereitstellung verfügt, lädt das Kerngerät die in der Bereitstellung angegebene Software herunter und führt sie aus.

      Anmerkung

      Der Name der Dinggruppe darf keine Doppelpunkte (:) enthalten.

    6. GreengrassV2IoTThingPolicy. Der Name der AWS IoT Richtlinie, die es den Greengrass-Core-Geräten ermöglicht, mit AWS IoT und AWS IoT Greengrass zu kommunizieren. Wenn die AWS IoT Richtlinie nicht existiert, erstellt das Installationsprogramm eine permissive AWS IoT Richtlinie mit diesem Namen. Sie können die Berechtigungen dieser Richtlinie für Ihren Anwendungsfall einschränken. Weitere Informationen finden Sie unter Minimale AWS IoT Richtlinie für AWS IoT Greengrass V2 Kerngeräte.

    7. GreengrassV2TokenExchangeRole. Der Name der IAM-Rolle, die es dem Greengrass-Core-Gerät ermöglicht, temporäre AWS Anmeldeinformationen abzurufen. Wenn die Rolle nicht existiert, erstellt das Installationsprogramm sie und erstellt eine Richtlinie mit dem Namen und hängt sie an. GreengrassV2TokenExchangeRoleAccess Weitere Informationen finden Sie unter Autorisieren Sie Kerngeräte für die Interaktion mit Diensten AWS.

    8. GreengrassCoreTokenExchangeRoleAlias. Der Alias für die IAM-Rolle, der es dem Greengrass-Core-Gerät ermöglicht, später temporäre Anmeldeinformationen abzurufen. Wenn der Rollenalias nicht existiert, erstellt ihn das Installationsprogramm und verweist ihn auf die von Ihnen angegebene IAM-Rolle. Weitere Informationen finden Sie unter Autorisieren Sie Kerngeräte für die Interaktion mit Diensten AWS.

    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
    Wichtig

    Auf Windows-Core-Geräten müssen Sie angeben, --setup-system-service true dass die AWS IoT Greengrass Core-Software als Systemdienst eingerichtet werden soll.

    Das Installationsprogramm druckt die folgenden Meldungen aus, wenn es erfolgreich ist:

    • Wenn Sie angeben--provision, druckt das Installationsprogramm, Successfully configured Nucleus with provisioned resource details wenn die Ressourcen erfolgreich konfiguriert wurden.

    • Wenn Sie dies angeben--deploy-dev-tools, druckt das Installationsprogramm, Configured Nucleus to deploy aws.greengrass.Cli component wenn die Bereitstellung erfolgreich erstellt wurde.

    • Wenn Sie dies angeben--setup-system-service true, druckt das Installationsprogramm, Successfully set up Nucleus as a system service ob es die Software als Dienst eingerichtet und ausgeführt hat.

    • Wenn Sie nichts angeben--setup-system-service true, druckt das Installationsprogramm, Launched Nucleus successfully ob es erfolgreich war und ob die Software ausgeführt wurde.

  3. Überspringen Sie diesen Schritt, wenn Sie Grüngras-Kern Version 2.0.4 oder höher installiert haben. Wenn Sie die neueste Version der Software heruntergeladen haben, haben Sie Version 2.0.4 oder höher installiert.

    Führen Sie den folgenden Befehl aus, um die erforderlichen Dateiberechtigungen für den Stammordner der AWS IoT Greengrass Core-Software festzulegen. /greengrass/v2Ersetzen Sie ihn durch den Stammordner, den Sie in Ihrem Installationsbefehl angegeben haben, und /greengrass ersetzen Sie ihn durch den übergeordneten Ordner für Ihren Stammordner.

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

Wenn Sie die AWS IoT Greengrass Core-Software als Systemdienst installiert haben, führt das Installationsprogramm die Software für Sie aus. Andernfalls müssen Sie die Software manuell ausführen. Weitere Informationen finden Sie unter Führen Sie die AWS IoT Greengrass Core-Software aus.

Anmerkung

Standardmäßig erlaubt die IAM-Rolle, die das Installationsprogramm erstellt, keinen Zugriff auf Komponentenartefakte in S3-Buckets. Um benutzerdefinierte Komponenten bereitzustellen, die Artefakte in Amazon S3 definieren, müssen Sie der Rolle Berechtigungen hinzufügen, damit Ihr Kerngerät Komponenten-Artefakte abrufen kann. Weitere Informationen finden Sie unter Erlauben Sie den Zugriff auf S3-Buckets für Komponentenartefakte.

Wenn Sie noch keinen S3-Bucket für Komponenten-Artefakte haben, können Sie diese Berechtigungen später hinzufügen, nachdem Sie einen Bucket erstellt haben.

Weitere Informationen zur Konfiguration und Verwendung der Software finden Sie AWS IoT Greengrass unter den folgenden Links:

FIPS-konforme Komponenten von Erstanbietern

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-FIPS. 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 secretsmanager-fips. us-east-1.amazonaws.com
aws.greengrass.telemetry.NucleusEmitter
aws.greengrass.clientdevices.IPDetector
aws.greengrass.DiskSpooler