it-swarm.com.de

SSH für Amazon EC2-Instanz mit PuTTY in Windows

Ich bin ein Neuling in Amazon Web Services, habe versucht, eine Amazon-Instanz zu starten und ssh dazu zu verwenden, indem PuTTY von Windows verwendet wird. Dies sind die Schritte, die ich befolgt habe,

  1. Ein Schlüsselpaar erstellt.

  2. Sicherheitsgruppe mit Regel für SSH und HTTP erstellt.

  3. Gestartet und Instanz von EC2 mit dem obigen Schlüsselpaar und der Sicherheitsgruppe.

  4. Mit puttygen wurde die * .pem-Datei in * .ppk umgewandelt

  5. Mit PuTTY wurde eine Verbindung zu den öffentlichen DNS der Instanz hergestellt und die * .ppk-Datei bereitgestellt.

Ich habe mich mit 'root' und 'ec2-user' angemeldet und die ppk-Datei mit SSH1 und SSH2 erstellt. Bei all diesen Versuchen erhalte ich folgende Fehlermeldung in PuTTY:

"Server hat unseren Schlüssel abgelehnt"

Können Sie bitte helfen, Anregungen würden uns sehr freuen.

30
konkani

Ich gehe davon aus, dass das OP dies herausgefunden hat oder sich anderweitig bewegt hat, aber die Antwort ist, ubuntu als Benutzer zu verwenden (wenn der Server Ubuntu ist).

31
mikeabout

1) Stellen Sie sicher, dass in der Sicherheitsgruppe der EC2-Instanz der Port 22 (SSH) geöffnet ist.

2) Versuchen Sie, eine Verbindung mit Elastic IP anstelle eines öffentlichen DNS-Namens herzustellen.

Ich hoffe, Sie haben diese Schritte befolgt Verbinden von EC2 von einem Windows-Computer mit PuTTY

10
shashankaholic

Eine andere Situation, in der ich die Fehlermeldung "Server hat unseren Schlüssel abgelehnt" erhalten hat, wenn PuTTY von Windows zu ssh für eine EC2-Instanz mit Ubuntu verwendet wird:

Der private Schlüssel wurde falsch von .pem in .ppk konvertiert. 

puttygen hat zwei Möglichkeiten, "Schlüssel umzuwandeln". 

  1. Laden Sie Ihre .pem-Datei mit der Option File-> Load Private Key in puttygen und speichern Sie sie als .ppk-Datei mit der Taste Save Private Key
  2. DO NOT Verwenden Sie die Menüoption Conversions-> Import Key, um die von EC2 generierte PEM-Datei zu laden.

    Sehen Sie sich die Puttygen-Screenshots unten an, wobei die beiden Menüoptionen markiert sind.

 Correct menu option with puttygen  Wring menu option with puttygen

4
prajod

Überprüfen Sie den Benutzernamen. Es sollte "ubuntu" für Ihren Computer sein. Überprüfen Sie, ob der Datenverkehr an Port 22 in der Sicherheitsgruppe aktiviert ist. Überprüfen Sie, ob Sie die richtige URL verwenden, d. H. Ubuntu @ public/elasticip

2
Mohit Singh

Ich hatte ein ähnliches Problem, als ich versuchte, eine Instanz anzuschließen, die automatisch vom Elastic Beanstalk-Dienst (EBS) erstellt wurde. Nachdem ich meinen vorhandenen Schlüsselnamen mit der EBS verknüpft hatte (unter Umgebungsdetails -> Konfiguration bearbeiten -> Registerkarte Server -> Vorhandenes Schlüsselpaar), konnte ich mich mit 'ec2-user' und meiner vorhandenen Schlüsseldatei (konvertiert in .ppk) mit PuTTY.

Dies beendet jedoch die laufende Instanz und erstellt eine neue Instanz mit Zugriff über das oben genannte Schlüsselpaar.

1
RVK

Für den Fall, dass es anderen hilft, ist dieser Fehler aufgetreten, nachdem die Berechtigungen für den Basisordner in meiner Instanz geändert wurden. Ich testete etwas und hatte chmod -R 777 in meinem Home-Ordner ausgeführt. Sobald dies geschehen war, wurde ich nach dem Ausloggen effektiv gesperrt.

1
Jamie Poole

Vielleicht eine Überprüfung wert. Gehen Sie zur AWS-Konsole, klicken Sie mit der rechten Maustaste auf die Instanz und wählen Sie "Verbinden ...". Es zeigt Ihnen den DNS-Namen, den Sie verwenden möchten. Wenn Sie diese Instanz zu einem bestimmten Zeitpunkt erneut gestartet haben, könnte sich dieser DNS-Name geändert haben.

1
Sandron

Versuchen Sie es mit einem alternativen SSH-Client wie Poderosa . Es akzeptiert Pem-Dateien, sodass Sie die Schlüsseldatei nicht konvertieren müssen.

0
Barak

Ich hatte das gleiche Problem (und führte die gleichen Schritte durch), bis ich den Benutzernamen in 'admin' für das von mir verwendete Debian-AMI änderte. 

Sie sollten den Benutzernamen des verwendeten AMI nachschlagen. Das Debian-AMI ist hier dokumentiert http://wiki.debian.org/Cloud/AmazonEC2Image/Squeeze

0
remipod

Ich benutze Debain AMI und versuche es mit ec2-user.

0
Ace

Ich hatte das gleiche Problem. Das AMI, das Sie verwenden, wird auch von der Vorlagenlösung "Cloud Formation" verwendet.

Am Ende habe ich das aufgegeben und eine Red Hat-Instanz erstellt. Ich konnte dann per SSH-Verbindung mit dem Benutzer root eine Verbindung herstellen.

Die Anweisungen hier: http://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/PuTTY.html funktionieren gut mit einer Red Hat-Instanz, jedoch nicht mit einer Amazon Linux-Instanz. Ich gehe davon aus, dass sie einen Benutzernamen haben, den ich nicht ausprobierte (root, ec2-user und viele andere offensichtliche, alle wurden abgelehnt).

Hoffe das hilft jemandem!

0
Coder

Ich gehe davon aus, dass Sie diesen Leitfaden befolgen und mithilfe der Anweisungen auf der Folgeseite eine Verbindung herstellen . Überprüfen Sie ein paar Dinge: 

  1. Sie haben den Schlüssel richtig konvertiert, z. wählte die richtige .pem-Datei aus, die als private -Taste gespeichert wurde, 1024-Bit-SSH-2-RSA 
  2. Die Auth-Einstellungen (Schritt 4 im Verbindungs-Tutorial) sind korrekt
0
Geoff

Der gleiche Fehler trat auf, als ich versuchte, ein neues Schlüsselpaar zu erstellen und diese neue pem/ppk-Datei zu verwenden. Mir ist aufgefallen, dass das Feld "Name des Schlüsselpaars" in der Instanz immer noch das alte Feld war und sich im Stöbern befand. Anscheinend können Sie nicht ändern ein Schlüsselpaar. Also ging ich zum ursprünglichen Schlüsselpaar zurück. Zum Glück habe ich nichts gelöscht, das war also einfach genug.

0