SSH を使用した Linux インスタンスへの接続 - Amazon Elastic Compute Cloud

SSH を使用した Linux インスタンスへの接続

インスタンスを起動したら、これに接続し、普通のコンピュータと同じように使用できます。

次の手順では、SSH クライアントを使って、インスタンスに接続する方法について説明します。インスタンスの接続でエラーが発生した場合は、「インスタンスへの接続に関するトラブルシューティング」を参照してください。接続オプションの詳細については、「」を参照してくださいLinux インスタンスへの接続

Prerequisites

Linux インスタンスに接続する前に、以下の前提条件を満たしていることを確認してください。

インスタンスのステータスの確認

インスタンスを起動してから接続できるようになるまでには、数分かかる場合があります。インスタンスのステータスチェックが成功していることを確認します。この情報は、[Instances (インスタンス)] ページの [Status check (ステータスチェック)] 列で確認できます。

インスタンスに接続するためのパブリック DNS 名とユーザー名の取得

インスタンスのパブリック DNS 名または IP アドレス、およびインスタンスへの接続に使用するユーザー名を確認するには、「インスタンスへの接続の前提条件」を参照してください。

プライベートキーを見つけ、アクセス許可を設定する

インスタンスへの接続に必要なプライベートキーを特定し、キーのアクセス許可を設定するには、「プライベートキーを見つけ、アクセス許可を設定する」を参照してください。

必要に応じてローカルコンピューターに SSH クライアントをインストールする

ローカルコンピューターには、デフォルトで SSH クライアントがインストールされている場合があります。これは、コマンドラインに「ssh」と入力することで確認できます。ご使用のコンピュータでこのコマンドが認識されない場合、SSH クライアントをインストールできます。

  • 最近バージョンの Windows サーバー 2019 と Windows 10 - OpenSSH がインストール可能なコンポーネントとして含まれています。詳細については、「Windows での OpenSSH」を参照してください。

  • 以前のバージョンの Windows - OpenSSH をダウンロードしてインストールします。詳細については、「Win32-OpenSSH」を参照してください。

  • Linux および MacOS X - OpenSSH をダウンロードしてインストールします。詳細については、https://www.openssh.com を参照してください。

SSH クライアントを使用して Linux インスタンスに接続する

SSH クライアントを使用して Linux インスタンスに接続するには、次の手順に従います。インスタンスの接続でエラーが発生した場合は、「インスタンスへの接続に関するトラブルシューティング」を参照してください。

SSH を使用してインスタンスに接続するには

  1. ターミナルウィンドウで ssh コマンドを使用して、インスタンスに接続します。プライベートキー (.pem) のパスとファイル名、インスタンスのユーザー名、およびインスタンスのパブリック DNS 名や IPv6 アドレスを指定します。プライベートキー、インスタンスのユーザー名、およびインスタンスの DNS 名や IPv6 アドレスの検索方法の詳細については、「プライベートキーを見つけ、アクセス許可を設定する」および「インスタンスに関する情報を取得する」を参照してください。インスタンスに接続するには、次のいずれかのコマンドを使用します。

    • (パブリック DNS) インスタンスのパブリック DNS 名を使用して接続するには、次のコマンドを入力します。

      ssh -i /path/my-key-pair.pem my-instance-user-name@my-instance-public-dns-name
    • (IPv6) インスタンスに IPv6 アドレスがある場合、インスタンスの IPv6 アドレスを使用して接続するには、次のコマンドを入力します。

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

    以下のようなレスポンスが表示されます。

    The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (198-51-100-1)' can't be established.
    ECDSA key fingerprint is l4UB/neBad9tvkgJf1QZWxheQmR59WgrgzEimCG6kZY.
    Are you sure you want to continue connecting (yes/no)?
  2. (オプション) セキュリティアラートのフィンガープリントが、(オプション) インスタンスのフィンガープリントを取得する で事前に取得したフィンガープリントと一致することを確認します。これらのフィンガープリントが一致しない場合、「中間者 (MITM) 」攻撃を受けている可能性があります。一致した場合は、次のステップに進んでください。

  3. yes と入力します。

    以下のようなレスポンスが表示されます。

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

SCP クライアントを使用した Linux インスタンスへのファイルの転送

ローカルコンピュータと Linux インスタンスの間でファイルを転送する方法の 1 つとして、セキュアコピープロトコル (SCP) を使用します。このセクションでは、SCP でファイルを転送する方法について説明します。この手順は、SSH を使用してインスタンスに接続する手順と似ています。

Prerequisites

  • インスタンスにファイルを転送するための一般的な前提条件の確認

    インスタンスにファイルを転送するための一般的な前提条件は、インスタンスに接続するための一般的な前提条件と同様です。詳細については、「インスタンスに接続するための一般的な前提条件」を参照してください。

  • SCP クライアントのインストール

    ほとんどの Linux、Unix、および Apple コンピュータには、デフォルトで SCP クライアントが含まれています。含まれていない場合は、OpenSSH プロジェクトから、SSH ツールの完全なスイートの無料実装が提供されており、これに SCP クライアントが含まれます。詳細については、https://www.openssh.com を参照してください。

以下では、インスタンスのパブリック DNS 名、またはインスタンスに IPv6 アドレスがある場合は IPv6 アドレスを使用し、SCP でファイルを転送する手順を示します。

SCP を使用してコンピュータとインスタンス間でファイルを転送するには

  1. コンピュータ上のソースファイルの場所と、インスタンス上の送信先パスを決定します。以下の例では、プライベートキーファイルの名前が my-key-pair.pem、転送するファイルが my-file.txt、インスタンスのユーザー名が ec2-user、インスタンスのパブリック DNS の名前が my-instance-public-dns-name で、インスタンスの IPv6 アドレスが my-instance-IPv6-address です。

    • (パブリック DNS) インスタンスの送信先にファイルを転送するには、コンピュータから次のコマンドを入力します。

      scp -i /path/my-key-pair.pem /path/my-file.txt ec2-user@my-instance-public-dns-name:path/
    • (IPv6) インスタンスに IPv6 アドレスがある場合、インスタンスの送信先にファイルを転送するには、コンピュータから次のコマンドを入力します。IPv6 アドレスは、([ ]) でエスケープした角かっこ (\) で囲む必要があります。

      scp -i /path/my-key-pair.pem /path/my-file.txt ec2-user@\[my-instance-IPv6-address\]:path/
  2. SSH を使用してインスタンスに接続していない場合は、次のようなレスポンスが表示されます。

    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)?

    (オプション) オプションで、セキュリティアラートのフィンガープリントがインスタンスのフィンガープリントと一致することを確認できます。詳細については、「(オプション) インスタンスのフィンガープリントを取得する」を参照してください。

    yes と入力します。

  3. 転送が成功した場合、レスポンスは以下のようになります。

    Warning: Permanently added 'ec2-198-51-100-1.compute-1.amazonaws.com' (RSA) 
    to the list of known hosts.
    my-file.txt                                100%   480     24.4KB/s   00:00
  4. 逆の方向 (Amazon EC2 インスタンスからコンピュータ) にファイルを転送するには、ホストパラメータの順番を逆にします。たとえば、次の例に示すように、EC2 インスタンスからローカルコンピュータの送信先に my-file.txt として my-file2.txt を転送できます。

    • (パブリック DNS) コンピューターの送信先にファイルを転送するには、コンピュータから次のコマンドを入力します。

      scp -i /path/my-key-pair.pem ec2-user@my-instance-public-dns-name:path/my-file.txt path/my-file2.txt
    • (IPv6) インスタンスに IPv6 アドレスがある場合、コンピュータの送信先にファイルを転送するには、コンピュータから次のコマンドを入力します。IPv6 アドレスは、([ ]) でエスケープした角かっこ (\) で囲む必要があります。

      scp -i /path/my-key-pair.pem ec2-user@\[my-instance-IPv6-address\]:path/my-file.txt path/my-file2.txt