web-dev-qa-db-fra.com

Comment configurer l'accès SSH pour une instance Amazon EC2?

J'ai besoin d'un accès SSH à une instance Amazon EC2 exécutant Ubuntu 10.4. Tout ce que j'ai, c'est le nom d'utilisateur et le mot de passe Amazon. Des idées?

84
BetaRide

En gros, vous avez besoin d’un fichier de clé privée pour vous connecter à votre EC2 via SSH. Suivez ces étapes pour en créer un:

  • Allez https://console.aws.Amazon.com/ec2/home & connectez-vous à votre compte Amazon existant.
  • Cliquez sur "Paires de touches" sur LHS ou https://console.aws.Amazon.com/ec2/home?region=us-east-1#s=KeyPairs .
    • Vous devriez voir la liste des KEY générées par vous (ou pendant le processus de création d’EC2).
    • Cliquez sur "Créer une paire de clés" si vous n'en voyez pas ou si vous avez perdu votre clé privée.
    • Entrez un nom unique et appuyez sur Entrée.
    • Un panneau de téléchargement apparaît pour vous permettre de sauvegarder la clé privée, sauvegardez-la.
    • Conservez-le quelque part avec l'autorisation de fichier "0600"
  • Cliquez sur "Instances" sur LHS ou https://console.aws.Amazon.com/ec2/home?region=us-east-1#s=Instances
    • Vous devriez voir la liste des instances ec2. Si vous n'en voyez pas, créez-en une.
    • Cliquez sur la machine EC2 et notez l'adresse DNS publique.
  • Ouvrez votre terminal (sous Linux) et tapez la commande suivante
    • ssh -i /path/to/private-key root@<ec2-public-dns-address> - le nom d’utilisateur racine a été évité dans les dernières versions, en fonction de votre distribution, sélectionnez ec2-user ou ubuntu comme nom d'utilisateur.
    • appuyez sur Entrée
    • C'est ça.
156
Rakesh Sankar
ssh -i /path/to/private-key ubuntu@<ec2-public-dns-address>

utilisez simplement ubuntu au lieu de root. Votre problème sera résolu. À votre santé!

24
Shaharia Azam

ÉTAPE 1) Téléchargez les clés privées attribuées à votre machine ec2 (ce téléchargement n’est effectué qu’une fois à la création. Il est donc recommandé de valider quelque part)

ÉTAPE 2) et déclencher les commandes suivantes,

chmod 400 MyKeyPair.pem
ssh -i MyKeyPair.pem [email protected]

Doc officiel : Connexion à vos instances Linux/Unix avec SSH

11
prayagupd

Notez que l'utilisateur actuel de 13.04 est "ubuntu" ssh -i ./mykey.pem [email protected]

7
Mainguy

Vous devez d’abord créer une paire de clés. Pour ce faire, utilisez votre console EC2. Ensuite, utilisez votre clé privée pour SSH sur le serveur (le nom d'utilisateur est ec2-user) en utilisant un client SSH de votre choix.

Une fois dedans, vous pouvez émettre un Sudo su - pour prendre racine si vous le souhaitez (remarque: vous ne pouvez pas vous connecter directement en tant que root).

4
Jay Sidri

Si vous utilisez MacOS, vous devriez créer/éditer le fichier de configuration SSH (~/.ssh/config) et mettre quelque chose comme:

Host *.amazonaws.com
    User ubuntu
    Port 22
    StrictHostKeyChecking no
    UserKnownHostsFile=/dev/null
    IdentityFile ~/PATH/YOUR_DOWNLOADED_KEY.pem

Ensuite, pour vous connecter à l'une des instances EC2:

ssh MYNAME.amazonaws.com

Rien de plus!

3
Thomas Decaux

Pour installer Ubuntu sur AWS, procédez comme suit:

  1. Connectez-vous à Amazon Web Services et sélectionnez EC2.
  2. Choisissez Lancer l'instance et suivez les instructions de l'assistant en sélectionnant la bonne image (Ubuntu), le type d'instance, la configuration du réseau VPC et du sous-réseau, le stockage et autorisant l'accès SSH dans Groupes de sécurité. Puis Lancer.
  3. Pour la première fois, vous devez probablement configurer la paire de clés et l'affecter à l'instance. Vous pouvez également créer une paire de clés dans Paires de clés. Une fois créé, téléchargez le fichier PEM et conservez-le en lieu sûr.
  4. Une fois l'instance lancée, attendez qu'elle soit Initialized et running.

Pour accéder à l'instance via SSH, exécutez:

  1. Connectez-vous à Linux en spécifiant votre fichier PEM, par exemple.

    ssh -i "file.pem" [email protected]
    

    Assurez-vous que votre fichier PEM dispose de 600 autorisations (chmod 600 file.pem).

Dépannage

Si vous exécutez une instance VPC et que votre groupe de sécurité est correct (avec les règles appropriées) et qu'il ne fonctionne toujours pas, dans la section VPC vérifie votre sous-réseau qui doit être connecté à votre [~ # ~] vpc [~ # ~] (les deux utilisé par votre instance) et configurer une nouvelle règle dans Table de routage comportant 0.0.0.0/0 comme Destination et votre passerelle Internet ​​comme cible.

Pour plus de détails, consultez: Dépannage de la connexion à votre instance

Voir aussi: Causes possibles du délai d'attente lors d'une tentative d'accès à une instance EC2

1
kenorb

1) Premièrement chmod le .pem file Pour restreindre le fichier comme ci-dessous

chmod 400 my-key-pair.pem

2) Puis ssh avec les commandes suivantes directement à partir du dossier .ssh

ssh -i my-key-pair.pem [email protected]

Note: - Pour naviguer dans le dossier .ssh. Appuyez d'abord sur Ctrl + H Pour afficher tous les fichiers cachés et enfin cd .ssh

1
WaterRocket8236

J'accepte AWS propose d'utiliser les groupes de sécurité par défaut qui incluent les ports "All Trafic".

Et, après avoir essayé maintes et maintes fois de me connecter sur ma nouvelle instance ec2, je viens de me rendre compte que je devais éditer mon groupe de sécurité utilisé et ajouter manuellement aux 22 ports entrants et sortants (ssh)!

J'espère que ça aide !

0
Diego Favero

Faire ce qui est suggéré dans toutes ces réponses ne suffit pas. Dans chaque cas, vous voyez un groupe de sécurité. Lorsque vous lancez une nouvelle instance, cette option est définie par défaut. Vous devez éditer le groupe de sécurité et ajouter le port ssh, il. Plus tard, vous devez ajouter les ports 8080, 8443, 80, 443 également lorsque vous souhaitez héberger votre site Web.

0
SayeedHussain

Assurez-vous que ces choses sont en échec

  1. clé privée doit avoir 400 permission

  2. Assurez-vous que le port 22 est ouvert pour l'instance AWS à laquelle vous essayez d'accéder.

  3. ssh -i privatekey.pem [email protected] // XXX.XXX.XXX.XXX = votre adresse IP publique d'instance
0
IMRA

Premier changement de permission du fichier pem par

chmod 400 path/to/key_pair.pem

Dans le fichier ~/.ssh/config, ajoutez les lignes suivantes, en haut du fichier

Host AWS
     Hostname myserver.com
     User myuser
     IdentityFile path/to/.pem/file
     port 22

Le nom d'hôte prend IP ou le lien du serveur, l'utilisateur prend le nom d'utilisateur du serveur et le fichier d'identité est un fichier téléchargé d'AWS lorsque vous avez créé l'instance. Il suffit d'exécuter la commande suivante dans le terminal

ssh AWS

et en profiter!

Note: Pour naviguer dans le dossier .ssh. Appuyez d’abord sur Ctrl + H Dans le dossier d’accueil pour afficher tous les fichiers cachés et enfin cd .ssh

0
Vineet Jain

Le problème n'est pas la connexion en tant qu'utilisateur correct pour votre système d'exploitation. Pour certaines nouvelles AMI, le nom d'utilisateur peut ne pas être "ubuntu", mais "ec2-user". Pour Amazon Linux, par exemple, je pense que l'utilisateur est "ec2-user". Eric Hammond donne des exemples ici: http://alestic.com/2014/01/ec2-ssh-username

Ma suggestion, essayez:

ssh -i /path/to/file.pem ec2-user@ec2...

ssh -i /path/to/file.pem ubuntu@ec2...

ssh -i /path/to/file.pem root@ec2...

Si vous avez la mauvaise AMI, vous voudrez peut-être simplement redémarrer la machine pour que les clusters soient uniformes. Si tel est votre problème, vous voudrez probablement le même système d'exploitation Distro que pour vos boîtes Linux.

0
Henry