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.
Sicheres Tunneling
Mit der aws.greengrass.SecureTunneling Komponente können Sie eine sichere bidirektionale Kommunikation mit einem Greengrass-Core-Gerät aufbauen, das sich hinter eingeschränkten Firewalls befindet.
Stellen Sie sich zum Beispiel vor, Sie haben ein Greengrass-Core-Gerät hinter einer Firewall, die alle eingehenden Verbindungen verbietet. Secure Tunneling verwendet MQTT, um ein Zugriffstoken auf das Gerät zu übertragen, und stellt dann über die WebSockets Firewall eine SSH-Verbindung zum Gerät her. Mit diesem AWS IoT verwalteten Tunnel können Sie die für Ihr Gerät benötigte SSH-Verbindung öffnen. Weitere Informationen zur Verwendung von AWS IoT Secure Tunneling für die Verbindung zu Remote-Geräten finden Sie unter AWS IoT Secure Tunneling im Entwicklerhandbuch.AWS IoT
Diese Komponente abonniert den AWS IoT Core MQTT-Nachrichtenbroker zu diesem $aws/things/greengrass-core-device/tunnels/notify Thema, um Benachrichtigungen über sicheres Tunneling zu erhalten.
Versionen
Diese Komponente hat die folgenden Versionen:
Typ
Diese Komponente ist eine generische Komponente (aws.greengrass.generic). Der Greengrass-Kern führt die Lebenszyklusskripte der Komponente aus.
Weitere Informationen finden Sie unter Komponententypen.
Betriebssystem
Diese Komponente kann nur auf Linux-Core-Geräten installiert werden.
Architekturen:
-
Armv71
-
Arm 8 () AArch64
-
x86_64
Voraussetzungen
Für diese Komponente gelten die folgenden Anforderungen:
- 2.0.x
-
-
Für die Secure Tunneling-Komponente stehen mindestens 4 MB Festplattenspeicher zur Verfügung. Diese Anforderung umfasst nicht die Greengrass-Kernsoftware oder andere Komponenten, die auf demselben Gerät ausgeführt werden.
-
Für die Secure Tunneling-Komponente sind mindestens 3 MB RAM verfügbar. Diese Anforderung umfasst nicht die Greengrass-Kernsoftware oder andere Komponenten, die auf demselben Gerät ausgeführt werden.
-
GNU C Library (Glibc) Version 2.35 oder höher. Versionen des Betriebssystems und der Bibliotheken, deren Haltbarkeitsdatum für den langfristigen Support abgelaufen ist, werden nicht unterstützt. Sie sollten ein Betriebssystem und Bibliotheken mit langfristigem Support verwenden.
-
Die folgenden Laufzeitbibliotheken sind auf dem Greengrass-Core-Gerät installiert:
-
libstdc++Version 3.4.29 oder höher
-
libgcc_sVersion 3.0 oder höher
-
OpenSSL Version 3.0.0 oder höher
-
Öffnen Sie den ausgehenden Verkehr auf Port 443 auf dem Greengrass-Core-Gerät.
-
Aktivieren Sie die Unterstützung für den Kommunikationsdienst, den Sie für die Kommunikation mit dem Greengrass Core-Gerät verwenden möchten. Um beispielsweise eine SSH-Verbindung zu dem Gerät herzustellen, müssen Sie SSH auf diesem Gerät aktivieren.
- 1.0.x - 1.1.x
-
-
Für die Secure Tunneling-Komponente stehen mindestens 32 MB Festplattenspeicher zur Verfügung. Diese Anforderung umfasst nicht die Greengrass-Kernsoftware oder andere Komponenten, die auf demselben Gerät ausgeführt werden.
-
Für die Secure Tunneling-Komponente sind mindestens 16 MB RAM verfügbar. Diese Anforderung umfasst nicht die Greengrass-Kernsoftware oder andere Komponenten, die auf demselben Gerät ausgeführt werden. Weitere Informationen finden Sie unter Steuern Sie die Speicherzuweisung mit JVM-Optionen.
-
GNU C Library (Glibc) Version 2.25 oder höher mit einem Linux-Kernel von 3.2 oder höher sind für die Secure Tunneling-Komponente Version 1.0.12 und höher erforderlich. Versionen des Betriebssystems und der Bibliotheken, deren Haltbarkeitsdatum für den langfristigen Support abgelaufen ist, werden nicht unterstützt. Sie sollten ein Betriebssystem und Bibliotheken mit langfristigem Support verwenden.
-
Sowohl das Betriebssystem als auch die Java-Runtime müssen als 64-Bit-Version installiert sein.
-
Python 3.5 oder höher wurde auf dem Greengrass-Core-Gerät installiert und der Umgebungsvariablen PATH hinzugefügt.
-
libcrypto.so.1.1auf dem Greengrass-Core-Gerät installiert und zur Umgebungsvariablen PATH hinzugefügt.
-
Öffnen Sie den ausgehenden Verkehr auf Port 443 auf dem Greengrass-Core-Gerät.
-
Aktivieren Sie die Unterstützung für den Kommunikationsdienst, den Sie für die Kommunikation mit dem Greengrass Core-Gerät verwenden möchten. Um beispielsweise eine SSH-Verbindung zu dem Gerät herzustellen, müssen Sie SSH auf diesem Gerät aktivieren.
Endpunkte und Ports
Diese Komponente muss in der Lage sein, ausgehende Anfragen an die folgenden Endpunkte und Ports auszuführen, zusätzlich zu den Endpunkten und Ports, die für den Basisbetrieb erforderlich sind. Weitere Informationen finden Sie unter Geräteverkehr über einen Proxy oder eine Firewall zulassen.
| Endpoint |
Port |
Erforderlich |
Description |
|
data.tunneling.iot.region.amazonaws.com
|
443 |
Ja |
Richten Sie sichere Tunnel ein.
|
Abhängigkeiten
Wenn Sie eine Komponente bereitstellen, stellt sie AWS IoT Greengrass auch kompatible Versionen ihrer Abhängigkeiten bereit. Das bedeutet, dass Sie die Anforderungen für die Komponente und all ihre Abhängigkeiten erfüllen müssen, um die Komponente erfolgreich bereitstellen zu können. In diesem Abschnitt werden die Abhängigkeiten für die veröffentlichten Versionen dieser Komponente sowie die semantischen Versionseinschränkungen aufgeführt, die die Komponentenversionen für jede Abhängigkeit definieren. Sie können auch die Abhängigkeiten für jede Version der Komponente in der AWS IoT Greengrass Konsole anzeigen. Suchen Sie auf der Seite mit den Komponentendetails nach der Liste der Abhängigkeiten.
- 2.0.0
-
Version 2.0.0 dieser Komponente unterstützt sowohl Greengrass Nucleus als auch Greengrass Nucleus Lite. In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.0 dieser Komponente aufgeführt.
- 1.0.19 – 1.1.3
-
In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 1.0.19 bis 1.1.3 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <3.0.0 |
Weich |
- 1.0.18
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.18 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.13.0 |
Weich |
- 1.0.16 – 1.0.17
-
In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 1.0.16 bis 1.0.17 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.12.0 |
Weich |
- 1.0.14 – 1.0.15
-
In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 1.0.14 bis 1.0.15 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.11.0 |
Weich |
- 1.0.11 – 1.0.13
-
In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 1.0.11 — 1.0.13 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.10.0 |
Weich |
- 1.0.10
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.10 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.9.0 |
Weich |
- 1.0.9
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.9 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.8.0 |
Weich |
- 1.0.8
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.8 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.7.0 |
Weich |
- 1.0.5 - 1.0.7
-
In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 1.0.5 bis 1.0.7 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.6.0 |
Weich |
- 1.0.4
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.4 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.5.0 |
Weich |
- 1.0.3
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.3 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.4.0 |
Weich |
- 1.0.2
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.2 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.3.0 |
Weich |
- 1.0.1
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.1 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.0 <2.2.0 |
Weich |
- 1.0.0
-
In der folgenden Tabelle sind die Abhängigkeiten für Version 1.0.0 dieser Komponente aufgeführt.
| -Abhängigkeit |
Kompatible Versionen |
Art der Abhängigkeit |
| Grüngraskern |
>=2.0.3 <2.1.0 |
Weich |
Weitere Informationen zu Komponentenabhängigkeiten finden Sie in der Referenz zu den Komponentenrezepten.
Konfiguration
Diese Komponente stellt die folgenden Konfigurationsparameter bereit, die Sie bei der Bereitstellung der Komponente anpassen können.
- 2.0.x
-
maxConcurrentTunnels
-
(Optional) Zulässige maximale Anzahl gleichzeitiger Tunnel.
Der Wert darf nicht höher als 20 sein.
Standard: 20
tunnelTimeoutSeconds
-
(Optional) Dauer des Tunnel-Timeouts in Sekunden.
Standard: 43200 (12 Stunden)
accessControl
-
(Optional) Das Objekt, das die Autorisierungsrichtlinie enthält, die es der Komponente ermöglicht, das Thema Secure Tunneling-Benachrichtigungen zu abonnieren.
Ändern Sie diesen Konfigurationsparameter nicht, wenn Ihre Bereitstellung auf eine Dinggruppe abzielt. Wenn Ihre Bereitstellung auf ein einzelnes Kerngerät abzielt und Sie dessen Abonnement auf das Thema des Geräts beschränken möchten, geben Sie den Ding-Namen des Kerngeräts an. Ersetzen Sie in dem resources Wert in der Autorisierungsrichtlinie des Geräts den Platzhalter für das MQTT-Thema durch den Ding-Namen des Geräts.
{
"aws.greengrass.ipc.mqttproxy": {
"aws.greengrass.SecureTunneling:mqttproxy:1": {
"policyDescription": "Access to tunnel notification pubsub topic",
"operations": [
"aws.greengrass#SubscribeToIoTCore"
],
"resources": [
"$aws/things/+/tunnels/notify"
]
}
}
}
Beispiel Beispiel: Aktualisierung der Zusammenführung von Konfigurationen
Die folgende Beispielkonfiguration legt die maximale Anzahl gleichzeitiger Tunnel und Timeout-Einstellungen fest.
{
"maxConcurrentTunnels": 20,
"tunnelTimeoutSeconds": 43200,
"accessControl": {
"aws.greengrass.ipc.mqttproxy": {
"aws.greengrass.SecureTunneling:mqttproxy:1": {
"policyDescription": "Access to tunnel notification pubsub topic",
"operations": [
"aws.greengrass#SubscribeToIoTCore"
],
"resources": [
"$aws/things/MyGreengrassCore/tunnels/notify"
]
}
}
}
}
- 1.0.x - 1.1.x
-
OS_DIST_INFO
-
(Optional) Das Betriebssystem Ihres Kerngeräts. Standardmäßig versucht die Komponente, das auf Ihrem Kerngerät ausgeführte Betriebssystem automatisch zu identifizieren. Wenn die Komponente nicht mit dem Standardwert startet, verwenden Sie diesen Wert, um das Betriebssystem anzugeben. Eine Liste der unterstützten Betriebssysteme für diese Komponente finden Sie unterAnforderungen an Speichergeräte.
Dieser Wert kann einer der folgenden sein:auto,ubuntu,amzn2,raspberrypi.
Standard: auto
accessControl
-
(Optional) Das Objekt, das die Autorisierungsrichtlinie enthält, die es der Komponente ermöglicht, das Thema Secure Tunneling-Benachrichtigungen zu abonnieren.
Ändern Sie diesen Konfigurationsparameter nicht, wenn Ihre Bereitstellung auf eine Dinggruppe abzielt. Wenn Ihre Bereitstellung auf ein einzelnes Kerngerät abzielt und Sie dessen Abonnement auf das Thema des Geräts beschränken möchten, geben Sie den Ding-Namen des Kerngeräts an. Ersetzen Sie in dem resources Wert in der Autorisierungsrichtlinie des Geräts den Platzhalter für das MQTT-Thema durch den Ding-Namen des Geräts.
{
"aws.greengrass.ipc.mqttproxy": {
"aws.iot.SecureTunneling:mqttproxy:1": {
"policyDescription": "Access to tunnel notification pubsub topic",
"operations": [
"aws.greengrass#SubscribeToIoTCore"
],
"resources": [
"$aws/things/+/tunnels/notify"
]
}
}
}
Beispiel Beispiel: Aktualisierung der Zusammenführung von Konfigurationen
Die folgende Beispielkonfiguration gibt an, dass diese Komponente sichere Tunnel auf einem Kerngerät namens öffnen kannMyGreengrassCore, auf dem Ubuntu ausgeführt wird.
{
"OS_DIST_INFO": "ubuntu",
"accessControl": {
"aws.greengrass.ipc.mqttproxy": {
"aws.iot.SecureTunneling:mqttproxy:1": {
"policyDescription": "Access to tunnel notification pubsub topic",
"operations": [
"aws.greengrass#SubscribeToIoTCore"
],
"resources": [
"$aws/things/MyGreengrassCore/tunnels/notify"
]
}
}
}
}
Lokale Protokolldatei
- Greengrass nucleus
-
Diese Komponente verwendet die folgende Protokolldatei.
/greengrass/v2/logs/aws.greengrass.SecureTunneling.log
Um die Protokolle dieser Komponente einzusehen
-
Führen Sie den folgenden Befehl auf dem Kerngerät aus, um die Protokolldatei dieser Komponente in Echtzeit anzuzeigen. /greengrass/v2Ersetzen Sie es durch den Pfad zum AWS IoT Greengrass Stammordner.
sudo tail -f /greengrass/v2/logs/aws.greengrass.SecureTunneling.log
- Greengrass nucleus lite
-
Führen Sie den folgenden Befehl auf dem Core-Gerät aus, um die Protokolle dieser Komponente einzusehen.
journalctl -xeau ggl.aws.greengrass.SecureTunneling.service
Führen Sie den folgenden Befehl auf dem Kerngerät aus, um die Protokolle dieser Komponente in Echtzeit anzuzeigen.
journalctl -fau ggl.aws.greengrass.SecureTunneling.service
Lizenzen
Diese Komponente umfasst die folgende Software/Lizenzierung von Drittanbietern:
- 2.0.x
-
- 1.0.x - 1.1.x
-
Usage
Gehen Sie wie folgt vor, um die Secure Tunneling-Komponente auf Ihrem Gerät zu verwenden:
-
Stellen Sie die Secure Tunneling-Komponente auf Ihrem Gerät bereit.
-
Öffnen Sie die AWS IoT -Konsole. Wählen Sie im linken Menü die Option Remote-Aktionen und dann Sichere Tunnel aus.
-
Erstellen Sie einen Tunnel zu Ihrem Greengrass-Gerät.
-
Laden Sie das Quellzugriffstoken herunter.
-
Verwenden Sie den lokalen Proxy mit dem Quellzugriffstoken, um eine Verbindung zu Ihrem Ziel herzustellen. Weitere Informationen finden Sie unter So verwenden Sie den lokalen Proxy im AWS IoT Entwicklerhandbuch.
Weitere Informationen finden Sie auch unter
Änderungsprotokoll
In der folgenden Tabelle werden die Änderungen in den einzelnen Versionen der Komponente beschrieben.
|
Version
|
Änderungen
|
|
2.0.0
|
- Neue Features
-
-
Ersetzt den Java-Wrapper durch einen C-Wrapper.
-
Ersetzt den AWS IoT Geräteclient durch AWS IoT Securetunneling Localproxy.
-
Reduziert die Binärgröße von etwa 36 MB auf etwa 4 MB.
-
Reduziert den Speicherbedarf von etwa 100 MB auf etwa 2 MB.
|
|
1.1.3
|
- Fehlerkorrekturen und Verbesserungen
-
-
Führt ein Upgrade des zugrunde liegenden AWS IoT Geräteclients, der von der Komponente aufgerufen wird, von Version 1.10.0 auf Version 1.10.1 durch.
-
Behebt die Kompatibilitätsprobleme der GNU C-Bibliothek (Glibc) in Version 1.1.2 der Secure Tunneling-Komponente.
|
|
1.1.2
|
Diese Version ist nicht mehr verfügbar. Die Verbesserungen in dieser Version sind in späteren Versionen dieser Komponente verfügbar.
- Fehlerkorrekturen und Verbesserungen
-
-
Führt ein Upgrade des zugrunde liegenden AWS IoT Geräteclients, der von der Komponente aufgerufen wird, von Version 1.9.0 auf Version 1.10.0 durch.
-
Behebt das Problem mit der Payload-Übertragung, das Benutzer daran hindert, große Dateien von Greengrass V2-Kerngeräten über den sicheren Tunnel an das Quellgerät weiterzuleiten.
|
|
1.1.1
|
- Fehlerkorrekturen und Verbesserungen
-
|
|
1.1.0
|
|
|
1.0.19
|
- Fehlerkorrekturen und Verbesserungen
-
-
Führt ein Upgrade des zugrunde liegenden AWS IoT Geräteclients, der von der Komponente aufgerufen wird, von Version 1.8.0 auf Version 1.9.0 durch.
-
Erhöht das Limit für gleichzeitige Tunnel auf Komponentenebene auf 20 Tunnel.
-
Erhöht das standardmäßige AWS IoT Greengrass Core-IPC-Timeout von 3 Sekunden auf 10 Sekunden.
Wenn Sie den lokalen Secure Tunneling-Proxy als Tunnelquellclient verwenden, aktualisieren Sie Ihre Komponente erst auf diese Version, wenn Sie auch den lokalen Proxy auf Version 3.1.1 oder höher aktualisiert haben.
|
|
1.0.18
|
Die Version wurde für die Version 2.12.0 von Greengrass Nucleus aktualisiert. |
|
1.0.17
|
- Fehlerkorrekturen und Verbesserungen
-
-
Behebt das Problem mit der Thread-Bereinigung, das Benutzer daran hinderte, Tunnel zu erstellen. Diese Komponente bereinigt nun einen Thread, entweder sobald er das CloseTunnel Signal empfängt oder wenn der Tunnel nach 12 Stunden abgelaufen ist.
|
|
1.0.16
|
Die Version wurde für die Version 2.11.0 von Greengrass Nucleus aktualisiert. |
|
1.0.15
|
- Fehlerkorrekturen und Verbesserungen
-
|
|
1.0.14
|
Die Version wurde für die Version 2.10.0 von Greengrass Nucleus aktualisiert. |
|
1.0.13
|
- Fehlerkorrekturen und Verbesserungen
-
|
|
1.0.12
|
- Fehlerkorrekturen und Verbesserungen
-
|
|
1.0.11
|
Die Version wurde für die Version 2.9.0 von Greengrass Nucleus aktualisiert. |
|
1.0.10
|
Die Version wurde für die Version 2.8.0 von Greengrass Nucleus aktualisiert. |
|
1.0.9
|
Die Version wurde für die Version 2.7.0 von Greengrass Nucleus aktualisiert.
|
|
1.0.8
|
Die Version wurde für die Version 2.6.0 von Greengrass Nucleus aktualisiert.
|
|
1.0.7
|
- Fehlerkorrekturen und Verbesserungen
-
|
|
1.0.6
|
Diese Version enthält Fehlerkorrekturen.
|
|
1.0.5
|
Die Version wurde für die Version 2.5.0 von Greengrass Nucleus aktualisiert.
|
|
1.0.4
|
Die Version wurde für die Version 2.4.0 von Greengrass Nucleus aktualisiert.
|
|
1.0.3
|
Die Version wurde für die Version 2.3.0 von Greengrass Nucleus aktualisiert.
|
|
1.0.2
|
Die Version wurde für die Version 2.2.0 von Greengrass Nucleus aktualisiert.
|
|
1.0.1
|
Die Version wurde für die Version 2.1.0 von Greengrass Nucleus aktualisiert.
|
|
1.0.0
|
Erste Version
|