Cette rubrique peut contenir des informations relatives à des produits tiers. Ces informations sont fournies à titre indicatif uniquement. Alibaba Cloud n'offre aucune garantie, explicite ou implicite, concernant les performances et la fiabilité des produits tiers. Alibaba Cloud ne saurait être tenue responsable des impacts potentiels résultant d'opérations impliquant ces produits.
Description du problème
Lorsque vous vous connectez à une instance Elastic Compute Service (ECS) Linux via le protocole SSH (Secure Shell), la connexion échoue même si vous saisissez le mot de passe correct. Dans ce cas, il est possible que vous ne puissiez pas vous connecter, que ce soit via le terminal de gestion ou un client SSH. Le journal sécurisé affiche des messages d'erreur similaires aux suivants :
sshd[1199]: pam_listfile(sshd:auth): Refused user root for service sshd
sshd[1199]: Failed password for root from 192.X.X.1 port 22 ssh2
sshd[1204]: Connection closed by 192.X.X.2
Cause
L'échec de la connexion est dû à une politique de contrôle d'accès liée au module PAM (Pluggable Authentication Modules), spécifiquement pam_listfile.so.
Solution
Avant d'effectuer des opérations à risque, telles que la modification d'une instance ou de ses données, évaluez les mécanismes de reprise après sinistre et de tolérance aux pannes de l'instance afin de garantir la sécurité des données.
Avant de modifier la configuration ou les données des instances (par exemple, les instances ECS et RDS), créez des snapshots ou activez des fonctionnalités telles que la sauvegarde des journaux RDS.
Si vous avez accordé des autorisations ou soumis des informations de sécurité, telles que des identifiants de connexion, sur la plateforme Alibaba Cloud, modifiez-les sans délai.
Les étapes suivantes expliquent comment résoudre le problème en vérifiant la configuration du module PAM, utilisé pour le contrôle d'accès sous Linux. Les configurations et instructions Linux présentées dans cette rubrique sont basées sur le système d'exploitation CentOS 6.5 64 bits. La configuration peut varier selon les versions du système d'exploitation. Pour plus d'informations, consultez la documentation officielle de votre système d'exploitation.
-
Connectez-vous à l'instance et utilisez une commande telle que
catpour afficher le fichier de configuration PAM correspondant. Les fichiers de configuration sont décrits ci-dessous.Fichier
Description
/etc/pam.d/login
Fichier de configuration pour la console (terminal de gestion)
/etc/pam.d/sshd
Fichier de configuration pour la connexion SSH
/etc/pam.d/system-auth
Fichier de configuration système global
Vérifiez qu'une configuration similaire à la suivante existe.
auth required pam_listfile.so item=user sense=allow file=/etc/ssh/whitelist onerr=fail -
Ces politiques permettent d'améliorer la sécurité du serveur. Déterminez s'il convient de modifier la configuration en trouvant un équilibre entre sécurité et facilité d'utilisation. Avant toute modification, sauvegardez le fichier. Les paramètres de la politique sont décrits ci-dessous.
item : Définit le type d'objet pour le contrôle d'accès. Les valeurs valides incluent tty, user, rhost, ruser, group et shell.
sense : Spécifie la méthode de contrôle pour les éléments correspondant aux critères définis dans le fichier de configuration. Les valeurs valides sont
allowetdeny.allowindique une liste d'autorisation.denyindique une liste de blocage.file : Indique le chemin complet du fichier de configuration.
onerr : Définit la valeur de retour par défaut en cas d'erreur, comme l'impossibilité d'ouvrir le fichier de configuration.
-
Utilisez un éditeur tel que
vipour supprimer la configuration de la politique. Vous pouvez également mettre en commentaire la configuration de la politique en ajoutant un dièse (#) au début de la ligne, comme illustré ci-dessous.#auth required pam_listfile.so item=user sense=allow file=/etc/ssh/whitelist onerr=fail Connectez-vous à nouveau au serveur pour confirmer que le problème est résolu.
Informations complémentaires
PAM (Pluggable Authentication Modules) est un mécanisme d'authentification développé par Sun Microsystems. Il utilise des bibliothèques de liaison dynamique et un ensemble standard d'API pour dissocier les services de leurs méthodes d'authentification. Cette séparation permet aux administrateurs système de configurer différentes méthodes d'authentification pour différents services sans modifier les programmes de service. Elle simplifie également l'ajout de nouvelles méthodes d'authentification au système.
Chaque application utilisant le module PAM dispose d'un fichier de configuration correspondant dans le dossier /etc/pam.d. Par exemple, le fichier de configuration pour la commande
loginest /etc/pam.d/login. Des politiques spécifiques sont configurées dans ces fichiers.Pour plus d'informations sur pam_listfile, consultez pam_listfile.
Si le problème persiste, consultez le Guide de dépannage pour l'échec de la connexion à distance à une instance Linux via SSH pour une analyse approfondie.
S'applique à
Elastic Compute Service