J'avais configuré une instance Ubuntu avec un Rails, déployé mon application, et cela fonctionne bien.
Mais quand j'essaie de faire SSH, cela ne me permet pas de me permettre de connecter la télécommande et de lancer des erreurs comme: Host key verification failed
.
Le problème semble être persistant. J'ai joint l'adresse IP élastique à cette instance et je ne suis pas capable de voir le DNS public.
Mon cas est en cours d'exécution dans la région de Singapour.
ssh
Sortie de débogage:
OpenSSH_5.8p1 Debian-7ubuntu1, OpenSSL 1.0.0e 6 Sep 2011
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to 46.137.253.231 [46.137.253.231] port 22.
debug1: Connection established.
debug1: identity file st.pem type -1
debug1: identity file st.pem-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.5p1 Debian-4ubuntu6
debug1: match: OpenSSH_5.5p1 Debian-4ubuntu6 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.8p1 Debian-7ubuntu1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE Host IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a Host key has just been changed.
The fingerprint for the RSA key sent by the remote Host is.
Please contact your system administrator.
Add correct Host key in /home/ubuntu/.ssh/known_hosts to get rid of this message.
Offending RSA key in /home/ubuntu/.ssh/known_hosts:1
remove with: ssh-keygen -f "/home/ubuntu/.ssh/known_hosts" -R 46.137.253.231
RSA Host key for 46.137.253.231 has changed and you have requested strict checking.
Host key verification failed.
Lorsque vous vous connectez à un serveur SSH, votre client SSH conserve une liste d'hôtes de confiance comme paires de clés d'impression sur le doigt IP et SSH SSH Server. Avec EC2, vous réutilisez souvent la même adresse IP avec plusieurs instances de serveur qui provoque des conflits.
Si vous vous êtes connecté à une instance EC2 antérieure avec cette adresse IP et que vous vous connectez maintenant à une nouvelle instance avec le même IP, votre ordinateur se plaindre de "la vérification de l'hôte" échoué "car sa paire précédemment stockée ne correspond plus à la nouvelle paire.
Le message d'erreur vous indique comment le réparer:
Key RSA offensant dans /home/ubuntu/.ssh/known_hosts:1
[.____] Supprimer avec: SSH-Keygen -F "/Home/ubuntu/.ssh/knondn_hosts" -r 46.137.253.231 "
Alternative Ouvrez simplement /home/ubuntu/.ssh/knondn_hosts et Supprimer la ligne 1 (comme indiqué par le ": 1").
Vous pouvez maintenant vous connecter et recevoir une nouvelle vérification de l'hôte.
Veuillez noter généralement que le fichier connu_hosts de SSH a généralement enregistré une deuxième paire de lignes pour la nomenclature d'hôte ou IP6 afin que vous puissiez vous permettre de supprimer quelques lignes.
AVERTISSEMENT: La vérification de l'hôte est importante et c'est une bonne raison pour laquelle vous obtenez cet avertissement. Assurez-vous que vous attendez une vérification de l'hôte échouer. Ne retirez pas la paire de la clé de vérification si non certain.
@ Flurdy La réponse est bonne comme une résolution unique.
Mais si vous êtes souvent:
..Avoir à l'aide d'ELASTIC IPS (attaché de manière permanente à vos serveurs), vous traitez de nouveaux ips/changements IPS/HostNames de vos instances tout le temps.
Si oui, alors vous voudrez peut-être arrêter de manière permanente la vérification et la conservation des empreintes digitales du serveur pour les noms d'hôtes publiques EC2 .
Pour ce faire, ajoutez-le à votre ~/.ssh/config
:
# AWS EC2 public hostnames (changing IPs)
Host *.compute.amazonaws.com
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
Veuillez noter que ssh dira toujours Warning: Permanently added (...) to the list of known hosts.
lors de la connexion, mais signifie simplement qu'il l'a ajouté à /dev/null
...
SSH cessera cependant cesser de demander si vous confirm the authenticity of Host
Et continuez simplement à connecter.
Donc, il est plus pratique et vous pouvez éviter pas toujours des erreurs de connexion SSH suffisantes Tout en utilisant vos instances EC2.
Je dois ajouter qu'en théorie, ce paramètre réduit la sécurité de vos connexions SSH, mais dans la vie réelle, vous ne voudriez probablement pas vérifier les empreintes digitales de vos instances oncle one-off EC2.