2016-05-22 8 views
0

Sieht aus wie ich bin nicht der erste, der mit diesem zu kämpfen.Aws Ec2 ssh Zugang - Erlaubnis verweigert (publickey)

Bis jetzt hatte ich kein Problem mit SSH auf meine EC2-Instanz zuzugreifen. Bis jetzt.

Was auch immer ich mache, bekomme ich eine Erlaubnis verweigert Fehler. Ich habe meinen ec2-Benutzer eine Zillion mal überprüft, auch meine Sicherheitsgruppenparameter. Meine IP ist in den eingehenden Regeln korrekt registriert.

Ich habe versucht mit Instanz DNS und IP. Und ich habe keygen-Regeneration mit keygen -r erzwungen. Stille das Gleiche. Meine Schlüsselpaardatei hat die Rechte 0600.

Dies geschah wahrscheinlich nach einem Instanzneustart (kein Stopp/Start, vom EC2-Dashboard, nicht von der Shell). Meine Instanz läuft ohne Alarme und meine Website wird korrekt angezeigt.

Hier kommt mein ssh-Befehl:

ssh -v -i "~/.ssh/namaste_3.pem" [email protected] 

oder

ssh -v -i "~/.ssh/keypair.pem" [email protected] 

kommt Ausgang meine ssh -v:

OpenSSH_7.2p2 Ubuntu-4, OpenSSL 1.0.2g-fips 1 Mar 2016 
debug1: Reading configuration data /etc/ssh/ssh_config 
debug1: /etc/ssh/ssh_config line 19: Applying options for * 
debug1: Connecting to 52.29.237.225 [52.29.237.225] port 22. 
debug1: Connection established. 
debug1: key_load_public: No such file or directory 
debug1: identity file /home/brice/.ssh/namaste_3.pem type -1 
debug1: key_load_public: No such file or directory 
debug1: identity file /home/brice/.ssh/namaste_3.pem-cert type -1 
debug1: Enabling compatibility mode for protocol 2.0 
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4 
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4 
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4 pat OpenSSH_6.6.1* compat 0x04000000 
debug1: Authenticating to 52.29.237.225:22 as 'ubuntu' 
debug1: SSH2_MSG_KEXINIT sent 
debug1: SSH2_MSG_KEXINIT received 
debug1: kex: algorithm: [email protected] 
debug1: kex: host key algorithm: ecdsa-sha2-nistp256 
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none 
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none 
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY 
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:yiGarcstgUfXZmop1URjMPa/pp1J5mak4Rsl6TWuAh4 
debug1: Host '52.29.237.225' is known and matches the ECDSA host key. 
debug1: Found key in /home/brice/.ssh/known_hosts:2 
debug1: rekey after 134217728 blocks 
debug1: SSH2_MSG_NEWKEYS sent 
debug1: expecting SSH2_MSG_NEWKEYS 
debug1: rekey after 134217728 blocks 
debug1: SSH2_MSG_NEWKEYS received 
debug1: SSH2_MSG_SERVICE_ACCEPT received 
debug1: Authentications that can continue: publickey 
debug1: Next authentication method: publickey 
debug1: Offering RSA public key: [email protected] 
debug1: Authentications that can continue: publickey 
debug1: Trying private key: /home/brice/.ssh/namaste_3.pem 
debug1: Authentications that can continue: publickey 
debug1: No more authentication methods to try. 
Permission denied (publickey). 

Jeder Hinweis? Ich fühle mich wirklich nicht, eine neue Instanz von Grund auf, wie das Starten ...

+0

einen Test Versuchen: Sie können auf eine andere Maschine ssh? Es könnte etwas auf die Linien von http://askubuntu.com/questions/343060/no-more-authentication-methods-to-try-permission-denied-publickey/343217 (Berechtigungen sind falsch auf einer der Maschinen) –

+0

Danke für die Antwort. Ich hatte keine andere laufende Instanz. Ich habe das aus dem aws-Dashboard geklont. Nun ... Kein Problem damit. –

+0

Ich kann immer noch nicht auf meine alte Instanz zugreifen und ich verstehe nicht warum. Ich habe ein paar Stunden gebraucht, um auf die Beine zu kommen ... Auch wenn das noch eine Beta ist, muss ich meine Backup-Strategie erhöhen ... –

Antwort

0

der Key-Datei ändern zu entfernen, wenn die Instanz Bei einer EBS-Root-Instanz können Sie diese IMMER diagnostizieren, indem Sie das Root-Volume von der Instanz auf UNMOUNT setzen und es dann in eine laufende EC2-Instanz einbinden, um zu prüfen, was mit den EC2 /home/ubuntu/.ssh/authorized_keys falsch läuft.

Erstellen Sie einen Snapshot für das Volume, bevor Sie Änderungen vornehmen. Nachdem Sie es behoben haben, mounten Sie es einfach zurück in die Instanz.

Der Versuch, das EC2 /home/ubuntu/.ssh mit dem chmod 600 zu härten, verursacht durch Zufall immer das Problem. Du brauchst mindestens u + rwx für ~/.ssh Ordner. Weil die richtigen Wege das sind.

chmod 700 ~/.ssh 
chmod 600 ~/.ssh/* 

Also immer 700 für den Ordner. NICHT 600.

Fragen Sie mich nicht, warum ich weiß, das ist ;-)

+0

Danke für die Antwort. Ich werde versuchen, die Berechtigungen entsprechend zu ändern, aber ich habe gerade die Instanz gestoppt und eine andere gestartet. Kostet mich nur ein paar Stunden. Immer wenn ich überprüfen, dass ich wieder bei dir sein werde. –

0

Erster Versuch Eintrag von known_hosts

ssh-keygen -R hostname/IP 

Dann Erlaubnis zu 400

+0

Das habe ich schon ausprobiert. Es ändert nichts. –