Je viens de m'inscrire à la nouvelle offre Elastic Beanstalk d'Amazon. Ce que je ne peux pas comprendre, c'est comment SSH vers une instance Beanstalk. Je n'ai pas de clé privée car Beanstalk a généré l'instance en mon nom.
amazon-web-services
amazon-ec2
ssh
amazon-elastic-beanstalk
Benno Waldmann
la source
la source
eb ssh
Réponses:
J'ai trouvé que c'était un processus en 2 étapes. Cela suppose que vous avez déjà configuré une paire de clés pour accéder aux instances EC2 dans la région concernée.
Configurer le groupe de sécurité
elasticbeanstalk-default
groupe de sécurité si vous avez lancé une instance Elastic Beanstalk dans cette région.Modifiez le groupe de sécurité pour ajouter une règle d'accès SSH. Ce qui suit le verrouillera pour n'autoriser l'entrée qu'à partir d'une adresse IP spécifique.
Configurer l'environnement de votre application Elastic Beanstalk
Existing Key Pair
champ.Une fois l'instance relancée, vous devez obtenir le nom d'hôte à partir de l'onglet Instances AWS Console EC2 ou via l'API. Vous devriez alors pouvoir accéder à ssh sur le serveur.
Remarque: Pour ajouter une paire de clés à la configuration de l'environnement, la protection de terminaison des instances doit être désactivée car Beanstalk essaierait de terminer les instances actuelles et de démarrer de nouvelles instances avec KeyPair.
Remarque: Si quelque chose ne fonctionne pas, vérifiez l'onglet "Événements" dans l'application / les environnements Beanstalk et découvrez ce qui n'a pas fonctionné.
la source
Elastic beanstalk CLI v3 prend désormais en charge SSH direct avec la commande
eb ssh
. Par exemplePas besoin de tous les tracas de la mise en place de groupes de sécurité pour trouver l'adresse de l'instance EC2.
Il y a aussi cette astuce sympa:
Cela forcera temporairement le port 22 à s'ouvrir à 0.0.0.0, et le gardera ouvert jusqu'à ce que vous
exit
. Cela allie un peu les avantages de la meilleure réponse, sans les tracas. Vous pouvez accorder temporairement à une autre personne que vous un accès pour le débogage et ainsi de suite. Bien sûr, vous devrez toujours télécharger leur clé publique sur l'hôte pour qu'ils y aient accès. Une fois que vous faites cela (et tant que vous êtes à l'intérieureb ssh
), l'autre personne peutla source
eb ssh production
. Vous pouvez également configurer un environnement spécifique avec l'option de configuration:eb ssh production --setup
Mon expérience en août 2013 avec un client Linux et une simple installation AWS Beanstalk (instance EC2 unique) est la suivante (basée sur le wiki communautaire ci-dessus)
Configurer le groupe de sécurité
awsweb...
groupe de sécurité et les détails devraient apparaître en bas de la pageCréer une paire de clés publique-privée
Associer la paire de clés privées publiques au serveur Elastic Beanstalk EC2
Se connecter à l'instance AWS EC2 à l'aide de SSH
Bonne chance
la source
J'ai aussi joué avec ça.
Le service sera relancé alors faites un café pendant 5 minutes
Sur votre onglet ec2 pour la même région, vous verrez votre nouvelle instance en cours d'exécution. ssh au nom du DNS public en tant qu'utilisateur ec2 en utilisant la clé ajoutée en 3, par exemple ssh [email protected]
la source
Il existe une option pratique «Connecter» dans le menu «Actions d'instance» pour l'instance EC2. Il vous donnera la commande SSH exacte à exécuter avec l'url correcte pour l'instance. Les instructions générales de Jabley sont correctes.
la source
Les réponses ci-dessus sont un peu anciennes.
Créez d'abord une paire de clés, puis attachez-la à l'environnement Elastic Beanstalk.
Étapes pour créer une paire de clés
Étapes pour attacher la paire de clés créée à l'environnement Elastic Beanstalk
AWS -> Services -> Elastic Beanstalk
Sélectionnez votre environnement et cliquez sur la configuration à gauche.
Dans Présentation de la configuration, sélectionnez Modifier dans Sécurité.
Sous Autorisations de la machine virtuelle, sélectionnez la paire de clés que nous avons créée.
Cliquez sur enregistrer puis sur enregistrer la configuration.
Cela prendra un certain temps à réfléchir à votre instance EC2.
la source
Si vous utilisez un bean élastique et une interface de ligne de commande EB, utilisez simplement
eb ssh
pour vous connecter à l'instance. Vous pouvez utiliser les options spécifiées dans le lien suivant http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-ssh.htmlla source
Vous devez vous connecter directement à l'instance ec2 à l'aide de son adresse IP publique. Vous ne pouvez pas vous connecter à l'aide de l'URL élastiquebeanstalk.
Vous pouvez trouver l'adresse IP de l'instance en la recherchant dans la console ec2.
Vous devez également vous assurer que le port 22 est ouvert. Par défaut, l'interface de ligne de commande EB ferme le port 22 une fois la connexion ssh terminée. Vous pouvez appeler eb ssh -o pour garder le port ouvert une fois la session ssh terminée.
Avertissement: Vous devez savoir que le beanstalk élastique peut remplacer votre instance à tout moment. L'état n'est garanti sur aucune de vos instances de haricot élastique. Il est probablement préférable d'utiliser ssh uniquement à des fins de test et de débogage, car tout ce que vous modifiez peut disparaître à tout moment.
la source
La direction pour définir la paire de clés pour une instance ElasticBeanstalk ec2 avec l'interface utilisateur actuelle est: Avertissement: Cela nécessitera une mise à jour des instances EC2 dans votre application ElasticBeanstalk. Remarque: Vous devez avoir créé une paire de clés dans le tableau de bord EC2 avant cela.
1) Dans AWS Dashboard, sélectionnez le service ElasticBeanstalk 2) Sélectionnez l'application que vous souhaitez utiliser. 3) Sélectionnez «Configuration» 4) Sélectionnez l'icône d'engrenage (paramètres) dans la boîte de configuration «Instances». 5) Cela vous amènera à une page intitulée «Serveur», où vous pouvez mettre à jour le champ déroulant «Paire de clés EC2» avec votre paire de clés souhaitée et sélectionner «Enregistrer».
Une chose à noter est que cela peut ne pas fonctionner pour les applications avec plusieurs instances (mais je pense que c'est probable si elles sont toutes dans la même région que la paire de clés).
la source
Je suis venu ici à la recherche d'un moyen d'ajouter une clé à une instance créée par Beanstalk pendant l'approvisionnement (nous utilisons Terraform). Vous pouvez effectuer les opérations suivantes dans Terraform:
Vous pouvez ensuite utiliser cette clé pour SSH dans la boîte.
la source
Si vous avez configuré la CLI à l'aide
eb init
de votre environnement, cela devrait être aussi simple queeb ssh --setup
qui vous permettra de créer une nouvelle paire de clés ou d'en utiliser une existante s'il en existe une.Vous pouvez également être en mesure de simplement vous connecter à l'environnement existant,
eb use
même si je ne l'ai pas fait.Pour plus de détails sur l'installation de la CLI - https://docs.aws.amazon.com/console/elasticbeanstalk/eb-cli-install
la source
Sur mac, vous pouvez installer le cli en utilisant brew:
Avec l'outil de ligne de commande, vous pouvez ensuite utiliser ssh avec:
et aussi faire d'autres opérations. Cela suppose que vous avez ajouté un groupe de sécurité qui autorise ssh à partir de votre IP.
la source
En fonction de la configuration de votre environnement, il se peut que vous ne disposiez pas d'une adresse IP publique sur l'instance EC2 qui a été créée pour votre environnement. Vous pouvez vérifier par:
Enfin, sélectionnez votre nouveau EIP et choisissez Adresse d'associé dans le menu d'action. Associez cette IP à votre instance EC2. Vous devriez pouvoir vous connecter en utilisant
eb ssh
maintenant.Vous pouvez réinitialiser les détails de la connexion en exécutant
eb ssh --setup
.la source
J'ai également rencontré le même problème il y a quelque temps. Je voulais utiliser le fichier de clé, mais Amazon dit quelque part que vous ne pouvez pas ajouter de fichier de clé à un serveur EC2 existant. Pour la première application Beanstalk, Amazon préconfigure l'application pour vous. Vous devez créer une nouvelle application et vous pouvez configurer le serveur EC2 qui exécute l'application Beanstalk pour utiliser un ancien fichier pem (ppk si vous utilisez Putty), ou vous pouvez en créer un nouveau. Vous devriez maintenant pouvoir SSH.
Ensuite, configurez, puis supprimez votre ancienne application.
la source