为什么我无法连接到 EC2 Windows 实例上的端口?

1 分钟阅读
0

我无法通过特定端口连接到 Amazon Elastic Compute Cloud (Amazon EC2) Windows 实例。

简述

以下问题可能会阻止通过特定端口连接到 EC2 Windows 实例:

  • 使用该端口的服务未在实例上运行。
  • Windows 防火墙拦截了流向该端口的流量。
  • 安全组拦截了流量。
  • 网络访问控制列表 (ACL) 拦截了流量。
  • 路由表或本地 Windows 路由中存在不正确的路由。

解决方法

要确定连接问题的根源,请执行以下步骤:

  1. 验证应用程序是否正常运行并在正确的网络端口上监听。如果应用程序已停止,请启动它。

要接受端口上的流量,EC2 Windows 实例必须对在指定端口上监听的应用程序或服务进行托管。在负责托管服务的 EC2 Windows 实例中,运行 netstat 命令以显示活动的连接和端口。

  1. 使用 Telnet 或 Test-NetConnection 在实例上本地执行端口测试,以确认该端口可以连接到本地。

使用命令提示符输入以下内容:

telnet <Private IP> <port number>

使用 Windows PowerShell 输入以下内容:

tnc <Private IP> -port <port number>

如果端口测试失败,请检查实例上运行的防病毒和安全软件。为在防病毒软件或安全软件上使用此端口的应用程序或服务设置允许列表,然后再次测试。

  1. 使用其他实例重复步骤 2。如果可能,请选择同一子网上的实例。如果另一个实例上的端口测试也失败,则问题可能出在操作系统 (OS) 或 EC2 实例配置上。

操作系统问题疑难解答

确认 Windows 防火墙和其他所有在实例上运行的安全软件是否允许所需的端口。

排除 EC2 实例配置问题

  • 验证与实例关联的安全组是否允许指定端口上的入站或出站流量。
  • 验证网络 ACL 上是否有规则允许指定端口上的入站或出站流量。
  • 检查路由表以确定是否存在来自源和目标 EC2 Windows 实例的路由。

相关信息

我在 EC2 实例上托管了一个网站。如何允许我的用户通过 HTTP (80) 或 HTTPS (443) 连接?

AWS 官方
AWS 官方已更新 2 年前