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.
Étape 8 : (Facultatif) Autoriser et contrôler les autorisations pour les connexions SSH via Session Manager
Vous pouvez permettre aux utilisateurs de votre Compte AWS d'utiliser l'AWS Command Line Interface (AWS CLI) pour établir des connexions Secure Shell (SSH) avec les nœuds gérés à l'aide de AWS Systems Manager Session Manager. Les utilisateurs qui se connectent à l'aide de SSH peuvent également copier des fichiers entre leurs ordinateurs locaux et les nœuds gérés à l'aide de SCP (Secure Copy Protocol). Vous pouvez utiliser cette fonctionnalité pour vous connecter aux nœuds gérés sans avoir à ouvrir de ports entrants ou à maintenir des hôtes bastions.
Après avoir autorisé des connexions SSH, vous pouvez utiliser des politiques AWS Identity and Access Management (IAM) pour autoriser ou empêcher explicitement des utilisateurs, des groupes ou des rôles d'établir des connexions SSH en utilisant Session Manager.
Note
La journalisation n'est pas disponible pour les sessions Session Manager qui se connectent via le réacheminement de port ou SSH. Cela est dû au fait que SSH chiffre toutes les données de session et que Session Manager sert uniquement de tunnel pour les connexions SSH.
Rubriques
Autorisation des connexions SSH pour Session Manager
Suivez les étapes suivantes pour autoriser les connexions SSH via Session Manager sur un nœud géré.
Pour autoriser des connexions SSH pour Session Manager
-
Sur le nœud géré vers lequel vous souhaitez activer les connexions SSH, procédez comme suit :
-
Assurez-vous que SSH s'exécute sur le nœud géré. (Vous pouvez fermer les ports entrants sur le nœud.)
-
Assurez-vous que SSM Agent 2.3.672.0 ou une version ultérieure est installé sur le nœud géré.
Pour plus d'informations sur l'installation ou la mise à jour de SSM Agent sur un nœud géré, consultez les rubriques suivantes :
Note
Pour utiliser Session Manager avec des serveurs et des machines virtuelles sur site activés en tant que nœuds gérés, utilisez le niveau d'instances avancées. Pour de plus amples informations, sur les instances avancées, veuillez consulter Configuration des niveaux d'instance.
-
-
Sur l'ordinateur local à partir duquel vous souhaitez vous connecter à un nœud géré à l'aide de SSH, procédez comme suit :
-
Assurez-vous que la version 1.1.23.0 ou une version ultérieure du plug-in Session Manager est installée.
Pour plus d'informations sur l'installation du plug-in Session Manager, consultez Installez le Session Manager plugin pour AWS CLI.
-
Mettez à jour le fichier de configuration SSH pour activer l'exécution d'une commande de proxy qui démarre une session Session Manager et transfère toutes les données via la connexion.
Linux et macOS
Astuce
Le fichier de configuration SSH est généralement situé dans
~/.ssh/config
.Ajoutez le fichier de configuration suivant sur l'ordinateur local.
# SSH over Session Manager host i-* mi-* ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'"
Windows
Astuce
Le fichier de configuration SSH est généralement situé dans
C:\Users\
.<username>
\.ssh\configAjoutez le fichier de configuration suivant sur l'ordinateur local.
# SSH over Session Manager host i-* mi-* ProxyCommand C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters portNumber=%p"
-
Vérifiez que vous disposez d'un certificat au format PEM (Privacy Enhanced Mail) ou au minimum d'une clé publique, à utiliser lors de l'établissement de connexions avec les nœuds gérés. Il doit s'agir d'une clé déjà associée au nœud géré. Les autorisations de votre fichier de clé privée doivent être configurés afin que vous soyez le ou la seul(e) à pouvoir le lire. Vous pouvez utiliser la commande suivante pour définir les autorisations de votre fichier de clé privée afin que vous soyez le ou la seul(e) à pouvoir le lire.
chmod 400
<my-key-pair>
.pemPar exemple, pour une instance Amazon Elastic Compute Cloud (Amazon EC2), le fichier de paire de clés que vous avez créé ou sélectionné lors de la création de l'instance. (Vous spécifiez le chemin d'accès au certificat ou à la clé dans la commande de démarrage de session. Pour plus d'informations sur le démarrage d'une session à l'aide de SSH, consultez Démarrage d'une session (SSH).)
-
Contrôle des autorisations utilisateur pour des connexions SSH en utilisant Session Manager
Après avoir activé des connexions SSH sur un nœud géré en utilisant Session Manager, vous pouvez utiliser des politiques IAM pour autoriser ou empêcher des utilisateurs, des groupes ou des rôles d'établir des connexions SSH en utilisant Session Manager.
Pour utiliser une politique IAM afin d'autoriser des connexions SSH en utilisant Session Manager
-
Utilisez l’une des options suivantes :
-
Option 1 : ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/
. Dans le panneau de navigation, sélectionnez Policies (Politiques), puis mettez à jour la politique d'autorisations permettant à l'utilisateur ou au rôle de votre choix de démarrer les connexions SSH via Session Manager.
Par exemple, ajoutez l'élément suivant à la politique Quickstart que vous avez créée dans Démarrage rapide - Politiques d'utilisateur final pour Session Manager. Remplacez chaque
example resource placeholder
(espace réservé pour les ressources) avec vos propres informations.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:StartSession", "Resource": [ "arn:aws:ec2:
region
:account-id
:instance/instance-id
", "arn:aws:ssm:*:*:document/AWS-StartSSHSession" ], "Condition": { "BoolIfExists": { "ssm:SessionDocumentAccessCheck": "true" } } } ] } -
Option 2 : attachez une politique en ligne à une politique utilisateur à l'aide de la AWS Management Console, de la AWS CLI ou de l'API AWS.
À l'aide de la méthode de votre choix, attachez la déclaration de politique de l'option 1 à la politique d'un utilisateur, d'un groupe ou d'un rôle AWS.
Pour de plus amples informations, veuillez consulter Ajout et suppression d'autorisations basées sur l'identité IAM dans le Guide de l'utilisateur IAM.
-
Pour utiliser une politique IAM afin de refuser des connexions SSH en utilisant Session Manager
-
Utilisez l’une des options suivantes :
-
Option 1 : ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/
. Dans le panneau de navigation, sélectionnez Policies (Politiques), puis mettez à jour la politique d'autorisations pour l'utilisateur ou le rôle afin de bloquer le démarrage des sessions Session Manager. Par exemple, ajoutez l'élément suivant à la politique Quickstart que vous avez créée dans Démarrage rapide - Politiques d'utilisateur final pour Session Manager.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor1", "Effect": "Deny", "Action": "ssm:StartSession", "Resource": "arn:aws:ssm:*:*:document/AWS-StartSSHSession" } ], "Condition": { "BoolIfExists": { "ssm:SessionDocumentAccessCheck": "true" } } }
-
Option 2 : attachez une politique en ligne à une politique utilisateur à l'aide de la AWS Management Console, de la AWS CLI ou de l'API AWS.
À l'aide de la méthode de votre choix, attachez la déclaration de politique de l'option 1 à la politique d'un utilisateur, d'un groupe ou d'un rôle AWS.
Pour de plus amples informations, veuillez consulter Ajout et suppression d'autorisations basées sur l'identité IAM dans le Guide de l'utilisateur IAM.
-