Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Tunneling sécurisé
Grâce à ce aws.greengrass.SecureTunneling composant, vous pouvez établir une communication bidirectionnelle sécurisée avec un périphérique central Greengrass situé derrière des pare-feux à accès restreint.
Par exemple, imaginez qu'un appareil central Greengrass est protégé par un pare-feu qui interdit toutes les connexions entrantes. Le tunneling sécurisé utilise MQTT pour transférer un jeton d'accès à l'appareil, puis WebSockets pour établir une connexion SSH avec l'appareil via le pare-feu. Ce tunnel AWS IoT géré vous permet d'ouvrir la connexion SSH requise pour votre appareil. Pour plus d'informations sur l'utilisation du tunneling AWS IoT sécurisé pour se connecter à des appareils distants, consultez la section Tunneling AWS IoT sécurisé dans le Guide du développeur. AWS IoT
Ce composant s'abonne au courtier de messages AWS IoT Core MQTT sur le $aws/things/greengrass-core-device/tunnels/notify sujet pour recevoir des notifications de tunneling sécurisé.
Versions
Les versions de ce composant sont les suivantes :
Type
Ce composant est un composant générique (aws.greengrass.generic). Le noyau Greengrass exécute les scripts de cycle de vie du composant.
Pour de plus amples informations, veuillez consulter Types de composant.
Système d’exploitation
Ce composant ne peut être installé que sur les appareils principaux de Linux.
Architectures :
-
Arm v71
-
Armv8 (AArch64)
-
x86_64
Exigences
Ce composant répond aux exigences suivantes :
- 2.0.x
-
-
Au moins 4 Mo d'espace disque disponible pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil.
-
Minimum de 3 Mo de RAM disponible pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil.
-
Bibliothèque GNU C (glibc) version 2.35 ou supérieure. Les versions du système d'exploitation et des bibliothèques dont la date de fin de vie de support à long terme est dépassée ne sont pas prises en charge. Vous devez utiliser un système d'exploitation et des bibliothèques bénéficiant d'un support à long terme.
-
Les bibliothèques d'exécution suivantes sont installées sur le périphérique principal de Greengrass :
-
libstdc++version 3.4.29 ou supérieure
-
libgcc_sversion 3.0 ou supérieure
-
OpenSSL version 3.0.0 ou supérieure
-
Ouvrez le trafic sortant sur le port 443 du périphérique principal Greengrass.
-
Activez le support pour le service de communication que vous souhaitez utiliser pour communiquer avec le périphérique principal Greengrass. Par exemple, pour ouvrir une connexion SSH à l'appareil, vous devez activer SSH sur cet appareil.
- 1.0.x - 1.1.x
-
-
Au moins 32 Mo d'espace disque disponible pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil.
-
Au moins 16 Mo de RAM sont disponibles pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil. Pour de plus amples informations, veuillez consulter Contrôlez l'allocation de mémoire grâce aux options JVM.
-
La version 2.25 ou supérieure de la bibliothèque GNU C (glibc) avec un noyau Linux 3.2 ou supérieur est requise pour le composant de tunneling sécurisé version 1.0.12 et supérieure. Les versions du système d'exploitation et des bibliothèques dont la date de fin de vie de support à long terme est dépassée ne sont pas prises en charge. Vous devez utiliser un système d'exploitation et des bibliothèques bénéficiant d'un support à long terme.
-
Le système d'exploitation et le moteur d'exécution Java doivent être installés en 64 bits.
-
Python 3.5 ou version ultérieure installé sur le périphérique principal de Greengrass et ajouté à la variable d'environnement PATH.
-
libcrypto.so.1.1installé sur le périphérique principal de Greengrass et ajouté à la variable d'environnement PATH.
-
Ouvrez le trafic sortant sur le port 443 du périphérique principal Greengrass.
-
Activez le support pour le service de communication que vous souhaitez utiliser pour communiquer avec le périphérique principal Greengrass. Par exemple, pour ouvrir une connexion SSH à l'appareil, vous devez activer SSH sur cet appareil.
Points de terminaison et ports
Ce composant doit être capable d'effectuer des requêtes sortantes vers les terminaux et les ports suivants, en plus des points de terminaison et des ports requis pour le fonctionnement de base. Pour de plus amples informations, veuillez consulter Autoriser le trafic des appareils via un proxy ou un pare-feu.
| Endpoint |
Port |
Obligatoire |
Description |
|
data.tunneling.iot.region.amazonaws.com
|
443 |
Oui |
Établissez des tunnels sécurisés.
|
Dépendances
Lorsque vous déployez un composant, déploie AWS IoT Greengrass également des versions compatibles de ses dépendances. Cela signifie que vous devez répondre aux exigences relatives au composant et à toutes ses dépendances pour pouvoir le déployer avec succès. Cette section répertorie les dépendances pour les versions publiées de ce composant et les contraintes de version sémantiques qui définissent les versions des composants pour chaque dépendance. Vous pouvez également consulter les dépendances pour chaque version du composant dans la AWS IoT Greengrass console. Sur la page des détails des composants, recherchez la liste des dépendances.
- 2.0.0
-
La version 2.0.0 de ce composant prend en charge à la fois Greengrass Nucleus et Greengrass Nucleus Lite. Le tableau suivant répertorie les dépendances pour la version 2.0.0 de ce composant.
- 1.0.19 – 1.1.3
-
Le tableau suivant répertorie les dépendances pour les versions 1.0.19 à 1.1.3 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 3,0,0 |
Flexible |
- 1.0.18
-
Le tableau suivant répertorie les dépendances pour la version 1.0.18 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,13,0 |
Flexible |
- 1.0.16 – 1.0.17
-
Le tableau suivant répertorie les dépendances pour les versions 1.0.16 à 1.0.17 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,12,0 |
Flexible |
- 1.0.14 – 1.0.15
-
Le tableau suivant répertorie les dépendances pour les versions 1.0.14 à 1.0.15 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,11,0 |
Flexible |
- 1.0.11 – 1.0.13
-
Le tableau suivant répertorie les dépendances pour les versions 1.0.11 à 1.0.13 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,10,0 |
Flexible |
- 1.0.10
-
Le tableau suivant répertorie les dépendances pour la version 1.0.10 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,9,0 |
Flexible |
- 1.0.9
-
Le tableau suivant répertorie les dépendances de la version 1.0.9 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,8,0 |
Flexible |
- 1.0.8
-
Le tableau suivant répertorie les dépendances de la version 1.0.8 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,7,0 |
Flexible |
- 1.0.5 - 1.0.7
-
Le tableau suivant répertorie les dépendances pour les versions 1.0.5 à 1.0.7 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,6,0 |
Flexible |
- 1.0.4
-
Le tableau suivant répertorie les dépendances de la version 1.0.4 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,5,0 |
Flexible |
- 1.0.3
-
Le tableau suivant répertorie les dépendances pour la version 1.0.3 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,4,0 |
Flexible |
- 1.0.2
-
Le tableau suivant répertorie les dépendances pour la version 1.0.2 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,3,0 |
Flexible |
- 1.0.1
-
Le tableau suivant répertorie les dépendances pour la version 1.0.1 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,0 < 2,2,0 |
Flexible |
- 1.0.0
-
Le tableau suivant répertorie les dépendances pour la version 1.0.0 de ce composant.
| Dépendance |
Versions compatibles |
Type de dépendance |
| Noyau Greengrass |
> = 2,0,3 < 2,1,0 |
Flexible |
Pour plus d'informations sur les dépendances des composants, consultez la référence des recettes des composants.
Configuration
Ce composant fournit les paramètres de configuration suivants que vous pouvez personnaliser lorsque vous déployez le composant.
- 2.0.x
-
maxConcurrentTunnels
-
(Facultatif) Nombre maximum de tunnels simultanés autorisés.
La valeur ne peut pas être supérieure à 20.
Valeur par défaut : 20
tunnelTimeoutSeconds
-
(Facultatif) Durée du délai d'expiration du tunnel en secondes.
Par défaut : 43200 (12 heures)
accessControl
-
(Facultatif) L'objet qui contient la politique d'autorisation qui permet au composant de s'abonner à la rubrique des notifications de tunneling sécurisé.
Ne modifiez pas ce paramètre de configuration si votre déploiement cible un groupe d'objets. Si votre déploiement cible un appareil principal individuel et que vous souhaitez limiter son abonnement au sujet de l'appareil, spécifiez le nom de l'appareil principal. Dans la resources valeur de la politique d'autorisation de l'appareil, remplacez le caractère générique du sujet MQTT par le nom de l'objet de l'appareil.
{
"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"
]
}
}
}
Exemple Exemple : fusion de configuration et mise à jour
L'exemple de configuration suivant spécifie le nombre maximal de tunnels simultanés et les paramètres de temporisation.
{
"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
-
(Facultatif) Le système d'exploitation de votre appareil principal. Par défaut, le composant tente d'identifier automatiquement le système d'exploitation qui s'exécute sur votre appareil principal. Si le composant ne démarre pas avec la valeur par défaut, utilisez cette valeur pour spécifier le système d'exploitation. Pour obtenir la liste des systèmes d'exploitation pris en charge pour ce composant, consultezExigences relatives aux dispositifs.
Cette valeur peut être l'une des suivantes :auto,ubuntu,amzn2,raspberrypi.
Valeur par défaut : auto
accessControl
-
(Facultatif) L'objet qui contient la politique d'autorisation qui permet au composant de s'abonner à la rubrique des notifications de tunneling sécurisé.
Ne modifiez pas ce paramètre de configuration si votre déploiement cible un groupe d'objets. Si votre déploiement cible un appareil principal individuel et que vous souhaitez limiter son abonnement au sujet de l'appareil, spécifiez le nom de l'appareil principal. Dans la resources valeur de la politique d'autorisation de l'appareil, remplacez le caractère générique du sujet MQTT par le nom de l'objet de l'appareil.
{
"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"
]
}
}
}
Exemple Exemple : fusion de configuration et mise à jour
L'exemple de configuration suivant spécifie d'autoriser ce composant à ouvrir des tunnels sécurisés sur un périphérique principal nommé MyGreengrassCore qui exécute Ubuntu.
{
"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"
]
}
}
}
}
Fichier journal local
- Greengrass nucleus
-
Ce composant utilise le fichier journal suivant.
/greengrass/v2/logs/aws.greengrass.SecureTunneling.log
Pour afficher les journaux de ce composant
-
Exécutez la commande suivante sur le périphérique principal pour afficher le fichier journal de ce composant en temps réel. /greengrass/v2Remplacez-le par le chemin d'accès au dossier AWS IoT Greengrass racine.
sudo tail -f /greengrass/v2/logs/aws.greengrass.SecureTunneling.log
- Greengrass nucleus lite
-
Exécutez la commande suivante sur le périphérique principal pour afficher les journaux de ce composant.
journalctl -xeau ggl.aws.greengrass.SecureTunneling.service
Exécutez la commande suivante sur le périphérique principal pour afficher les journaux de ce composant en temps réel.
journalctl -fau ggl.aws.greengrass.SecureTunneling.service
Licences
Ce composant inclut le tiers suivant software/licensing :
- 2.0.x
-
- 1.0.x - 1.1.x
-
Usage
Pour utiliser le composant de tunneling sécurisé sur votre appareil, procédez comme suit :
-
Déployez le composant de tunneling sécurisé sur votre appareil.
-
Ouvrez la console AWS IoT. Dans le menu de gauche, choisissez Actions à distance, puis sélectionnez Tunnels sécurisés.
-
Créez un tunnel vers votre appareil Greengrass.
-
Téléchargez le jeton d'accès à la source.
-
Utilisez le proxy local avec le jeton d'accès à la source pour vous connecter à votre destination. Pour plus d'informations, consultez Comment utiliser le proxy local dans le Guide du AWS IoT développeur.
Consultez aussi
Journal des modifications
Le tableau suivant décrit les modifications apportées à chaque version du composant.
|
Version
|
Modifications
|
|
2.0.1
|
- Corrections de bugs et améliorations
-
-
Met à jour le binaire du proxy local intégré à la version 3.3.0.
-
Corrige des bogues liés à la simultanéité et à la durée de vie des objets susceptibles d'affecter l'intégrité des données du tunnel.
-
Nécessite TLS 1.2 ou version ultérieure et n'autorise plus SSLv2, SSLv3, TLS 1.0 ou TLS 1.1.
|
|
2.0.0
|
- Nouvelles fonctionnalités
-
-
Remplace le wrapper Java par un wrapper C.
-
Remplace AWS IoT Device Client par AWS IoT Securetunneling Localproxy.
-
Réduit la taille binaire d'environ 36 Mo à environ 4 Mo.
-
Réduit l'encombrement de la mémoire d'environ 100 Mo à environ 2 Mo.
|
|
1.1.3
|
- Corrections de bugs et améliorations
-
-
Met à niveau le AWS IoT Device Client sous-jacent invoqué par le composant de la version 1.10.0 à la version 1.10.1.
-
Corrige les problèmes de compatibilité de la bibliothèque GNU C (glibc) dans la version 1.1.2 du composant de tunneling sécurisé.
|
|
1.1.2
|
Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.
- Corrections de bugs et améliorations
-
-
Met à niveau le AWS IoT Device Client sous-jacent invoqué par le composant de la version 1.9.0 à la version 1.10.0.
-
Résout le problème de transfert de charge utile qui empêche les utilisateurs de transférer des fichiers volumineux depuis les appareils principaux de Greengrass V2 vers l'appareil source via le tunnel sécurisé.
|
|
1.1.1
|
- Corrections de bugs et améliorations
-
|
|
1.1.0
|
- Nouvelles fonctionnalités
-
|
|
1,0,19
|
- Corrections de bugs et améliorations
-
-
Met à niveau le AWS IoT Device Client sous-jacent invoqué par le composant de la version 1.8.0 à la version 1.9.0.
-
Augmente la limite de tunnels simultanés à 20 tunnels au niveau d'un composant.
-
Augmente le délai d'expiration par défaut du AWS IoT Greengrass Core IPC de 3 secondes à 10 secondes.
Si vous utilisez le proxy local de tunneling sécurisé comme client source du tunnel, ne mettez pas à jour votre composant vers cette version avant d'avoir également mis à niveau le proxy local vers la version 3.1.1 ou ultérieure.
|
|
10,18
|
Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. |
|
10,17
|
- Corrections de bugs et améliorations
-
|
|
10,16
|
Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. |
|
1.0.15
|
- Corrections de bugs et améliorations
-
|
|
10,14
|
Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. |
|
10,13
|
- Corrections de bugs et améliorations
-
|
|
1,0,12
|
- Corrections de bugs et améliorations
-
|
|
1.0.11
|
Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. |
|
1.0.10
|
Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. |
|
1.0.9
|
Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.
|
|
1.0.8
|
Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.
|
|
1.0.7
|
- Corrections de bugs et améliorations
-
|
|
1.0.6
|
Cette version contient des corrections de bugs.
|
|
1.0.5
|
Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.
|
|
1.0.4
|
Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.
|
|
1.0.3
|
Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.
|
|
1.0.2
|
Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.
|
|
1.0.1
|
Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.
|
|
1.0.0
|
Première version.
|