Comment puis-je ajouter des nouveaux comptes utilisateur avec un accès SSH à mon instance Linux Amazon EC2 ?

Date de la dernière mise à jour : 20/08/2020

Je souhaite ajouter de nouveaux comptes utilisateur pouvant se connecter à mon instance Linux Amazon Elastic Compute Cloud (Amazon EC2) à l'aide de SSH. Comment dois-je procéder ?

Brève description

Chaque instance Linux Amazon EC2 est lancée avec un compte utilisateur système par défaut disposant d'un accès administratif à l'instance. Si plusieurs utilisateurs doivent accéder à l'instance, les bonnes pratiques en matière de sécurité recommandent l'utilisation de comptes distincts pour chaque utilisateur.

L'utilisation de cloud-init et des données utilisateur permettent de le faire plus rapidement. Pour plus d'informations, consultez la section Comment puis-je ajouter de nouveaux comptes utilisateur avec un accès SSH à mon instance EC2 à l'aide de cloud-init et des données utilisateur ?

Solution

Créez une paire de clés pour le nouveau compte utilisateur.

Ajoutez un nouvel utilisateur à l'instance Linux EC2.

1.    Connectez-vous à votre instance Linux à l'aide de SSH.

2.    Utilisez la commande adduser pour ajouter un nouveau compte utilisateur à une instance EC2 (remplacez new_user par le nom du nouveau compte). L'exemple suivant montre la création d'un groupe associé, répertoire de base, et d'une entrée dans le fichier /etc/passwd de l'instance :

$ sudo adduser new_user

Remarque : si vous ajoutez new_user (nouvel utilisateur) pour une instance Ubuntu, incluez l'option --disabled-password pour éviter d'ajouter un mot de passe au nouveau compte :

$ sudo adduser new_user --disabled-password

3.    Changez le contexte de sécurité du compte new_user pour que les dossiers et fichiers que vous créez disposent des autorisations adaptées :

$ sudo su - new_user

Remarque : lorsque vous exécutez la commande sudo su - new_user, le nom situé en haut de l'invite de commande shell change pour refléter le contexte du nouveau compte utilisateur de votre séance shell.

4.    Créez un répertoire .ssh dans le répertoire de base de new_user :

$ mkdir .ssh

5.    Utilisez la commande chmod pour modifier les autorisations du répertoire .ssh et les paramétrer sur 700. Modifier les autorisations permet de restreindre l'accès afin que seul le new_user puisse lire, écrire ou ouvrir le répertoire .ssh.

$ chmod 700 .ssh

6.    Utilisez la commande tactile pour créer le fichier authorized_keys dans le répertoire .ssh :

$ touch .ssh/authorized_keys

7.    Utilisez la commande chmod pour modifier les autorisations du fichier .ssh/authorized_keys et les définir sur 600. La modification des autorisations du fichier permet de restreindre l'accès en lecture ou en écriture du fichier pour le new_user.

$ chmod 600 .ssh/authorized_keys

Récupérer la clé publique pour votre paire de clés

Récupérez la clé publique de votre paire de clés à l'aide de la méthode qui s'applique à votre configuration :

Vérification de l'empreinte de votre paire de clés

Après l'importation de votre propre clé publique ou la récupération de la clé publique pour votre paire de clés, suivez les étapes de la section Vérification de l'empreinte de votre paire de clés.

Mettre à jour et vérifier les informations d'identification du nouveau compte utilisateur

Après la récupération de votre clé publique, utilisez la séance shell de commande qui fonctionne dans le contexte du nouveau compte utilisateur pour vérifier que vous disposez de l'autorisation d'ajouter la clé publique au fichier .ssh/authorized_keys pour ce compte :

1.    Exécutez la commande Linux cat en mode Ajout :

$ cat >> .ssh/authorized_keys

2.    Collez la clé publique dans le fichier .ssh/authorized_keys, puis appuyez sur Entrée.

Remarque : pour la plupart des interfaces de ligne de commande Linux, la combinaison de touches Ctrl+Maj+V permet de coller le contenu du Presse-papiers dans la fenêtre de ligne de commande. Pour l'interface de ligne de commande PuTTY, cliquez avec le bouton droit pour coller le contenu du Presse-papiers dans la fenêtre de ligne de commande.

3.    Maintenez enfoncée les touches Ctrl+D pour quitter cat et revenir à l'invite de session de ligne de commande.

(Facultatif) Autoriser le nouvel utilisateur à utiliser sudo

Remarque : si vous ne voulez pas autoriser le nouvel utilisateur à utiliser sudo, passez à la section Vérifier que le nouvel utilisateur peut utiliser SSH pour se connecter à l'instance EC2.

1.    Utilisez la commande passwd pour créer un mot de passe pour le nouvel utilisateur :

$ sudo passwd new_user

Remarque : vous êtes invité à saisir à nouveau le mot de passe. Saisissez le mot de passe une deuxième fois pour le confirmer.

2.    Ajoutez le nouvel utilisateur au groupe approprié.

Pour Amazon Linux, Amazon Linux 2, RHEL et CentOS :

Utilisez la commande usermod pour ajouter l'utilisateur au groupe wheel.

$ sudo usermod -aG wheel new_user

Pour Ubuntu :

Utilisez la commande usermod pour ajouter l'utilisateur au groupe sudo.

$ sudo usermod -aG sudo new_user

Vérifier que le nouvel utilisateur peut utiliser SSH pour se connecter à l'instance EC2

1.    Vérifiez que vous pouvez vous connecter à votre instance EC2 à l'aide de SSH en tant que new_user en exécutant la commande suivante à partir de l'invite de ligne de commande de votre ordinateur local :

$ ssh -i /path/new_key_pair.pem new_user@public_dns_name_of_EC2_Linux_instance

Pour vous connecter à votre instance Linux EC2 à l'aide de SSH sur Windows, suivez les étapes de la section Connexion à votre instance Linux sur Windows à l'aide de PuTTY.

Remarque : si vous recevez des erreurs lors de la tentative de connexion, reportez-vous à la section Dépannage de la connexion à votre instance

2.    Une fois connecté à votre instance à l'aide de SSH en tant que new_user, exécutez la commande id à partir de la ligne de commande de l'instance EC2 pour afficher les informations de l'utilisateur et du groupe créés pour le compte new_user :

$ id

La commande id renvoie des informations similaires à :

uid=1004(new_user) gid=1004(new_user) groups=1004(new_user)

3.    Distribuez le fichier de clé privée au nouvel utilisateur.


Cet article vous a-t-il été utile ?


Vous avez besoin d'aide ?