Utilisez OpenSSH (macOS/Windows) ou Xshell (Windows) pour vous connecter à une instance ECS Linux à l'aide d'un mot de passe ou d'une paire de clés.
Pour une expérience plus simple directement dans le navigateur, sans saisie de mot de passe, utilisez plutôt Workbench.
Avant de vous connecter
L'instance exécute Linux.
L'instance dispose d'une adresse IP publique statique ou d'une Elastic IP Address (EIP).
Méthode 1 : Utiliser un client OpenSSH (ligne de commande)
OpenSSH est le client SSH standard intégré à macOS et aux versions récentes de Windows. Il permet d'établir des connexions en ligne de commande vers des serveurs distants.
Prérequis
Adresse IP publique de l'instance : Dans ECS console - Instances, ouvrez la page des détails de l'instance et repérez le champ Public IP Address dans la section Configuration Information.
Identifiants de connexion : Définissez un mot de passe ou associez une paire de clés à l'instance.
Groupe de sécurité : Ajoutez une règle entrante pour autoriser l'accès SSH sur le port 22 depuis votre adresse IP locale.
Procédure
Windows 10/11
Se connecter avec un mot de passe
-
Ouvrez PowerShell.
Appuyez sur
Win+R, saisissezpowershell, puis appuyez surEnter. -
Connectez-vous à l'instance.
ssh <instance_username>@<instance_public_IP_address>Exemple :
ssh root@47.98.xxx.xxx -
Vérifiez l'empreinte de l'hôte (uniquement lors de la première connexion).
Lors de la première connexion, le client SSH affiche l'empreinte de la clé hôte pour vérification.
Par mesure de sécurité, obtenez l'empreinte de la clé hôte et comparez-la avec celle affichée . Si elles ne correspondent pas, vous êtes peut-être victime d'une attaque de type « man-in-the-middle ». Basculez vers un réseau sécurisé et réessayez.
Après avoir confirmé l'empreinte, saisissez
yeset appuyez sur Entrée.The authenticity of host '47.98.xxx.xxx (47.98.xxx.xxx)' can't be established. ED25519 key fingerprint is SHA256:AbCdEf123456... This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? -
Saisissez le mot de passe.
Aucun caractère ne s'affiche à l'écran pendant la saisie. Appuyez sur
Enterune fois terminé.En cas de succès, un message de bienvenue s'affiche et l'invite de commande devient
[<username>@<hostname> ~]$.Welcome to Alibaba Cloud Elastic Compute Service ! [root@Connect-Instance-Example ~]#
Se connecter avec une paire de clés
-
Ouvrez PowerShell.
Appuyez sur
Win+R, saisissezpowershell, puis appuyez surEnter. -
Connectez-vous à l'instance.
ssh -i /path/to/private_key.pem <instance_username>@<instance_public_IP_address>Exemple :
ssh -i /path/to/private_key.pem root@47.98.xxx.xxx. Dans cette commande,/path/to/private_key.pemcorrespond au chemin d'accès à votre fichier de clé privée, par exempleC:\Users\Administrator\Downloads\private_key.pem. -
Vérifiez l'empreinte de l'hôte (uniquement lors de la première connexion).
Lors de la première connexion, le client SSH affiche l'empreinte de la clé hôte pour vérification.
Par mesure de sécurité, obtenez l'empreinte de la clé hôte et comparez-la avec celle affichée . Si elles ne correspondent pas, vous êtes peut-être victime d'une attaque de type « man-in-the-middle ». Basculez vers un réseau sécurisé et réessayez.
Après avoir confirmé l'empreinte, saisissez
yeset appuyez surEnter.The authenticity of host '47.98.xxx.xxx (47.98.xxx.xxx)' can't be established. ED25519 key fingerprint is SHA256:AbCdEf123456... This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? -
Authentifiez-vous et accédez à l'instance.
En cas de succès, un message de bienvenue s'affiche et l'invite de commande devient
[<username>@<hostname> ~]$.Welcome to Alibaba Cloud Elastic Compute Service ! [root@Connect-Instance-Example ~]#
macOS
Se connecter avec un mot de passe
Ouvrez Terminal.
-
Connectez-vous à l'instance.
ssh <instance_username>@<instance_public_IP_address>Exemple :
ssh root@47.98.xxx.xxx -
Vérifiez l'empreinte de l'hôte (uniquement lors de la première connexion).
Lors de la première connexion, le client SSH affiche l'empreinte de la clé hôte pour vérification.
Par mesure de sécurité, obtenez l'empreinte de la clé hôte et comparez-la avec celle affichée . Si elles ne correspondent pas, vous êtes peut-être victime d'une attaque de type « man-in-the-middle ». Basculez vers un réseau sécurisé et réessayez.
Après avoir confirmé l'empreinte, saisissez
yeset appuyez surEnter.The authenticity of host '47.98.xxx.xxx (47.98.xxx.xxx)' can't be established. ED25519 key fingerprint is SHA256:AbCdEf123456... This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? -
Saisissez le mot de passe.
Aucun caractère ne s'affiche à l'écran pendant la saisie. Appuyez sur
Enterune fois terminé.En cas de succès, un message de bienvenue s'affiche et l'invite de commande devient
[<username>@<hostname> ~]$.Welcome to Alibaba Cloud Elastic Compute Service ! [root@Connect-Instance-Example ~]#
Se connecter avec une paire de clés
Ouvrez Terminal.
-
Connectez-vous à l'instance.
# chmod 400: Sets read-only permissions for the owner of the private key file. This is a security requirement of the SSH client. chmod 400 /path/to/private_key.pem ssh -i /path/to/private_key.pem <instance_username>@<instance_public_IP_address>Exemple :
ssh -i /path/to/private_key.pem root@47.98.xxx.xxx. Dans cette commande,/path/to/private_key.pemcorrespond au chemin d'accès à votre fichier de clé privée. -
Vérifiez l'empreinte de l'hôte (uniquement lors de la première connexion).
Lors de la première connexion, le client SSH affiche l'empreinte de la clé hôte pour vérification.
Par mesure de sécurité, obtenez l'empreinte de la clé hôte et comparez-la avec celle affichée . Si elles ne correspondent pas, vous êtes peut-être victime d'une attaque de type « man-in-the-middle ». Basculez vers un réseau sécurisé et réessayez.
Après avoir confirmé l'empreinte, saisissez
yeset appuyez surEnter.The authenticity of host '47.98.xxx.xxx (47.98.xxx.xxx)' can't be established. ED25519 key fingerprint is SHA256:AbCdEf123456... This key is not known by any other names. Are you sure you want to continue connecting (yes/no/[fingerprint])? -
Authentifiez-vous et accédez à l'instance.
En cas de succès, un message de bienvenue s'affiche et l'invite de commande devient
[<username>@<hostname> ~]$.Welcome to Alibaba Cloud Elastic Compute Service ! [root@Connect-Instance-Example ~]#
Méthode 2 : Utiliser le client Xshell (Windows uniquement)
Xshell est un client SSH pour Windows dédié à la gestion des serveurs Linux.
Prérequis
Xshell : Téléchargez et installez la dernière version du client depuis le site officiel de Xshell.
Adresse IP publique de l'instance : Dans ECS console - Instances, ouvrez la page des détails de l'instance et repérez le champ Public IP Address dans la section Configuration Information.
Identifiants de connexion : Définissez un mot de passe ou associez une paire de clés à l'instance.
Groupe de sécurité : Ajoutez une règle entrante pour autoriser l'accès SSH sur le port 22 depuis votre adresse IP locale.
Procédure
-
Démarrez Xshell et créez une session.
Ouvrez l'application Xshell.
Dans la fenêtre Sessions qui s'affiche, cliquez sur New. Vous pouvez également sélectionner dans la barre de menus.
-
Configurez la connexion.
Dans le volet de navigation de gauche, cliquez sur Connection et configurez les éléments suivants :
Name : Un nom descriptif pour la session, par exemple My-Web-Server.
Protocol : Laissez la valeur par défaut SSH.
Host : L'adresse IP publique de l'instance.
Port Number : Laissez la valeur par défaut 22.
-
Configurez l'authentification utilisateur.
Dans le volet de navigation de gauche, cliquez sur Authentication.
Se connecter avec un mot de passe
Method : Sélectionnez Password.
User Name : Le nom d'utilisateur de connexion, par exemple root.
Password : Le mot de passe de connexion.
Se connecter avec une paire de clés
User Name : Le nom d'utilisateur de connexion, par exemple root.
-
Method : Sélectionnez Public Key et configurez la clé utilisateur comme suit :
Cliquez sur Settings....
Sélectionnez l'option Key File. Cliquez sur ... à côté de User Key, puis sur Import... et sélectionnez le fichier de clé privée
.pemstocké localement.Une fois l'importation terminée, sélectionnez la clé et cliquez sur OK.
(Facultatif) Si votre fichier de clé est protégé par un mot de passe, saisissez-le dans le champ Password.
-
Connectez-vous à l'instance.
Cliquez sur Connect.
-
Vérifiez la clé hôte (uniquement lors de la première connexion).
Lors de la première connexion, Xshell affiche un avertissement de sécurité SSH Security Warning contenant l'empreinte de la clé hôte.
Par mesure de sécurité, obtenez l'empreinte de la clé hôte et comparez-la avec celle affichée . Si elles ne correspondent pas, vous êtes peut-être victime d'une attaque de type « man-in-the-middle ». Basculez vers un réseau sécurisé et réessayez.
Après vérification, cliquez sur Accept and Save.
-
Accédez à l'instance.
L'invite de commande indique que la connexion a été établie avec succès.
Welcome to Alibaba Cloud Elastic Compute Service ! [root@Connect-Instance-Example ~]#
Bonnes pratiques pour la production
Renforcez la sécurité de vos connexions SSH dans les environnements de production.
-
Vérifiez l'empreinte de l'hôte pour prévenir les attaques de type « man-in-the-middle »
Lors de la première connexion, vérifiez l'empreinte de la clé hôte afin de confirmer que vous vous connectez bien à l'instance correcte.
-
Désactivez la connexion par mot de passe et imposez l'authentification par paire de clés
L'authentification par paire de clés est plus sécurisée que l'utilisation de mots de passe et réduit les risques d'attaques par force brute.
Associez une paire de clés à votre instance.
Connectez-vous à l'instance, modifiez le fichier
/etc/ssh/sshd_configet définissez la valeur dePasswordAuthenticationsurno. Redémarrez ensuite le service SSH.
-
Modifiez le port SSH par défaut
Le remplacement du port 22 par un port non standard (par exemple 2222) réduit l'exposition aux analyses automatisées.
Autorisez le nouveau port : Ajoutez une règle entrante pour autoriser le trafic sur le nouveau port.
Modifiez le port SSH : Connectez-vous à l'instance, éditez le fichier
/etc/ssh/sshd_configet remplacez#Port 22parPort 2222. Redémarrez ensuite le service SSH.Connectez-vous via le nouveau port : Spécifiez le port à l'aide de l'option
-p, par exemple :ssh -p 2222 username@instance_ip.
-
Autorisez l'accès uniquement depuis des adresses IP de confiance
Modifiez les règles du groupe de sécurité afin de n'autoriser l'accès SSH que depuis des adresses IP de confiance.
FAQ
-
Comment configurer une règle de groupe de sécurité pour le port 22 ?
Dans le groupe de sécurité de l'instance, ajoutez une règle avec les paramètres suivants :
Action
Protocol
Source
Destination (This Instance)
Allow
Custom TCP
L'adresse IP publique de votre client local.
ImportantL'utilisation de
0.0.0.0/0autorise l'accès au port depuis n'importe quelle adresse IP, ce qui présente un risque de sécurité.SSH(22)
Si vous avez modifié le port SSH, utilisez le nouveau numéro de port.
-
Comment vérifier l'empreinte de la clé hôte de l'instance ?
Lors de la première connexion, le client SSH vous invite à vérifier l'empreinte de la clé hôte.
Dans la console
Accédez à ECS console - Instances. Sélectionnez une région et un groupe de ressources.
-
Repérez l'instance et cliquez sur . Recherchez la section
BEGIN SSH HOST KEY FINGERPRINTSpour afficher les empreintes.########################################################## -----BEGIN SSH HOST KEY FINGERPRINTS----- 1024 SHA256:VtyWxxx xxx xxx xxx xxx xxx xxx xxx xxx KezM root@ixxx xxx xxx xxx xxx KZ (DSA) 256 SHA256:kCxxx xxx xxx xxx xxx xxx xxx xxx 0E root@iZxxx xxx xxx xxx KZ (ECDSA) 256 SHA256:PExxx xxx xxx xxx xxx xxx xxx eQ root@iZbxxx xxx xxx xxx KZ (ED25519) 3072 SHA256:Ymxxx xxx xxx xxx xxx xxx xxx DkE root@iZxxx xxx xxx xxx xZ (RSA) -----END SSH HOST KEY FINGERPRINTS----- ##########################################################Vérifiez que l'empreinte affichée par votre client SSH correspond exactement à l'une de celles présentes dans la sortie. Une divergence peut indiquer une attaque de type « man-in-the-middle ».
Si cette section est absente, connectez-vous à l'instance pour consulter l'empreinte.
Dans l'instance
Connectez-vous à l'instance via Workbench et exécutez la commande suivante :
for f in /etc/ssh/ssh_host_*_key.pub; do ssh-keygen -l -f "$f"; doneExemple de sortie :
1024 SHA256:9C******co root@Connect-Instance-Example (DSA) 256 SHA256:u6******SU root@Connect-Instance-Example (ECDSA) 256 SHA256:iQ******jg root@Connect-Instance-Example (ED25519) 3072 SHA256:8R******64 root@Connect-Instance-Example (RSA)Vérifiez que l'empreinte affichée par votre client SSH correspond exactement à l'une de celles présentes dans la sortie. Une divergence peut indiquer une attaque de type « man-in-the-middle ».
-
Comment simplifier la commande de connexion grâce à un fichier de configuration SSH ?
Créez un fichier de configuration SSH
configsur votre machine locale pour définir des alias serveur.-
Localisez ou créez le fichier de configuration.
Windows 10/11
Chemin par défaut :
C:\Users\YourUsername\.ssh\config. Créez le fichier s'il n'existe pas.Remplacez
YourUsernamepar votre nom d'utilisateur Windows actuel.macOS
Chemin par défaut :
~/.ssh/config. Créez le fichier s'il n'existe pas. -
Modifiez le fichier de configuration et ajoutez les informations de l'instance.
Ouvrez le fichier
configet ajoutez un blocHostpour chaque serveur.# Configure an alias "web-server" for the web server Host web-server HostName 47.98.xxx.xxx User root Port 22 # (Optional) If you use a key pair to log on, specify the private key path. Ignore this if you use a password. IdentityFile /path/to/your/private_key.pem # You can add more configurations for other servers Host other-server HostName 8.123.xxx.xxx User ecs-user Port 2222 IdentityFile ~/.ssh/another_key.pemDescription des paramètres :
Host : Un alias personnalisé.
HostName : L'adresse IP publique.
User : Le nom d'utilisateur de connexion.
Port : Le port SSH (par défaut : 22).
IdentityFile : Le chemin d'accès au fichier de clé privée.
-
Connectez-vous en utilisant l'alias.
Enregistrez le fichier
config. Connectez-vous en utilisant l'alias :# Connect directly using the alias. SSH automatically reads the IP address, username, and key information from the config file. ssh web-server
-
-
Pourquoi obtiens-je l'erreur
Connection timed out?Le client n'a pas pu atteindre le serveur. Vérifiez les points suivants :
L'adresse IP publique est correcte.
Le groupe de sécurité autorise le trafic sur le port requis.
L'instance est en cours d'exécution (état Running).
Utilisez l'outil ECS console - Diagnostics pour diagnostiquer les éventuels problèmes.
-
Pourquoi obtiens-je l'erreur
Permission denied, please try again?Le serveur a rejeté votre mot de passe. Vérifiez les points suivants :
Réinitialisez le mot de passe dans la console et réessayez.
Utilisez l'outil ECS console - Diagnostics pour diagnostiquer les éventuels problèmes.
-
Pourquoi obtiens-je l'erreur
Permission denied (publickey)?Le serveur a rejeté votre clé. Vérifiez les points suivants :
Réassociez la paire de clés dans la console et réessayez.
Le chemin d'accès au fichier de clé privée est correct et correspond à la paire de clés associée à l'instance.
(Sous macOS) Les autorisations du fichier de clé privée sont définies sur
400ou600.Utilisez l'outil ECS console - Diagnostics pour diagnostiquer les éventuels problèmes.
-
Pourquoi obtiens-je l'erreur
WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!?Cette fonctionnalité de sécurité SSH se déclenche lorsque la clé hôte du serveur change. Cela peut se produire après un changement de disque système, une réinstallation du système d'exploitation ou la suppression des fichiers de clés hôtes.
Solution : Vérifiez l'empreinte de la clé hôte. Si elle est correcte, supprimez l'ancienne empreinte :
ssh-keygen -R <instance_public_IP_address>