63 votes

SSHing sur le serveur EC2 via donne une erreur Veuillez vous connecter en tant qu'utilisateur ec2 plutôt qu'en tant qu'utilisateur root

Question comme titre. Pourquoi est-ce, j'ai utilisé la commande ssh: ssh -i mykey.pem root@xxx-xxx-xx-xxxxx.compute-1.amazonaws.com Mais j'obtiens cette erreur, je ne trouve rien sur google. Qu'est-ce que je fais mal?

89voto

Till Points 14673

Vous vous connectez en tant que ec2-user comme suggéré par Klaus:

 ssh -i key.pem ec2-user@host
 

... et vous utilisez ensuite sudo pour exécuter des commandes. Par exemple, pour éditer le fichier /etc/hosts appartenant à root et nécessitant des privilèges root: sudo nano /etc/hosts .

Ou vous exécutez sudo su pour devenir l'utilisateur root .

70voto

Juan Hernandez Points 794

Par défaut root d'utilisateur n'est pas autorisé à se connecter, mais vous pouvez utiliser ec2-user comme indiqué par d'autres.

Une fois que vous vous connectez avec ec2-user vous passez root et de modifier la configuration de SSH.

Pour devenir le super-utilisateur root, vous exécutez:

sudo su -

Modifier le SSH fichier de configuration du démon /etc/ssh/sshd_config, en utilisant par exemple vi, et de remplacer l' PermitRootLogin entrée par le suivant:

PermitRootLogin without-password

Recharger le démon SSH configuration en cours d'exécution:

/etc/init.d/sshd reload

Le message d' Please login as the ec2-user user rather than root user. est affichée dans la mesure où une commande est exécutée lorsque vous vous connectez avec la clé privée. Pour supprimer la commande éditer ~/.ssh/authorized_keys le fichier et supprimer l' command option. La ligne doit commencer avec le type de clé (par exemple. ssh-rsa).

(*) Le faire à vos propres risques. Je vous recommande de laisser toujours une console ouverte, juste au cas où vous n'êtes pas en mesure de vous connecter une fois que vous apportez des modifications de la configuration.

Pour référence, vous pouvez lire les pages man:

man sshd_config
man sshd

15voto

brno792 Points 376

J'ai rencontré un problème similaire lors de la configuration d'un cluster hadoop sur Amazon ec2.

Ma tête de nœud doit avoir de la racine d'un accès ssh à chaque travailleur/nœuds esclaves. Je alias le connecte en ajoutant à chaque nœud esclave adresse IP, adresse privée, et le nom de l'alias de l' /etc/hosts/ le fichier. (Je reçois les données en exécutant la commande echo -e "`hostname -i`\t`hostname -f`\talias-name"alias-name est ce que j'appelle chaque nœud (head ou n1 par exemple). Puis je l'ai mis de sortie pour chaque nœud dans chaque noeud de l' /etc/hosts le fichier.

Le problème que j'ai rencontré c'est que quand j'type ssh n1 alors que dans ma tête de nœud pour faire un ssh sur mon premier nœud esclave, je reçois le même message d'erreur: Please login as the use "ec2-user" rather than the user "root". Donc, après avoir fait quelques recherches, j'ai trouvé comment résoudre le problème.

D'abord:

  • ssh sur votre serveur. non-racine (ec2-utilisateur) l'accès est très bien ici.
  • Ensuite, su - votre chemin vers la racine. Maintenant, vi /etc/ssh/sshd_config et dé-commentez la ligne PermitRootLogin yes.
  • Sortie éditeur vi.
  • Maintenant, redémarrez démon ssh en tapant service sshd stop alors service sshd start.

Deuxième:

  • Maintenant, voici la partie que j'ai dû creuser pour,
  • exécutez vi /root/.ssh/authorized_keys
  • Commentaire de tout à l' ssh-rsa. il suffit de mettre un # au début du contenu du fichier, avant d' no-port-forwarding... et appuyez sur entrée sur ssh-rsa pour le déplacer vers la ligne suivante (de cette façon, vous n'avez pas à supprimer quoi que ce soit dans le cas où vous souhaitez revenir en arrière).
  • sortie éditeur vi

Maintenant, vous devriez être en mesure de vous connecter à la racine sans que le message d'erreur popping up.

Aussi, si vous utilisez des alias pour une configuration en grappe; Répétez les mêmes étapes sur chaque nœud. Première ssh en utilisant ec2-utilisateur, puis suivez les étapes. Après l'ajout de l'adresse IP, adresse privée, et le nom de l'alias info à votre /etc/hosts fichier que vous devriez être en mesure de faire un ssh sur chaque nœud de la racine, en utilisant le nom de l'alias par exemple ssh n1.

Le tutoriel j'ai suivi est ici: https://www.youtube.com/watch?v=xrxQXfE7t9A

Mais cela n'a pas de discuter de ce problème avec la connexion root.

Espérons que ça aide! Il a travaillé pour moi.

*Gardez à l'esprit que je havnt pris toute sécurité dans l'inquiétude. C'est simplement une pratique/dev d'installation.

9voto

Je pense que c'est juste vous demander de vous connecter avec un autre nom d'utilisateur. Avez-vous un utilisateur appelé ec2-user ? Si oui, essayez plutôt ceci:

 ssh -i mykey.pem ec2-user@xxx-xxx-xx-xx-xxx.compute-1.amazonaws.com
 

0voto

Mike Bobbitt Points 366

Éditez / etc / ssh / sshd_config et assurez-vous que ceci est bien défini:

Authentification par mot de passe oui

Rechargez ensuite SSH:

systemctl reload sshd.service

Vous pouvez maintenant vous connecter en tant qu'utilisateur autre que ec2-user.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X