Lorsque vous créez une instance ECS, utilisez des identifiants de connexion nouveaux et uniques, tels qu'une paire de clés SSH. Évitez d'utiliser tout identifiant de connexion prédéfini dans une image personnalisée.
Risques pour la sécurité
Lorsque vous créez une nouvelle instance ECS à partir d'une image personnalisée, celle-ci hérite de tous les mots de passe ou clés SSH prédéfinis contenus dans l'image. Les images publiques ne contiennent pas de mots de passe par défaut. Ces identifiants, souvent définis par les créateurs d'images par commodité lors du développement ou des tests, présentent des risques de sécurité importants :
Exposition incontrôlée des identifiants : Les images personnalisées proviennent de diverses sources et leurs mots de passe ou clés par défaut intégrés ont pu être distribués à plusieurs utilisateurs, voire publiés accidentellement dans des dépôts de code publics ou des forums techniques. Les attaquants analysent en permanence les plateformes cloud à la recherche de ces identifiants connus et publics. Une connexion réussie leur donne un contrôle total sur votre serveur.
Contournement des mesures de sécurité : Si un attaquant obtient les identifiants prédéfinis, il peut contourner toutes les autres protections de sécurité et se connecter directement au système.
Bonnes pratiques
-
Lorsque vous créez une image personnalisée, n'incluez pas de mots de passe ou de clés SSH prédéfinis.
Supprimez les mots de passe de tous les utilisateurs (
passwd -d <username>).Assurez-vous que le fichier
/root/.ssh/authorized_keyset les fichiers correspondants des autres utilisateurs sont vides.Effacez l'historique bash (
history -c && history -w).
-
Lorsque vous créez une instance à partir d'une image personnalisée, évitez d'utiliser le mot de passe prédéfini de l'image.
Cette action reconfigure les identifiants de connexion (mot de passe ou paire de clés) uniquement pour l'utilisateur root ou ecs-user. Elle n'efface pas les identifiants de connexion des autres utilisateurs. Pour les effacer, suivez les étapes décrites dans la section Correction.
Instances Linux
Lorsque vous créez une instance à partir d'une image personnalisée, utilisez une paire de clés au lieu du mot de passe prédéfini de l'image.
Console
Lorsque vous créez une instance à partir d'une image personnalisée ou partagée, évitez de sélectionner Use Predefined Password. Utilisez plutôt une Key Pair.
Dans la section Management Settings, pour Logon Credentials, sélectionnez Key Pair. Le champ Login Name est défini par défaut sur root. Sélectionnez une paire de clés existante dans la liste déroulante Key Pair, ou cliquez sur Create Key Pair pour en créer une nouvelle.
API
Lorsque vous appelez l'opération RunInstances ou CreateInstance, définissez le paramètre
PasswordInheritsurfalse.Instances Windows
Lorsque vous créez une instance à partir d'une image personnalisée ou partagée, évitez de sélectionner Use Predefined Password. Définissez un mot de passe personnalisé robuste. Les paires de clés ne sont pas prises en charge.
Dans la section Logon Credentials, sélectionnez l'onglet Custom Password. Le nom de connexion est
administrator. Le mot de passe doit comporter entre 8 et 30 caractères et contenir des lettres majuscules, des lettres minuscules et des chiffres. Il peut également contenir les caractères spéciaux suivants :()~!@#$%^&*-_+=|{}[];'<>,.?/. N'utilisez pas de mots de passe courants et publiquement connus tels queP@ssw0rd.
Conformité
Vérification des instances non conformes
Connectez-vous à une instance Linux à l'aide de Workbench pour effectuer les vérifications suivantes.
-
Vérifiez la présence de comptes d'utilisateurs suspects : Consultez le fichier
/etc/passwdpour identifier les utilisateurs inconnus que vous n'avez pas créés ou qui ne sont pas des utilisateurs système par défaut.cat /etc/passwd -
Vérifiez les clés publiques autorisées SSH : Examinez les fichiers
authorized_keyssitués dans des emplacements système critiques pour voir quelles clés publiques sont configurées pour une connexion sans mot de passe.# Check the authorized public keys for the root user. cat /root/.ssh/authorized_keys # Check the authorized public keys for another user, such as 'admin'. cat /home/admin/.ssh/authorized_keysExaminez attentivement les clés publiques présentes dans les fichiers afin de vous assurer qu'elles correspondent aux clés privées que vous utilisez. Supprimez immédiatement toute clé publique suspecte ou non reconnue.
Blocage : Empêcher l'utilisation de mots de passe prédéfinis
Au niveau de l'organisation ou du compte, utilisez une politique RAM pour bloquer proactivement la création d'instances utilisant le mot de passe prédéfini d'une image.
-
Pour les utilisateurs professionnels :
-
Connectez-vous à la console Resource Directory à l'aide de votre compte Alibaba Cloud. Dans le volet de navigation de gauche, cliquez sur Control Policies. Ensuite, créez une politique d'autorisation personnalisée avec le contenu JSON suivant.
Cette politique refuse l'autorisation d'hériter du mot de passe par défaut d'une image lors de la création d'une instance ou du remplacement d'un disque système.
{ "Version": "1", "Statement": [ { "Action": [ "ecs:RunInstances", "ecs:CreateInstance", "ecs:ReplaceSystemDisk" ], "Resource": "*", "Condition": { "Bool": { "ecs:PasswordInherit": [ "true" ] } }, "Effect": "Deny" } ] } Dans Resource Directory, associez la politique au nœud approprié. La politique est alors appliquée à tous les comptes sous ce nœud.
-
-
Pour les utilisateurs non professionnels :
Connectez-vous à la console RAM à l'aide de votre compte Alibaba Cloud. Dans le volet de navigation de gauche, cliquez sur Permission Policy et créez une politique personnalisée avec le même contenu que dans la section précédente.
Accordez des autorisations en associant des politiques aux utilisateurs RAM, aux groupes d'utilisateurs RAM ou aux rôles RAM.
Correction : Réparer les instances avec des mots de passe prédéfinis
-
Définissez de nouveaux identifiants de connexion
-
Instances Linux : Associez une nouvelle paire de clés
Accédez à la page ECS console - Instances, sélectionnez une région et un groupe de ressources, puis cliquez sur l'ID de l'instance cible pour ouvrir sa page de détails.
Cliquez sur , sélectionnez une paire de clés existante, puis cliquez sur OK. La nouvelle paire de clés prend effet après le redémarrage de l'instance.
-
Instances Windows : Réinitialisez le mot de passe
Accédez à la page ECS console - Instances, sélectionnez une région et un groupe de ressources, puis cliquez sur l'ID de l'instance cible pour accéder à sa page de détails.
Cliquez sur , définissez un mot de passe robuste comme indiqué, puis cliquez sur OK.
-
-
Supprimez les identifiants prédéfinis d'origine (Linux)
Connectez-vous à l'instance ECS avec vos nouveaux identifiants. Utilisez la nouvelle paire de clés ou le nouveau mot de passe que vous venez de configurer.
-
Supprimez les anciennes clés publiques : Inspectez attentivement tous les fichiers
authorized_keyset effacez toutes les anciennes clés publiques.# Edit the authorized_keys file for the root user and delete all unwanted public keys. vi /root/.ssh/authorized_keys # Perform the same operation for all other users. vi /home/<username>/.ssh/authorized_keys -
Désactivez l'authentification par mot de passe : Après avoir confirmé que vous pouvez vous connecter avec succès à l'aide de la paire de clés, modifiez la configuration SSH pour désactiver l'authentification par mot de passe. Cela garantit que seule l'authentification par paire de clés est autorisée.
# 1. Edit the SSH configuration file. sudo vi /etc/ssh/sshd_config # 2. Find and modify the following lines. PasswordAuthentication no PubkeyAuthentication yes # 3. Restart the SSH service for the changes to take effect. sudo systemctl restart sshd
-
Nettoyez les utilisateurs et fichiers système inutiles
Consultez les fichiers
/etc/passwdet/etc/shadowpour supprimer tous les comptes d'utilisateurs inutiles laissés par le processus de création de l'image. Supprimez également tous les fichiers temporaires ou scripts susceptibles de contenir des informations sensibles, telles que d'anciens mots de passe ou clés.