Résoudre l'erreur "Permission refusée" lors de la création d'un utilisateur Ubuntu Sudo avec AI
Paul Grieselhuber
Introduction
Au cours du processus d'installation de Nginx sur Ubuntu, l'une des conditions préalables est de configurer un utilisateur normal, non root, avec les privilèges sudo.
Ce processus est défini dans un tutoriel de Digital Ocean, installing Nginx and initial server setup with Ubuntu. En suivant le tutoriel, nous avons réussi à créer facilement un utilisateur (Sammy) mais nous avons rencontré une erreur de permissions lorsque nous avons essayé de nous connecter en tant que Sammy: :
ssh sammy@votre_serveur_ip
L'erreur affichée était "Permission denied (publickey)" et il n'y avait rien pour couvrir une résolution dans le tutoriel, donc nous l'avons réparé nous-mêmes, avec un peu d'aide de l'IA.
Voici comment.
Étape 1. Vérifier que la clé publique existe sur la machine locale
Tout d'abord, vérifiez que vous disposez d'une clé SSH sur votre machine locale. La clé publique commence généralement par ssh-ed25519 suivi d'une longue chaîne de caractères.
Exécutez la commande suivante :
cat ~/.ssh/id_ed25519.pub
Vous devriez voir quelque chose comme ceci :
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAILM4XeQ...<blocked>...1x sammy@example.com
Copiez la clé entière (y compris la partie ssh-ed25519) pour l'utiliser dans les étapes suivantes.
Étape 2. Passer au serveur
Connectez-vous à votre serveur en tant qu'utilisateur root :
ssh root@votre_serveur_ip
Étape 3. Passer à Sammy
Une fois connecté, passez à l'utilisateur Sammy :
su \N- sammy
Étape 4. Créer le répertoire .ssh
Si le répertoire .ssh n'existe pas, créez-le :
mkdir -p ~/.ssh
Étape 5. Définir les autorisations pour le répertoire .ssh
Définissez les autorisations correctes pour le répertoire .ssh :
chmod 700 ~/.ssh
Étape 6. Créer ou ouvrir le fichier authorized_keys
Ouvrez le fichier authorized_keys pour le modifier :
nano ~/.ssh/authorized_keys
Étape 7. Coller la clé publique
Collez la clé publique SSH que vous avez copiée précédemment dans le fichier authorized_keys. Pour ouvrir le fichier authorized_keys dans un éditeur de texte, entrez cette commande dans Terminal :
nano ~/.ssh/authorized_keys
Vous devriez voir un écran comme celui-ci :
Copiez votre clé SSH et collez-la dans la première ligne, puis cliquez sur Ctrl + X, puis Y, et Enter pour sauvegarder.
L'éditeur de texte doit ressembler à ceci :
Étape 8. Définir les permissions pour authorized_keys
Définissez les autorisations correctes pour le fichier authorized_keys :
chmod 600 ~/.ssh/authorized_keys
Étape 9. Essayez de vous connecter en tant que Sammy
Maintenant, déconnectez-vous du serveur et essayez de vous connecter à nouveau en tant que Sammy :
ssh sammy@votre serveur_ip
Conclusion
Nous avons utilisé ChatGPT pour résoudre ce problème et l'avons résolu en 30 minutes environ. En ayant une conversation en direct, en suivant les instructions et en partageant les résultats, AI nous a guidé à travers ce processus étape par étape jusqu'à ce que nous puissions nous connecter avec succès en tant que nouvel utilisateur avec les privilèges sudo. Cette erreur n'était pas abordée dans l'article original, nous espérons donc que cela sera utile à toute personne rencontrant le même problème. Si cela ne fonctionne pas pour vous, pourquoi ne pas essayer ChatGPT pour voir s'il peut vous aider à résoudre le problème ?