EC2 Windows インスタンスのポートに接続できないのはなぜですか?

最終更新日: 2020 年 8 月 10 日

特定のポートで Amazon Elastic Compute Cloud (Amazon EC2) Windows インスタンスに接続できません。ポートが開いているかどうかを確認するにはどうすればよいですか?

簡単な説明

以下の問題により、特定のポートで EC2 Windows インスタンスに接続できない場合があります。

  • ポートを使用するサービスがインスタンスで実行中でない。
  • Windows ファイアウォールが、ポートへのトラフィックをブロックしている。
  • セキュリティグループがトラフィックをブロックしている。
  • ネットワークアクセスコントロールリスト (ACL) がトラフィックをブロックしている。
  • ルートテーブルまたはローカル Windows ルートに正しくないルートがある。

解決方法

接続の問題の原因を特定するには、以下の手順を実行します。

1.    アプリケーションが適切に動作していて、正しいネットワークポートでリッスンしていることを確認します。アプリケーションが停止している場合は、起動します。

ポートでトラフィックを受け入れるには、EC2 Windows インスタンスが、指定されたポートでリッスンするアプリケーションまたはサービスをホストする必要があります。サービスをホストしている EC2 Windows インスタンスから、netstat コマンドを実行してアクティブな接続とポートを表示します。

2.    インスタンスで Telnet または Test-NetConnection を使用してローカルでポートテストを実行し、ポートがローカルに接続できることを確認します。

コマンドプロンプトを使用して、次のように入力します。

telnet <Private IP> <port number>

Windows PowerShell を使用して、次のように入力します。

tnc <Private IP> -port <port number>

ポートテストが失敗した場合は、インスタンスで実行されているウイルス対策ソフトウェアとセキュリティソフトウェアを確認します。ウイルス対策ソフトウェアまたはセキュリティソフトウェアで、このポートを使用するアプリケーションまたはサービスのホワイトリストを設定し、再度テストします。

3.    別のインスタンスを使用して手順 2 を繰り返します。可能であれば、同じサブネットのインスタンスを選択します。別のインスタンスのポートテストも失敗した場合は、オペレーティングシステム (OS) または EC2 インスタンスの設定に問題がある可能性があります。

OS の問題のトラブルシューティング

Windows ファイアウォール、およびインスタンスで実行されるその他のセキュリティソフトウェアで、必要なポートが許可されていることを確認します。

EC2 インスタンス設定の問題のトラブルシューティング

  • インスタンスに関連付けられたセキュリティグループが 、指定されたポートでインバウンドトラフィックまたはアウトバウンドトラフィックを許可していることを確認します。
  • ネットワーク ACL に、指定したポートでインバウンドトラフィックまたはアウトバウンドトラフィックを許可するルールがあることを確認します。
  • ルートテーブルを調べて、送信元と送信先の EC2 Windows インスタンスからのルートがあるか確認します。