web-dev-qa-db-fra.com

comment se connecter à la machine ec2?

On m'a donné des informations de connexion pour une machine EC2, essentiellement un ec2-X-X-X.compute-X.amazonaws.com plus un nom d'utilisateur et un mot de passe.

Comment accéder à la machine? J'ai essayé de ssh:

ssh [email protected]

mais je reçois un Permission denied, please try again. lorsque je saisis le mot de passe. Est-ce que sshing est le bon moyen d’accéder à la machine EC2? (Les visites sur Google que j'ai trouvées suggéraient que vous pouviez entrer en ssh dans la machine, mais ils utilisaient également des paires de clés.) Ou est-il plus probable que le problème soit que j'ai reçu des identifiants de connexion invalides?

38
grautur

Si vous êtes nouveau sur AWS et avez besoin d'accéder à une toute nouvelle instance EC2 via ssh, gardez à l'esprit que vous aussi devez autoriser le trafic entrant sur le port 22.

En supposant que l'instance EC2 ait été créée en acceptant toutes les suggestions d'assistant par défaut, l'accès à la machine sera protégé par le groupe de sécurité default, qui interdit fondamentalement tout le trafic entrant. Ainsi:

  1. Aller à la console AWS
  2. Choisissez Security Groups dans le volet de navigation de gauche
  3. Choisissez default dans le volet principal (il peut s'agir du seul élément de la liste)
  4. Dans le volet inférieur, choisissez Inbound, puis Create a new rule: SSH
  5. Cliquez sur Add rule puis sur Apply Rule Changes

Ensuite, en supposant que vous êtes en possession de la clé privée, procédez comme suit:

$ chmod 600 path/to/mykey.pem
$ ssh -i path/to/mykey.pem [email protected]

Mon instance EC2 a été créée à partir d'une image Ubuntu 32.04 12.04, dont la configuration n'autorise pas l'accès ssh à root et vous demande de vous connecter en tant que ubuntu:

$ ssh -i path/to/mykey.pem [email protected]

A bientôt, Giuseppe

41
Giuseppe

Notre AMI Amazon dit: "Veuillez vous connecter en tant qu'utilisateur ec2 plutôt qu'en tant qu'utilisateur root.", Il semble donc que chaque image peut avoir un utilisateur différent, par exemple.

ssh -i ~/.ssh/mykey.pem [email protected]

En bref, essayez root et il vous dira quel utilisateur vous devez vous connecter en tant que.

[Modifier] Je suppose que vous ne disposez pas des informations d'identification AWS Management Console pour le compte, mais si vous les avez, vous pouvez accéder au panneau EC2-> Instances d'AWS Management Console, faites un clic droit sur le nom de l'ordinateur et sélectionnez "Connecter ..." Une liste des options disponibles pour vous connecter sera affichée. Vous aurez (ou devriez) besoin d’une clé pour accéder à une instance via ssh. Vous auriez dû recevoir ceci, sinon il pourrait être nécessaire de le générer.

S'il s'agit d'une instance Windows, vous devrez peut-être utiliser la connexion au bureau à distance pour vous connecter à l'aide de l'adresse IP ou du nom d'hôte. Vous aurez également besoin d'un identifiant et d'un mot de passe pour votre compte Windows.

7
Shannon WM

Le processus de connexion à une instance AWS EC2 Linux via SSH est décrit pas à pas (y compris les points mentionnés ci-dessous) dans cette vidéo .

Pour corriger ce problème particulier avec SSH-ing sur votre instance EC2:

  1. La commande ssh que vous avez exécutée n’est pas au bon format. CA devrait etre:

    ssh -i /path/my-key-pair.pem [email protected]
    
  2. Notez que vous devez accéder au fichier de clé privée (.pem) à utiliser dans la commande ci-dessus. AWS vous invite à télécharger ce fichier lors du premier lancement de votre instance. Vous devrez exécuter la commande suivante pour vous assurer que seul votre utilisateur root a un accès en lecture à celui-ci:

    chmod 400 /path/to/yourKeyFile.pem
    
  3. Selon votre distribution Linux, l'utilisateur que vous devez spécifier quand vous exécutez ssh peut être l'un des suivants:

    • Pour Amazon Linux, le nom d'utilisateur est ec2-user.
    • Pour RHEL, le nom d'utilisateur est ec2-user ou root.
    • Pour Ubuntu, le nom d'utilisateur est Ubuntu ou root.
    • Pour Centos, le nom d'utilisateur est centos.
    • Pour Fedora, le nom d'utilisateur est ec2-user.
    • Pour SUSE, le nom d'utilisateur est ec2-user ou root.
    • Sinon, si ec2-user et root ne fonctionnent pas, vérifiez auprès de votre fournisseur AMI.
  4. Vous devez activer un pare-feu SSH entrant. Cela peut être fait dans la section Groupes de sécurité de AWS. Les détails complets pour cette pièce peuvent être trouvés ici .

1
blackHoleDetector

En effet, EC2 (Amazon Elastic Compute Cloud) n’autorise pas l’authentification par mot de passe pour leurs instances (machines Linux) par défaut. 

La seule méthode d'authentification autorisée consiste à utiliser une clé SSH créée lors de la création de l'instance. Lors de la création, ils vous permettent de télécharger la clé SSH une seule fois. Par conséquent, si vous la perdez, vous devez la régénérer.

Cette clé SSH est réservée à l'utilisateur principal - généralement nommé 

  • "ec2-user" (Amazon Linux, Red Hat Linux, SUSE Linux)
  • "root" (Red Hat Linux, SUSE Linux)
  • "ubuntu" (distribution Ubuntu Linux) 
  • "Fedora" (distribution Fedora Linux)

ou similaire (selon la distribution)

Voir les instructions de connexion: https://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html

Si vous souhaitez ajouter un nouvel utilisateur, la méthode recommandée consiste à générer et à ajouter une nouvelle clé SSH pour le nouvel utilisateur, sans spécifier de mot de passe (inutile dans la mesure où l'authentification par mot de passe n'est pas activée par défaut).

Gestion d'utilisateurs supplémentaires: http://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/managing-users.html

Après tout, si vous souhaitez activer l’authentification par mot de passe, ce qui réduit la sécurité et n’est pas recommandé, mais vous devrez peut-être le faire pour des raisons spécifiques, puis modifiez-le. 

/etc/ssh/sshd_config

Par exemple: Sudo vim/etc/ssh/sshd_config

trouvez la ligne qui dit:

PasswordAuthentication no

et le changer en 

PasswordAuthentication yes

Puis redémarrez l'instance

Sudo restart 

Après le redémarrage, vous êtes libre de créer des utilisateurs supplémentaires avec une authentification par mot de passe.

Sudo useradd newuser
Sudo passwd newuser

Ajoutez le nouvel utilisateur à la liste des sudoers:

Sudo usermod -a -G Sudo newuser

Assurez-vous que le dossier personnel de l'utilisateur existe et qu'il appartient à l'utilisateur.

Sudo mkdir /home/newuser
Sudo chown newuser:newuser /home/newuser

Nouveau, vous êtes prêt à essayer de vous connecter avec newuser via ssh . L’authentification avec les clés ssh continuera de fonctionner en parallèle avec l’authentification par mot de passe.

0
Yordan Nedelchev