一般的な接続の前提条件 - Amazon Elastic Compute Cloud

一般的な接続の前提条件

インスタンスに接続するための一般的な前提条件を次に示します。選択した接続オプションに固有の前提条件が別に存在する場合もあります。

一般的な前提条件

必要なインスタンスの詳細を取得する

インスタンスに接続する準備をするには、アマゾン EC2 コンソールまたはコマンドラインを使用して次の情報を取得します。

アマゾン EC2 コンソールのインスタンスペインを開きます。
  • インスタンスのパブリック DNS 名を取得します。

    アマゾン EC2 コンソールから、インスタンスのパブリック DNS を取得できます。[インスタンス] ペインの [パブリック IPv4 DNS] 列を確認します。この列が非表示になっている場合は、画面右上部にある設定アイコン The gear icon. を選択し、[パブリック IPv4 DNS] を選択してください。パブリック DNS は、[インスタンス] ペインのインスタンス情報セクションにもあります。アマゾン EC2 コンソールの [インスタンス] ペインでインスタンスを選択すると、そのインスタンスに関する情報がページの下半分に表示されます。[詳細] タブで、[パブリック IPv4 DNS] を探します。

    その代わりに、describe-instances AWS CLIまたは Get-EC2Instance AWS Tools for Windows PowerShellコマンドを使用することもできます。

    [パブリック IPv4 DNS] が表示されない場合は、[インスタンスの状態][実行中] であり、プライベートサブネットでインスタンスを起動していないことを確認します。インスタンス起動ウィザードを使用してインスタンスを起動した場合[ネットワーク設定][パブリック IP の自動割り当て] フィールドを編集して、値を [無効] に変更した可能性があります。[パブリック IP の自動割り当て] オプションを無効にすると、インスタンスは起動時にパブリック IP アドレスが割り当てられません。

  • (IPv6 のみのインスタンス) インスタンスの IPv6 アドレスを取得します。

    自分のインスタンスに IPv6 アドレスを割り当てている場合は、オプションで、パブリック IPv4 アドレスまたはパブリック IPv4 DNS のホスト名の代わりに、IPv6 アドレスを使用してインスタンスに接続することも可能です。ローカルコンピュータに IPv6 アドレスがあり、IPv6 を使用するように設定されている必要があります。アマゾン EC2 コンソールから、インスタンスの IPv6 アドレスを取得できます。[インスタンス] ペインの [IPv6 IPs] 列を確認します。または、インスタンス情報セクションで IPv6 アドレスを確認できます。アマゾン EC2 コンソールの [インスタンス] ペインでインスタンスを選択すると、そのインスタンスに関する情報がページの下半分に表示されます。[詳細] タブで、[IPv6 アドレス] を探します。

    その代わりに、describe-instances AWS CLIまたは Get-EC2Instance AWS Tools for Windows PowerShellコマンドを使用することもできます。IPv6 の詳細については、IPv6 アドレスを参照してください。

  • (Linux インスタンス) インスタンスのユーザー名を取得します。

    インスタンスに接続するにはユーザーアカウントのユーザー名、またはインスタンスの起動に使用した AMI のデフォルトのユーザー名を使用します。

    • ユーザーアカウントのユーザー名を取得します。

      ユーザーアカウントの作成方法についてはAmazon EC2 Linux インスタンスのシステムユーザーを管理するを参照してください。

    • インスタンスの起動に使用した AMI のデフォルトのユーザー名を取得します。

      • アマゾン Linux - ec2-user

      • CentOScentos または ec2-user

      • Debian - admin

      • Fedorafedora または ec2-user

      • RHELec2-user または root

      • SUSEec2-user または root

      • Ubuntu - ubuntu

      • Oracleec2-user

      • Bitnamibitnami

      • Rocky Linuxrocky

      • その他 – AMI プロバイダーに確認してください。

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

SSH を使用した Linux インスタンスへ初期接続、または RDP を使用した Windows インスタンスへの初期接続を行うには、プライベートキーファイルの場所を知る必要があります。SSH 接続の場合、お客様のみがプライベートキーを読み込みできるようにファイルのアクセス許可を設定する必要があります。

アマゾン EC2 を使用する際のキーペアの仕組みについては、「アマゾン EC2 のキーペアと アマゾン EC2 インスタンス」を参照してください。

  • プライベートキーを見つけます。

    インスタンスの起動時に指定したキーペアの .pem ファイルの、コンピュータ上の場所への完全修飾パスを取得します。詳細については、「起動時に指定されたパブリックキーを特定する」を参照してください。

    プライベートキーファイルが見つからない場合は、「プライベートキーを紛失しました。自分のインスタンスに接続するにはどうすればよいですか?」を参照してください。

    (Linux インスタンス) PuTTY を使用してインスタンスに接続していて、.pem ファイルを .ppk に変換する必要がある場合は、「PuTTYgen を使用してプライベートキーを変換する」を参照してください。

  • (Linux インスタンス) プライベートキーへのアクセス許可を設定し、お客様のみが読み込みできるようにします。

    • macOS または Linux から接続する

      macOS または Linux コンピュータの SSH クライアントを使用して Linux インスタンスに接続する予定がある場合は、自分以外のユーザーが読み込むことができないように、次のコマンドを使用してプライベートキーファイルの許可を設定します。

      chmod 400 key-pair-name.pem

      これらのアクセス権限を設定しないと、このキーペアを使用してインスタンスに接続できません。詳細については、「エラー: Unprotected Private キー ファイル (保護されていないプライベートキーファイル)」を参照してください。

    • Windows から接続する

      ファイルエクスプローラーを開き、.pem ファイルを右クリックしてください。[プロパティ] を選択し、[セキュリティ] タブ、[詳細設定] の順に選択してください。それから [継承の無効化] を選択してください。現在のユーザーを除くすべてのユーザーのアクセスを削除します。

(オプション) インスタンスのフィンガープリントを取得する

中間者攻撃から自身を保護する場合、表示されるフィンガープリントを検証することで、接続しようとしているインスタンスの信頼性を検証できます。フィンガープリントの検証は、サードパーティが提供するパブリック AMI からインスタンスを起動した場合に役立ちます。

タスクの概要

まず、インスタンスのインスタンスフィンガープリントを取得します。次に、インスタンスに接続してフィンガープリントを確認するように求められたら、この手順で取得したフィンガープリントと表示されるフィンガープリントを比較します。これらのフィンガープリントが一致しない場合、何者かが中間者 (MITM) 攻撃を試みている可能性があります。一致する場合には、安心してインスタンスに接続できます。

インスタンスのフィンガープリントを取得するための前提条件
  • インスタンスが pending の状態であってはいけません。フィンガープリントは、インスタンスの最初の起動が完了した後にのみ使用できます。

  • コンソール出力を取得するには、インスタンス所有者である必要があります。

  • インスタンスフィンガープリントを取得するには、さまざまな方法があります。AWS CLI を使用する場合は、ローカルコンピュータにインストールする必要があります。AWS CLI のインストールについては、AWS Command Line Interface デベロッパーガイドの Getting started with the AWS CLIを参照し.てください。

インスタンスのフィンガープリントを取得するには

ステップ 1 では、インスタンスフィンガープリントを含むコンソール出力を取得します。ステップ 2 では、コンソール出力でインスタンスフィンガープリントを見つけます。

  1. コンソール出力を取得するには、以下のいずれかの方法を使用します。

    Console
    1. アマゾン EC2 コンソール のhttps://console.aws.amazon.com/ec2/ を開いてください。

    2. 左のナビゲーターの [インスタンス] を選択してください。

    3. インスタンスを選択してから、[アクション][モニタリングとトラブルシューティング][システムログを取得] の順に選択してください。

    AWS CLI

    使用するローカルコンピュータ (お客様が接続しているインスタンス上ではなく) で get-console-output コマンドを使用します。出力が大きい場合は、出力をテキストファイルにパイプして読み込みやすいようにすることができます。AWS CLI を使用する際は、明示的にまたはデフォルトリージョンを設定して、AWS リージョン を指定する必要があることに注意してください。リージョンを設定または指定する方法については、「AWS Command Line Interface ユーザーガイド」の「Configure the AWS CLI」を参照してください。

    aws ec2 get-console-output --instance-id instance_id --query Output --output text > temp.txt
  2. コンソール出力で、BEGIN SSH HOST KEY FINGERPRINTS にあるインスタンス (ホスト) フィンガープリントを見つけます。インスタンスフィンガープリントが複数ある場合があります。インスタンスに接続すると、フィンガープリントの 1 つだけが表示されます。

    正確な出力は、オペレーティングシステム、AMI バージョン、AWS でキーペアを作成したかどうかによって異なります。以下は出力例です。

    ec2:############################################################# ec2: -----BEGIN SSH HOST KEY FINGERPRINTS----- ec2: 256 SHA256:l4UB/neBad9tvkgJf1QZWxheQmR59WgrgzEimCG6kZY no comment (ECDSA) ec2: 256 SHA256:kpEa+rw/Uq3zxaYZN8KT501iBtJOIdHG52dFi66EEfQ no comment (ED25519) ec2: 2048 SHA256:L8l6pepcA7iqW/jBecQjVZClUrKY+o2cHLI0iHerbVc no comment (RSA) ec2: -----END SSH HOST KEY FINGERPRINTS----- ec2: #############################################################
    注記

    このフィンガープリントは、インスタンスに接続するときに参照してください。