Amazon EC2 Windows インスタンスへの RDP 接続に関する問題をトラブルシューティングする方法を教えてください
Remote Desktop Protocol (RDP) を使用して Amazon Elastic Compute Cloud (Amazon EC2) Windows インスタンスに接続できません。
簡単な説明
次のような RDP 接続問題が発生する可能性があります。
- 設定ミスが原因で RDP に接続できない。
- 接続に失敗するか、タイムアウトになる。
- "The remote desktop connection request timed out" というエラーメッセージが表示される。
- EC2 インスタンスタイプを変更した後に RDP が失敗する。
- 認証エラーが発生する。
RDP 接続の問題をトラブルシューティングするには、AWSSupport-TroubleshootRDP ランブックを使用して、設定ミスを自動的に特定して解決してください。または、EC2Rescue ツールを使用して、設定の問題を解決するか、設定をロールバックしてください。
それでも接続できない場合は、手動で問題をトラブルシューティングしてください。
**注: ** 以下の解決策の一部では、インスタンスを停止して開始する必要があります。
解決策
インスタンスを停止して開始するように設定する
**注: ** インスタンスを停止して開始すると、インスタンスのパブリック IP アドレスが変更されます。パブリック IP アドレスではなく、Elastic IP アドレスを使用して外部トラフィックをインスタンスにルーティングすることはベストプラクティスです。Amazon Route 53 を使用している場合は、パブリック IP アドレスが変更された際、Route 53 の DNS レコードを更新する必要が生じる場合があります。停止して開始することはインスタンスの再起動とは異なります。詳細については、『EC2 インスタンスの停止および開始の動作』を参照してください。
インスタンスを停止して開始する前に、次のアクションを実行してください。
- インスタンスがインスタンスストアを使用している場合は、インスタンスストアのボリュームデータを永続ストレージに保存します。たとえば、データを Amazon Elastic Block Store (Amazon EBS) ボリュームまたは Amazon Simple Storage Service (Amazon S3) バケットに保存できます。
**重要: ** インスタンスを停止すると、Amazon EC2 はインスタンスストアデータを削除します。 - Amazon EBS ボリュームのスナップショットを作成します。問題が発生した場合は、スナップショットを使用してインスタンスを復元できます。
- インスタンスを停止するときに誤って削除しないように、インスタンスを Amazon EC2 Auto Scaling グループから一時的に削除してください。
**注: ** EC2 Auto Scaling は、スケールイン保護設定に基づいて、Auto Scaling グループ内の停止したインスタンスを削除する場合があります。Amazon EMR、AWS CloudFormation、AWS Elastic Beanstalk を使用して起動するインスタンスが、Auto Scaling グループに属している可能性があります。 - インスタンスを停止したときに削除されないように、インスタンスのシャットダウン動作を [Stop] (停止) に設定してください。
AWSSupport-TroubleshootRDP ランブックを使用して問題を自動的に解決する
**前提条件: ** AWSSupport-TroubleshootRDP ランブックはマネージドインスタンスに対してのみ使用できます。
RDP をブロックする問題を自動的に特定して解決するには、AWSSupport-TroubleshootRDP ランブックを実行してください。
**注: ** オフライン修正の場合、AWSSupport-TroubleshootRDP ランブックは AWSSupport-ExecuteEC2Rescue を呼び出します。AWSSupport-ExecuteEC2Rescue を実行するために必要な AWS Identity and Access Management (IAM) アクセス許可が設定されていることを確認してください。詳細については、AWSSupport-ExecuteEC2Rescue の「必要な IAM アクセス許可」を参照してください。
EC2Rescue を使用して問題を解決するか、設定をロールバックする
次の手順を実行します。
- 元のインスタンスと同じ仮想プライベートクラウド (VPC)、アベイラビリティーゾーン、サブネットにレスキューインスタンスを起動する。
**注: ** 元のインスタンスとは異なるオペレーティングシステム (OS) バージョンの Windows インスタンスを起動することはベストプラクティスです。この構成により、ディスク署名の問題が回避されます。 - 元のインスタンスを停止する。
- 元のインスタンスのルートボリュームをデタッチする。
- レスキューインスタンスにボリュームをアタッチする。
- レスキューインスタンスで EC2Rescue を実行する。EC2Rescue は RDP に関連する問題を特定する。Diagnose and Rescue (診断とレスキュー) 機能を使用して、EC2Rescue に特定した問題を解決させる。インスタンスを問題のない最後の既知の設定に復元するには、前回正常起動時の設定機能を使用する。
- レスキューインスタンスからボリュームをアンマウントしてデタッチする。
- ルートボリュームとして元のインスタンスにボリュームをアタッチする。
**注: ** デバイス ID が /dev/sda1 であることを確認してください。 - 元のインスタンスを開始する。
さらにトラブルシューティングを行うには、「リモートデスクトップからリモートコンピュータに接続できません」を参照してください。
目的のインスタンス設定を確認する
次のアクションを実行します。
- インスタンスがステータスチェックに合格していることを確認する。
- 一時的な RDP 接続の問題を解決するには、インスタンスを停止して開始する。
- インスタンスのセキュリティグループが、デフォルトの RDP ポートであるポート 3389 でのインバウンド TCP トラフィックを許可していることを確認する。
**注: ** RDP アクセスを特定の IP アドレスまたは IP アドレス範囲に制限することはベストプラクティスです。0.0.0.0/0 からのインターネットアクセスをすべて許可することはベストプラクティスではありません。 - RDP ポートがアクセス可能であることを確認するには、次のコマンドを実行してネットワーク接続をテストする。
**注: ** INSTANCE_IP をインスタンスの IP アドレスに置き換えてください。接続できない場合は、セキュリティグループ、ネットワークアクセスコントロールリスト (ネットワーク ACL)、Windows ファイアウォールルールが RDP 接続を許可していることを確認してください。Test-NetConnection -ComputerName INSTANCE_IP -Port 3389 -InformationLevel Detailed
接続障害またはタイムアウトのトラブルシューティング
接続に失敗したかタイムアウトした理由を特定するには、到達不能なインスタンスのスクリーンショットをキャプチャしてください。ネットワークステータスアイコンが No internet access ステータスになっており、インスタンスがインスタンスステータスチェックに失敗しているが、インスタンス OS はまだ起動しているかどうかを確認してください。このシナリオでは、OS のネットワークアダプタードライバーまたは OS のネットワーク設定に問題があります。また、インスタンスコンソール出力でエラーを確認してください。
接続失敗またはタイムアウトの問題を解決するには、次の手順を実行します。
- セカンダリ Elastic ネットワークインターフェイスを作成する。
- セカンダリネットワークインタフェイスをインスタンスにアタッチする。
- セカンダリネットワークインターフェイスの IP アドレスを使用して RDP でインスタンスに接続する。
- Windows インスタンスにセカンダリプライベート IPv4 アドレスを設定する。手順については、Microsoft ウェブサイトの「IP アドレスを確認する」を参照してください。
- [Start] (スタート) メニューを選択し、[Settings] (設定) を開く。
- [Network & internet] (ネットワークとインターネット) を選択する。
- [Advanced Network Settings] (詳細なネットワーク設定) で [Change adapter options] (アダプターオプションの変更) を選択する。
- プライマリネットワークアダプターのコンテキストメニュー (右クリック) を開き、[Properties] (プロパティ) を選択する。
- TCP/IPv4 を選択して、設定が正しいプライベート IP アドレスを使用していることを確認する。また、ネットワーク接続が Dynamic Host Configuration Protocol (DHCP) を使用していることを確認する。プライベート IP アドレスまたは DHCP 設定を更新する方法については、Microsoft ウェブサイトの 「TCP/IP 設定を変更する」を参照してください。
- インスタンスから切断し、プライマリネットワークインターフェイスの IP アドレスを使用して RDP でインスタンスに接続する。
- セカンダリネットワークインターフェイスをデタッチする。
"The remote desktop connection request timed out" エラーをトラブルシューティングする
"connection request timed out" エラーは、OS レベルのメモリ、ディスク容量、または CPU 使用率が高すぎる場合に発生します。メモリの問題をトラブルシューティングするには、インスタンスを再起動してください。それでも問題が発生する場合は、インスタンスのルートボリュームに十分なディスク容量があることを確認してください。
CPU 使用率が高い場合のトラブルシューティングを行うには、CPU を多く使用するプロセスを特定してトラブルシューティングしてください。
インスタンスタイプ変更後に RDP が失敗する問題をトラブルシューティングする
インスタンスのネットワークアダプターおよびストレージアダプターのドライバーが存在しないか、古い場合、インスタンスタイプの変更後に RDP が失敗します。この問題は、ネットワーク接続の問題によりインスタンスがヘルスチェックに失敗する原因にもなります。
この問題を解決するには、次の手順を実行します。
- インスタンスを停止する。
- インスタンスタイプを以前のインスタンスタイプに戻す。
- インスタンスを開始する。
- インスタンスドライバーをインストールまたはアップグレードする。
- インスタンスを停止して、インスタンスタイプを変更する。
- インスタンスを開始する。
認証エラーまたは "An internal error has occurred" エラーをトラブルシューティングする
認証エラーまたは "internal error" エラーをトラブルシューティングするには、『RDP を使用して EC2 Windows インスタンスに接続する際、認証エラーが発生する場合のトラブルシューティング方法を教えてください。』を参照してください。
This article was reviewed and updated on 2026-03-26.
関連するコンテンツ
質問済み 2年前

