Herstellen einer Verbindung zu Ihrer Linux-Instance von Windows mithilfe des Windows-Subsystems für Linux - Amazon Elastic Compute Cloud

Herstellen einer Verbindung zu Ihrer Linux-Instance von Windows mithilfe des Windows-Subsystems für Linux

Nachdem Sie Ihre Instance gestartet haben, können Sie sich mit ihr verbinden und sie so verwenden wie einen Computer, vor dem Sie sitzen.

Im Folgenden wird beschrieben, wie Sie mit einer Linux-Distribution im Windows-Subsystem für Linux (WSL) eine Verbindung mit Ihrer Instance herstellen. WSL kann kostenlos heruntergeladen werden und ermöglicht Ihnen, native Linux-Befehlszeilen-Tools direkt unter Windows neben Ihrem herkömmlichen Windows-Desktop auszuführen, und zwar ohne den Aufwand einer virtuellen Maschine.

Durch Installieren von WSL können Sie eine native Linux-Umgebung anstatt PuTTY oder PuTTYgen verwenden, um eine Verbindung mit Ihren EC2-Instances herzustellen. Die Linux-Umgebung vereinfacht die Verbindungsherstellung mit Ihren Linux-Instances, da sie einen nativen SSH-Client umfasst, den Sie verwenden können, um eine Verbindung mit Ihren Linux-Instances herzustellen und die Berechtigungen der PEM-Schlüsseldatei zu ändern. Die Amazon EC2-Konsole stellt den SSH-Befehl für die Verbindung mit der Linux-Instance bereit und Sie können eine ausführliche Ausgabe vom SSH-Befehl zwecks Fehlerbehebung abrufen. Weitere Informationen finden Sie in der Dokumentation zum Windows-Subsystem für Linux.

Anmerkung

Nach der Installation von WSL gelten alle Voraussetzungen und Schritte wie in Herstellen einer Verbindung zu Ihrer Linux-Instance über SSH beschrieben und die Benutzererfahrung entspricht der mit nativem Linux.

Wenn Sie bei dem Versuch, eine Verbindung mit Ihrer Instance herzustellen, einen Fehler erhalten, schlagen Sie unter Beheben von Verbindungsproblemen mit Ihrer Instance nach.

Voraussetzungen

Stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind, bevor Sie eine Verbindung mit Ihrer Linux-Instance herstellen.

Überprüfen Sie, ob die Instance bereit ist.

Wenn Sie die Instance starten, kann es einige Minuten dauern, bis die Instance zur Verbindung bereitsteht. Stellen Sie sicher, dass Ihre Instance ihre Statusprüfungen bestanden hat. Sie können diese Informationen auf der Seite Instances in der Spalte Statusprüfungen anzeigen.

Überprüfen der allgemeinen Voraussetzungen für das Herstellen einer Verbindung mit einer Instance

Informationen zum öffentlichen DNS-Namen oder der IP-Adresse Ihrer Instance und zum Benutzernamen, den Sie für die Verbindung mit Ihrer Instance verwenden sollten, finden Sie unter Allgemeine Voraussetzungen für das Herstellen einer Verbindung zu Ihrer Instance.

Installieren des Windows-Subsystems für Linux (WSL) sowie einer Linux-Distribution auf Ihrem lokalen Computer

Installieren Sie WSL und eine Linux-Distribution mithilfe der Anleitung im Installationshandbuch für Windows 10. Mit dem in der Anleitung genannten Beispiel wird die Ubuntu-Distribution von Linux installiert, Sie können jedoch jede beliebige Distribution installieren. Sie werden zum Neustart Ihres Computers aufgefordert, damit die Änderungen wirksam werden.

Den privaten Schlüssel aus Windows in WSL kopieren

Kopieren Sie in einem WSL-Terminal-Fenster die Datei .pem (für das Schlüsselpaar, das Sie beim Start der Instance angegeben haben) aus Windows in WSL. Beachten Sie den vollqualifizierten Pfad zur Datei .pem in WSL, der zum Herstellen der Verbindung mit Ihrer Instance verwendet wird. Informationen dazu, wie Sie den Pfad zu Ihrem Windows-Laufwerk angeben, finden Sie unter How do I access my C drive?. Weitere Informationen zu Schlüsselpaaren und Windows-Instances finden Sie unter Amazon EC2-Schlüsselpaare und Windows-Instances.

cp /mnt/<Windows drive letter>/path/my-key-pair.pem ~/WSL-path/my-key-pair.pem

Herstellen einer Verbindung zu Ihrer Linux-Instance mit WSL

Führen Sie die folgenden Schritte aus, um mit dem Windows-Subsystem für Linux (WSL) eine Verbindung mit Ihrer Linux-Instance herzustellen. Wenn Sie bei dem Versuch, eine Verbindung mit Ihrer Instance herzustellen, einen Fehler erhalten, schlagen Sie unter Beheben von Verbindungsproblemen mit Ihrer Instance nach.

So stellen Sie per SSH eine Verbindung mit Ihrer Instance her

  1. Verwenden Sie in einem Terminalfenster den Befehl ssh, um eine Verbindung mit der Instance herzustellen. Sie geben den Pfad und Dateinamen des privaten Schlüssels (.pem), den Benutzernamen für Ihre Instance und den öffentlichen DNS-Namen oder die IPv6-Adresse für Ihre Instance an. Weitere Informationen zum Suchen des privaten Schlüssels, des Benutzernamens für Ihre Instance und des DNS-Namens oder der IPv6-Adresse für eine Instance finden Sie unter Auffinden des privaten Schlüssels und Anfordern von Informationen zu Ihrer Instance. Um eine Verbindung mit Ihrer Instance herzustellen, verwenden Sie einen der folgenden Befehle.

    • (Öffentliches DNS) Geben Sie den folgenden Befehl ein, um eine Verbindung mit dem öffentlichen DNS-Namen Ihrer Instance herzustellen.

      sudo ssh -i /path/my-key-pair.pem my-instance-user-name@my-instance-public-dns-name
    • (IPv6) Wenn Ihre Instance über eine IPv6-Adresse verfügt, können Sie alternativ über ihre IPv6-Adresse eine Verbindung mit der Instance herstellen. Geben Sie den Befehl ssh mit dem Pfad zur Datei mit dem privaten Schlüssel (.pem), den entsprechenden Benutzernamen und die IPv6-Adresse an.

      sudo ssh -i /path/my-key-pair.pem my-instance-user-name@my-instance-IPv6-address

    Sie erhalten in etwa folgende Antwort:

    The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (10.254.142.33)'
    can't be established.
    RSA key fingerprint is 1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f.
    Are you sure you want to continue connecting (yes/no)?
  2. (Optional) Vergewissern Sie sich, dass der Fingerabdruck in der Sicherheitswarnung mit dem Fingerabdruck übereinstimmt, den Sie zuvor unter (Optional) Anfordern des Instance-Fingerabdrucks abgerufen haben. Wenn diese Fingerabdrücke nicht übereinstimmen, wird ggf. versucht, einen Man-In-the-Middle-Angriff durchzuführen. Falls die Fingerabdrücke übereinstimmen, können Sie mit dem nächsten Schritt fortfahren.

  3. Geben Sie yes ein.

    Sie erhalten in etwa folgende Antwort:

    Warning: Permanently added 'ec2-198-51-100-1.compute-1.amazonaws.com' (RSA) 
    to the list of known hosts.

Übertragen von Dateien aus Linux auf Linux-Instances per SCP

Eine Möglichkeit, Dateien zwischen Ihrem lokalen Computer und einer Linux-Instance zu übertragen, ist die Verwendung von Secure Copy Protocol (SCP). In diesem Abschnitt wird beschrieben, wie Sie Dateien mit SCP übertragen. Die Vorgehensweise ähnelt den Schritten zum Herstellen einer Verbindung mit einer Instance per SSH.

Voraussetzungen

  • Überprüfen Sie die allgemeinen Voraussetzungen für das Übertragen von Dateien zu Ihrer Instance.

    Die allgemeinen Voraussetzungen für das Übertragen von Dateien zu einer Instance entsprechen den allgemeinen Voraussetzungen für das Herstellen einer Verbindung mit einer Instance. Weitere Informationen finden Sie unter Allgemeine Voraussetzungen für das Herstellen einer Verbindung zu Ihrer Instance.

  • Installieren eines SCP-Clients

    Die meisten Linux-, Unix- und Apple-Computer enthalten standardmäßig einen SCP-Client. Falls dies bei Ihnen nicht der Fall ist, können Sie über das OpenSSH-Projekt die kostenlose Implementierung der gesamten SSH-Tools nutzen, einschließlich des SCP-Clients. Weitere Informationen erhalten Sie unter http://www.openssh.org.

Im Folgenden wird die Verwendung von SCP zum Übertragen einer Datei Schritt für Schritt beschrieben. Wenn Sie bereits per SSH eine Verbindung mit der Instance hergestellt und die dazugehörigen Fingerabdrücke überprüft haben, können Sie mit dem Schritt beginnen, der den SCP-Befehl enthält (Schritt 4).

So verwenden Sie SCP zum Übertragen einer Datei

  1. Übertragen Sie eine Datei auf Ihre Instance, indem Sie den öffentlichen DNS-Namen der Instance verwenden. Verwenden Sie beispielsweise einen der folgenden Befehle, um die Datei in das Stammverzeichnis my-instance-user-name zu kopieren, wenn der Name der Datei mit dem privaten Schlüssel my-key-pair, die zu übertragende Datei SampleFile.txt, der Benutzername my-instance-user-name und der öffentliche DNS-Name für die Instance my-instance-public-dns-name oder die IPv6-Adresse my-instance-IPv6-address lautet.

    • (Öffentliches DNS) Geben Sie den folgenden Befehl ein, um eine Datei mithilfe des öffentlichen DNS-Namens Ihrer Instance zu übertragen.

      scp -i /path/my-key-pair.pem /path/SampleFile.txt my-instance-user-name@my-instance-public-dns-name:~
    • (IPv6) Wenn Ihre Instance über eine IPv6-Adresse verfügt, können Sie eine Datei mit der IPv6-Adresse der Instance übertragen. Die IPv6-Adresse muss in eckige Klammern ([ ]) gesetzt werden, die mit einem Escape-Zeichen (\) versehen sein müssen.

      scp -i /path/my-key-pair.pem /path/SampleFile.txt my-instance-user-name@\[my-instance-IPv6-address\]:~

    Sie erhalten in etwa folgende Antwort:

    The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (10.254.142.33)'
    can't be established.
    RSA key fingerprint is 1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f.
    Are you sure you want to continue connecting (yes/no)?
  2. (Optional) Vergewissern Sie sich, dass der Fingerabdruck in der Sicherheitswarnung mit dem Fingerabdruck übereinstimmt, den Sie zuvor unter (Optional) Anfordern des Instance-Fingerabdrucks abgerufen haben. Wenn diese Fingerabdrücke nicht übereinstimmen, wird ggf. versucht, einen Man-In-the-Middle-Angriff durchzuführen. Falls die Fingerabdrücke übereinstimmen, können Sie mit dem nächsten Schritt fortfahren.

  3. Geben Sie yes ein.

    Sie erhalten in etwa folgende Antwort:

    Warning: Permanently added 'ec2-198-51-100-1.compute-1.amazonaws.com' (RSA) 
    to the list of known hosts.
    Sending file modes: C0644 20 SampleFile.txt
    Sink: C0644 20 SampleFile.txt
    SampleFile.txt                                100%   20     0.0KB/s   00:00

    Wenn Sie den Fehler „bash: scp: command not found“ erhalten, müssen Sie auf Ihrer Linux-Instance zuerst scp installieren. Bei einigen Betriebssystemen ist SCP im openssh-clients-Paket enthalten. Verwenden Sie für Amazon Linux-Varianten, z. B. das Amazon ECS-optimierte AMI, den folgenden Befehl zum Installieren von scp:

    [ec2-user ~]$ sudo yum install -y openssh-clients
  4. Kehren Sie die Reihenfolge der Hostparameter um, um Dateien in der anderen Richtung zu übertragen (von der Amazon EC2 Instance auf Ihren lokalen Computer). Verwenden Sie beispielsweise einen der folgenden Befehle auf Ihrem lokalen Computer, um die Datei SampleFile.txt von Ihrer EC2-Instance unter dem Namen SampleFile2.txt zurück in das Stammverzeichnis Ihres lokalen Computers zu übertragen.

    • (Öffentliches DNS) Geben Sie den folgenden Befehl ein, um eine Datei mithilfe des öffentlichen DNS-Namens Ihrer Instance zu übertragen.

      scp -i /path/my-key-pair.pem my-instance-user-name@ec2-198-51-100-1.compute-1.amazonaws.com:~/SampleFile.txt ~/SampleFile2.txt
    • (IPv6) Wenn Ihre Instance über eine IPv6-Adresse verfügt, geben Sie alternativ den folgenden Befehl ein, um Dateien mit der IPv6-Adresse der Instance in die andere Richtung zu übertragen.

      scp -i /path/my-key-pair.pem my-instance-user-name@\[2001:db8:1234:1a00:9691:9503:25ad:1761\]:~/SampleFile.txt ~/SampleFile2.txt

Deinstallieren von WSL

Informationen zum Deinstallieren des Windows-Subsystems für Linux finden Sie unter How do I uninstall a WSL Distribution?.