Tous les produits
Search
Centre de documentation

Elastic Compute Service:Connect to an instance by using Session Manager

Dernière mise à jour :Aug 18, 2026

Session Manager est un outil gratuit fourni par Alibaba Cloud pour vous permettre de vous connecter aux instances Elastic Compute Service (ECS). Reposant sur des technologies telles que Cloud Assistant et WebSocket, Session Manager permet de se connecter aux instances sans mot de passe ni serveur de rebond, et ne nécessite pas de connexion Internet. Cette rubrique décrit les cas d'utilisation et les remarques importantes concernant Session Manager.

Qu'est-ce que Session Manager ?

Important

Session Manager est gratuit. Si vous souhaitez conserver les enregistrements des opérations effectuées via Session Manager, vous devez activer la fonctionnalité Session Operation Record Delivery. Pour plus d'informations, consultez Livrer les enregistrements de session.

Session Manager offre les fonctionnalités suivantes :

  • Connexion sans mot de passe : Aucun mot de passe n'est requis lors de la connexion à une instance.

  • Connexion aux instances sans accès Internet : Session Manager permet de se connecter aux instances sans nécessiter de connexion Internet ni de configuration de serveur de rebond.

    Lorsque vous utilisez Session Manager pour vous connecter à une instance, le serveur Session Manager d'Alibaba Cloud transmet les commandes associées à l'instance ECS.
  • Prise en charge de plusieurs types de clients :

    • Alibaba Cloud Management Console : Pour savoir comment utiliser le client Session Manager dans le navigateur afin de vous connecter à une instance, consultez Se connecter dans la console ECS.

    • Lignes de commande nécessitant l'installation d'ali-instance-cli : Pour savoir comment utiliser Session Manager afin de vous connecter à une instance depuis votre ordinateur, consultez Se connecter à l'aide de la CLI Session Manager.

Description de l'utilisateur de connexion

Par défaut, Session Manager vous connecte à une instance Linux en tant qu'utilisateur ecs-assist-user et à une instance Windows en tant qu'utilisateur system.

  • ecs-assist-user : utilisateur standard sous Linux. Cet utilisateur ne dispose pas de permissions système et peut uniquement effectuer des opérations autorisées. Vous pouvez exécuter des commandes sudo pour accorder temporairement des permissions root à l'utilisateur ecs-assist-user.

  • system : compte système local sous Windows disposant des permissions système les plus élevées.

Limites et prérequis

  • L'instance à laquelle vous souhaitez vous connecter doit être dans l'état Running.

  • **L'agent Cloud Assistant Agent est installé sur l'instance**. Session Manager repose sur Cloud Assistant Agent.

    Cloud Assistant Agent est préinstallé sur les instances ECS créées à partir d'images publiques Alibaba Cloud le 1er décembre 2017 ou après cette date. Pour les instances ECS créées avant le 1er décembre 2017, vous devez installer manuellement Cloud Assistant Agent. Pour plus d'informations, consultez Installer l'agent Cloud Assistant .
  • La connectivité réseau est disponible. Assurez-vous que l'instance est connectée au serveur Cloud Assistant. Cela permet à Cloud Assistant Agent de communiquer avec le serveur Cloud Assistant via WebSocket. Pour plus d'informations, reportez-vous à la section Paramètres du groupe de sécurité de cette rubrique.

  • Jusqu'à 1 000 sessions peuvent être créées et rester disponibles par région. Chaque instance ECS peut avoir jusqu'à 20 sessions à l'état connecté. La bande passante est limitée à 200 kbit/s pour chaque session.

Autres fonctionnalités et cas d'utilisation

  • Accéder aux services sans connexion Internet grâce à la fonctionnalité de transfert de port

    La fonctionnalité de transfert de port du client Session Manager permet de mapper un port de service d'une instance ECS vers un port de votre machine locale. Vous pouvez ensuite envoyer des requêtes au port local pour accéder aux services de l'instance ECS. Par exemple, vous pouvez accéder à un service backend Web déployé sur un réseau interne ou vous connecter à une instance via un réseau interne à l'aide de SSH. Session Manager établissant des connexions WebSocket sur TCP, la fonctionnalité de transfert de port prend uniquement en charge le transfert de port TCP et non UDP. Pour plus d'informations, consultez Se connecter via le transfert de port sans IP publique.

  • Ajouter une clé publique SSH temporaire à une instance

    Lorsque vous utilisez SSH pour vous connecter à une instance, Session Manager permet d'y ajouter une clé publique temporaire valide pendant 60 secondes. Vous pouvez ensuite vous connecter à l'instance en utilisant la paire de clés contenant cette clé publique temporaire et une clé privée. Pour plus d'informations, consultez Utiliser la CLI Session Manager pour enregistrer une clé publique temporaire afin de se connecter sans mot de passe à une instance.

  • Utiliser la fonctionnalité de livraison des enregistrements de session

    Si vous établissez des sessions avec plusieurs utilisateurs, la fonctionnalité de livraison des enregistrements de session vous permet de consulter les enregistrements d'opérations d'un utilisateur spécifique pour un audit ultérieur. Pour savoir comment activer cette fonctionnalité, consultez Livrer les enregistrements de session.

Fonctionnement de Session Manager

Comme l'illustre la figure suivante, lorsque vous vous connectez à une instance ECS via Session Manager, le client Session Manager et l'instance ECS établissent des connexions WebSocket avec le serveur Cloud Assistant. Une fois ces connexions établies, chaque commande que vous saisissez est transférée à l'instance par le serveur Cloud Assistant, puis exécutée par Cloud Assistant Agent sur l'instance.

image

Modules illustrés dans la figure

  • Client Cloud Assistant : l'outil client que vous utilisez, tel que Session Manager dans la console ECS, ali-instance-cli sur votre machine locale, ou Cloud Assistant Agent.

  • Serveur Cloud Assistant : Session Manager s'appuie sur Cloud Assistant pour gérer les permissions et l'état des sessions.

  • Cloud Assistant Agent installé sur une instance : exécute les commandes que vous saisissez.

Description de la connexion

  • Lorsque le client Session Manager établit une connexion WebSocket avec le serveur Cloud Assistant (étapes 2 à 4), le serveur Cloud Assistant authentifie le client Session Manager afin de vérifier si vous disposez des permissions nécessaires pour vous connecter à l'instance via Session Manager. Pour plus d'informations sur les permissions requises, reportez-vous à la section Gestion des permissions de cette rubrique.

  • Lorsque Cloud Assistant Agent dans ECS établit une connexion WebSocket avec le serveur Cloud Assistant (étapes 5 et 6), le serveur Cloud Assistant notifie Cloud Assistant Agent d'établir une connexion. Ensuite, Cloud Assistant Agent initie activement une connexion vers le serveur Cloud Assistant.

    Notez que le port WebSocket sortant doit être ouvert pour que l'instance ECS puisse accéder au serveur Cloud Assistant. Le processus de connexion ne dépend pas des règles entrantes du groupe de sécurité auquel appartient l'instance ECS. Pour plus d'informations, reportez-vous à la section Paramètres du groupe de sécurité de cette rubrique.

Sécurité

  • Chiffrement : Le protocole Web Socket Secure (WSS) permet d'établir des connexions WebSocket persistantes entre le client Session Manager et le serveur Cloud Assistant, ainsi qu'entre le serveur Cloud Assistant et Cloud Assistant Agent. Afin de renforcer la sécurité des données, le protocole WSS chiffre ces connexions persistantes à l'aide du protocole Secure Socket Layer (SSL).

  • Authentification : L'utilisation de Session Manager pour vous connecter aux instances élimine la nécessité de gérer les mots de passe des instances et prévient tout risque de fuite. Contrairement à SSH et VNC (Virtual Network Computing) qui reposent sur une authentification par nom d'utilisateur/mot de passe, Session Manager utilise une authentification basée sur Resource Access Management (RAM). Pour plus d'informations sur les permissions requises, reportez-vous à la section Gestion des permissions de cette rubrique.

  • Réseau : Une fois la connexion WebSocket établie entre Cloud Assistant Agent installé sur une instance et le serveur Cloud Assistant, vous pouvez utiliser Session Manager plutôt que SSH ou VNC pour vous connecter à l'instance, sans avoir à ouvrir de ports pour le trafic entrant. Cela renforce la sécurité de l'instance.

Processus de connexion

  • Se connecter à une instance via Session Manager dans la console ECS (dans un navigateur).

    Connectez-vous à la console de gestion Alibaba Cloud dans un navigateur et utilisez Session Manager pour vous connecter à l'instance. Pour plus d'informations, consultez Se connecter dans la console ECS. La figure suivante illustre ce processus.

    image
  • Se connecter à une instance via Session Manager depuis votre ordinateur local (via la CLI locale).

    Installez ali-instance-cli sur votre ordinateur local et utilisez la CLI locale pour vous connecter à l'instance via Session Manager.

    Pour plus d'informations, consultez Se connecter à l'aide de la CLI Session Manager. La figure suivante illustre ce processus.

    image

Gestion des permissions

Pour qu'un utilisateur RAM puisse se connecter à une instance via Session Manager, il doit disposer des permissions requises. Le tableau suivant détaille ces permissions.

La colonne Action correspond à l'action définie dans une politique RAM.

Action

Description

ecs:StartTerminalSession

(Obligatoire) Se connecter à une instance ECS via Session Manager.

ecs:DescribeCloudAssistantStatus

Vérifier si Cloud Assistant Agent est installé sur une instance ECS. Le système vérifie cette permission avant toute connexion à une instance dans la console ECS.

ecs:DescribeUserBusinessBehavior

Vérifier si Session Manager est activé. Le système vérifie cette permission avant toute connexion à une instance dans la console ECS.

ecs:ModifyCloudAssistantSettings

Activer ou désactiver Session Manager. Si Session Manager est déjà activé pour le compte Alibaba Cloud actuel, cette permission n'est pas nécessaire.

Exemples de politiques de permissions

Exemple 1 : Utiliser Session Manager dans la console ECS

Si un utilisateur RAM souhaite utiliser Session Manager pour se connecter à une instance dans la console ECS, il doit se voir attribuer les permissions suivantes conformément au principe du moindre privilège :

  • ecs:StartTerminalSession : Permission de se connecter à une instance via Session Manager. Configurez le paramètre Resource pour spécifier les instances ECS auxquelles l'utilisateur RAM peut se connecter via Session Manager.

  • ecs:DescribeCloudAssistantStatus : Permission de vérifier si Cloud Assistant Agent doit être installé sur une instance ECS. Le système vérifie cette permission avant toute connexion à une instance dans la console ECS.

  • ecs:DescribeUserBusinessBehavior : Permission de vérifier si Session Manager est activé. Le système vérifie cette permission avant toute connexion à une instance dans la console ECS.

  • (Facultatif) ecs:ModifyCloudAssistantSettings : Permission d'activer ou de désactiver Session Manager. Si Session Manager est déjà activé pour le compte Alibaba Cloud actuel, cette permission n'est pas nécessaire.

Exemple de politique personnalisée :

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ecs:StartTerminalSession",
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "ecs:DescribeUserBusinessBehavior",
        "ecs:DescribeCloudAssistantStatus",
        "ecs:ModifyCloudAssistantSettings"
      ],
      "Resource": "*"
    }
  ]
}

Pour savoir comment attribuer des permissions à un utilisateur RAM, consultez Gérer les permissions des utilisateurs RAM.

Exemple 2 : Se connecter à une instance à l'aide d'ali-instance-cli

Lorsque vous utilisez ali-instance-cli, vous devez spécifier la paire AccessKey et le jeton Security Token Service (STS) de l'utilisateur RAM. Lors de la connexion à une instance via Session Manager, le système vérifie si l'utilisateur RAM détenteur de ces identifiants possède également la permission ecs:StartTerminalSession.

Lors de la configuration d'une politique personnalisée, définissez le paramètre Resource pour spécifier les instances ECS auxquelles l'utilisateur RAM peut se connecter via Session Manager. Exemple de politique :

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ecs:StartTerminalSession",
      "Resource": "*"
    }
  ]
}

Pour plus d'informations sur les paramètres CredentialsURI et STS Token, consultez Créer une paire AccessKey et Qu'est-ce que Security Token Service (STS) ?

Pour savoir comment attribuer des permissions à un utilisateur RAM, consultez Gérer les permissions des utilisateurs RAM.

**Exemple 3 : Créer une politique RAM pour accorder à des utilisateurs spécifiques les permissions d'utiliser Session Manager

  • Accordez aux utilisateurs RAM nommés testUser1 et testUser2 les permissions d'utiliser Session Manager.

    {
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "ecs:StartTerminalSession"
          ],
          "Resource": [
            "acs:ecs:*:*:instance/*"
          ],
          "Condition": {
            "StringEquals": {
              "ecs:SessionStartAs": [
                "testUser1",
                "testUser2"
              ]
            }
          }
        }
          ],
      "Version": "1"
    }
  • Révoquez les permissions d'utilisation de Session Manager pour les utilisateurs RAM nommés testUser1 et testUser2.

    {
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "ecs:StartTerminalSession"
          ],
          "Resource": [
            "acs:ecs:*:*:instance/*"
          ],
          "Condition": {
            "StringNotEqualsIgnoreCase": {
              "ecs:SessionStartAs": [
                "testUser1",
                "testUser2"
              ]
            }
          }
        }
          ],
      "Version": "1"
    }

    Pour savoir comment attribuer des permissions à un utilisateur RAM, consultez Gérer les permissions des utilisateurs RAM.

Paramètres du groupe de sécurité

Pour vous connecter à une instance ECS via Session Manager, assurez-vous que Cloud Assistant Agent s'exécutant sur l'instance ECS est bien connecté au serveur Cloud Assistant en ajoutant les règles suivantes à une règle de groupe de sécurité sortante :

Contrairement aux méthodes de connexion telles que SSH et RDP (Remote Desktop Protocol), Cloud Assistant Agent initie activement une connexion WebSocket vers le serveur Session Manager. Il suffit donc d'ouvrir le port WebSocket sortant du serveur Cloud Assistant dans une règle de sécurité. Pour comprendre le fonctionnement de Session Manager, reportez-vous à la section Fonctionnement de Session Manager de cette rubrique.
Important
  • Si vous utilisez des groupes de sécurité de base, y compris le groupe de sécurité par défaut, tout le trafic sortant est autorisé. Aucune configuration supplémentaire n'est requise.

  • Si vous utilisez un groupe de sécurité avancé, tout le trafic sortant est refusé par défaut. Vous devez donc configurer les règles appropriées. Le tableau suivant décrit ces règles. Pour plus d'informations sur les groupes de sécurité, consultez Groupes de sécurité de base et avancés.

Pour savoir comment ajouter des règles à un groupe de sécurité, consultez Ajouter une règle de groupe de sécurité.

Action

Priorité

Type de protocole

Plage de ports

Objet d'autorisation

Description

Allow

1

Custom TCP

443

100.100.0.0/16

Ce port permet d'accéder au serveur Cloud Assistant.

Allow

1

Custom TCP

443

100.0.0.0/8

Ce port permet d'accéder au serveur hébergeant le package d'installation de Cloud Assistant Agent lors de l'installation ou de la mise à jour de Cloud Assistant Agent.

Allow

1

Custom UDP

53

0.0.0.0/0

Ce port permet la résolution des noms de domaine.

Si vous comptez utiliser exclusivement Session Manager pour vous connecter à une instance, supprimez du groupe de sécurité les règles entrantes autorisant le port SSH (22 par défaut) et le port RDP (3389 par défaut) afin de renforcer la sécurité de l'instance ECS.

Intégrer la fonctionnalité Session Manager dans vos applications pour la connexion aux instances

Pour obtenir le code complet permettant de se connecter à une instance ECS ou à une instance gérée via Session Manager, consultez cloud-assistant-starter. Le fichier AxtSession.tsx de ce projet contient un exemple de code pour appeler l'opération StartTerminalSession afin d'obtenir WebSocketURL et d'établir une connexion. Après avoir porté ce code dans votre application d'entreprise, vous pourrez utiliser Session Manager pour vous connecter aux instances.