Comment ajouter de nouveaux comptes utilisateur avec un accès SSH à mon instance Linux Amazon EC2 ?

Date de la dernière mise à jour : 05/08/2021

Je souhaite ajouter de nouveaux comptes utilisateur pouvant se connecter à mon instance Linux Amazon Elastic Compute Cloud (Amazon EC2) à l'aide de SSH. Comment 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 des 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 ajouter de nouveaux comptes utilisateur avec un accès SSH à mon instance EC2 à l'aide de cloud-init et des données utilisateur ?

Résolution

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

Ajouter 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

Le répertoire de base peut ne pas être créé par défaut dans certaines configurations. Vérifiez que le répertoire de base a été créé avant de continuer.

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

Vérifier 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érifier l'empreinte de votre paire de clés.

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

Après avoir récupéré la clé publique, confirmez que vous avez l'autorisation de l'ajouter 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.

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

1.    Exécutez la commande suivante à partir d'une invite de ligne de commande sur 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.    Exécutez la commande id à partir de la ligne de commande de l'instance pour afficher les informations sur l'utilisateur et le 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 ?