Warum kann ich nicht in meine neue EC2-Instanz ssh?

22

Ich habe eine neue Instanz erstellt (winzig, 64-Bit-AMI-Linux von Amazon). Ein neues Schlüsselpaar namens "mir" wurde erstellt. Ich habe es heruntergeladen mir.pemund in meinen ~/.sshOrdner gelegt. Ich habe es sogar getan ssh-add mir.pem.

Dann habe ich es versucht ssh ubuntu@public_DNS_from_amazon

Warum funktioniert es nicht?

Alex
quelle
3
was sagt ssh -v
user9517 unterstützt GoFundMonica
2
Kannst du auch eine machen telnet public_DNS_from_amazon 22? Dies würde die Firewall ausschließen.
Andrew M.
1
I'ld vermeiden telnet und Verwendung nmap zur Überprüfung offene Ports: nmap -PN public_DNS_from_amazon -p 22. ( -PNfalls die Firewall Ping-Anfragen blockiert)
Lekensteyn
2
@Lekensteyn, in diesem Fall gibt es absolut keinen Grund, einen Telnet-Client zu meiden. Er ist perfekt für die Überprüfung von ssh-Ports geeignet, da Sie in den meisten Fällen Klartextinformationen zurückerhalten. Nmap wird (übrigens) seltener installiert als Telnet.
Shadok
Mögliches Duplikat von serverfault.com/questions/245916/… Die Antwort, die für mich funktioniert hat, war, dass die Standardinstallations-Firewall gemäß dieser Antwort vollständig gesperrt ist. serverfault.com/a/245917/108387
Richard Le Mesurier

Antworten:

17

Versuchen Sie es ssh [email protected] -i your-private.key, anstatt ssh-addden Schlüssel zu drücken.

Oh, und stellen Sie sicher, dass Sie TCP-Port 22 durch die Sicherheitsgruppe zugelassen haben.

Tom O'Connor
quelle
Der Hinweis, den Port 22 der Sicherheitsgruppe hinzuzufügen, hat den Trick ausgeführt. Ich benutzte bereitsssh -i private_key
kisanme
7

Ermöglicht die Sicherheitsgruppe (Firewall-Konfiguration) den SSH-Zugriff?

Genauer gesagt: Wählen Sie auf der Seite der AWS-Verwaltungskonsole im linken Bereich (nach unten) die Option Sicherheitsgruppen aus. Wählen Sie im rechten unteren Bereich die Registerkarte "Eingehend" und vergewissern Sie sich, dass "Benutzerdefinierte TCP-Regel" ausgewählt ist. Geben Sie als Portnummer 22 ein, klicken Sie auf die Schaltfläche "Regel hinzufügen" und dann auf die Schaltfläche "Regeländerungen anwenden". Sie müssen Ihre Instanz weder neu starten noch neu starten. Sie müssen lediglich den eingehenden TCP-Port 22 aktivieren

Dennis Benzinger
quelle
Diese Antwort hat mir geholfen. Da meine Instanz Ubuntu ausführt, ersetze 'root' durch ubuntu. Hier ist die Leitung, mit der ich mich vom Terminal aus verbinde: ssh -i ec2vpnkey.pem [email protected]
Dies sollte die akzeptierte Antwort sein. Die wichtigste Information hierbei ist, dass das Feld "Quelle" nicht ausreicht, um die Sicherheitsgruppe selbst zu haben. Quelle muss 0.0.0.0/0 sein
Roothahn
3

Versuchen Sie, entweder root oder ec2-user als Benutzernamen zu verwenden.

BenGC
quelle
0

Sie müssen den SSH-Zugriff auf Ihre Instanzen mit einem ec2-authorize default -p 22Befehl öffnen . Hast du das gemacht?

timurb
quelle
0

Dies ist mir auf einigen meiner EC2-Boxen passiert. Im Allgemeinen scheint es so zu sein, dass SSH beim Versuch, die Verbindung wiederherzustellen, möglicherweise nicht reagiert, wenn ein Prozess den gesamten Prozessor beansprucht oder sich schlecht verhält und die Verbindung getrennt wird. Ein Neustart der Box über die AWS-Konsole hilft häufig.

Eric Skiff
quelle
0

Es ist auch möglich, eine Instanz zu starten, ohne sie einem Schlüsselpaar zuzuordnen. Sie können überprüfen, ob Sie dies beim Starten Ihrer Instanz mit dem von Ihnen beabsichtigten Schlüsselpaar getan haben. Wenn die Instanz mit dem falschen Schlüsselpaar gestartet wurde, müssen Sie die Instanz neu starten.

Jeff Stice-Hall
quelle
0

Um sich in Ihre AMI-Box einzuloggen, verwenden Sie die ec2-user. Dies bedeutet, dass Sie zum Anmelden Folgendes verwenden würden: ssh -i mir.pem ec2-user@public_dnszum Anmelden.


quelle