Azure NSG 不允许流量

Azure NSG 不允许流量

我遇到了一个奇怪的问题。我在 Azure 中有一个 Windows 服务器,我已在上面安装了 Splunk,但我无法访问 Web UI。

我从默认模板创建了它,然后删除了它并尝试重新创建它。我制定了一条 NSG 规则,允许从我的工作公共 IP 使用端口 8000。我已允许端口 8000 通过 Windows 防火墙。我可以在 VM 上本地访问 splunk web ui。它正在监听 0.0.0.0:8000 和其他默认 splunk 端口,并使用 进行检查netstat -ano

我尝试过的事情:

  • 允许从我的工作 IP 到 VM 的所有流量。
  • 将splunk服务器仅绑定到10.0.0.4地址。
  • 禁用 splunkd 服务并在端口 8000 上运行 IIS 站点。IIS 在端口 80 上运行,但不在端口 8000 上运行。
  • 将 NSG 应用于子网。
  • 使用 telnet 和测试连接检查端口,但没有响应。
  • 删除了入站 NSG 规则上的 IP 限制。
PS C:\Users\sreadmin> netstat -ant | findstr 80
  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       InHost
  TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       InHost
  TCP    0.0.0.0:8089           0.0.0.0:0              LISTENING       InHost
  TCP    10.0.0.4:49719         168.63.129.16:80       ESTABLISHED     InHost
  TCP    10.0.0.4:49722         168.63.129.16:80       ESTABLISHED     InHost
  TCP    10.0.0.4:50179         168.63.129.16:80       TIME_WAIT       InHost
  TCP    127.0.0.1:8065         0.0.0.0:0              LISTENING       InHost
  TCP    [::]:8000              [::]:0                 LISTENING       InHost
  UDP    [fe80::d481:9b75:f30d:9b31%5]:1900  *:*
  UDP    [fe80::d481:9b75:f30d:9b31%5]:61131  *:*

我制定的NSG规则如下:

100 | Port_8000 | 8000 | Any | 131.203.112.66/32 | Any | Allow | …
110 | Port_8089 | 8089 | Any | 131.203.112.66/32 | Any | Allow | …
150 | http | 80 | Any | 131.203.112.66/32 | Any | Allow | …
1000 | default-allow-rdp | 3389 | TCP | 131.203.112.66/32 | Any | Allow | …

有谁知道我在这里遗漏了什么,我应该查看什么来排除故障或如何测试问题出在哪里?

答案1

在 Azure Windows VM 上安装 splunk 后,我们只需要将端口 8000 添加到 Azure NSG 入站规则,并将端口 8000 添加到 Windows 防火墙入站规则,然后我们就可以通过互联网浏览它了。

Azure NSG 入站规则:

在此处输入图片描述

Azure VM Windows 防火墙入站规则:

在此处输入图片描述

然后我们可以通过互联网浏览它:

在此处输入图片描述

要解决此问题,也许我们可以按照以下步骤操作:
1.关闭虚拟机 Windows 防火墙(用于测试,完成后再打开)
2.删除子网 NSG。3.
确保您的公共 IP 地址是131.203.112.66
4.确保您的本地网络防火墙不会阻止网络流量。或者更改另一个网络进行测试。

您还可以创建另一个 Azure VM 来测试它。使用公共 IP 地址和端口 8000 浏览 splunk。

答案2

谢谢 Jason 的帮助。我已完成您之前列出的步骤,但在设置 Splunk 尝试在端口 80 上运行以检查我们没有阻止端口 8000 出站时,我肯定搞错了。您的第 4 步是问题所在。

答案:公司防火墙必须有限制对非标准端口访问的出站规则。之前我没有注意到这一点,因为没有正确配置 Splunk 在端口 80 上运行。现在正确配置 Splunk 在端口 80 上运行后,一切正常。

答案3

注意防火墙中的默认规则。

我知道这个问题已经存在一年多了,但我刚刚在尝试在 Azure 中运行的 Windows/10 VM 上打开端口 443 时遇到了类似的问题。我已使用 Azure 门户在虚拟网络上打开了 VM 的端口,Windows 防火墙中似乎有一条默认规则打开了端口 443,但仍有一些东西阻止了我的连接。

我最终通过在 Windows 防火墙中创建附加规则并打开端口 443 解决了该问题,并且一切正常。

相关内容