configurationAzure IaaS VM以允许通过IP访问

我有一个Azure IaaS Windows 2012 R2 VM正在托pipe一个testing网站。 该站点可以通过主机名从外部访问。

我需要做些什么才能通过IP地址访问同一个站点? 当我尝试ping IP地址时,我收到消息:

Request timed out. 

当我尝试ping网站的工作主机名时,我得到了

 Pinging myhostname.com [nnn.nnn.nnn.nnn] with 32 bytes of data: Request timed out. Request timed out. Request timed out. Request timed out. 

在虚拟机上,我尝试启用File and Printer Sharing (Echo Request ICMPv4 - In) 。 我也遵循这些步骤来启用IP and Domain Restrictions ,但我不确定这是必要的? 我也尝试禁用Windows防火墙,这似乎并没有做任何事情。 我已经重新启动了虚拟机。

Azure的负载平衡器不支持PING(ICMP),这就是为什么您无法ping您的虚拟机的IP地址。 你可以使用基于tcp的ping工具来实现这一点。 注意:假设他们部署在同一个vnet /云服务中,您将能够在内部虚拟机之间ping通(通过每个虚拟机的内部IP地址)。

你可以通过IP地址绝对访问你的虚拟机。

Azure会在Azure负载平衡器端默认阻止ICMP,因此无法从Azure外部ping Azure虚拟机。 这是为了避免任何针对性的Ping / ICMP泛洪攻击(这是一种DDoS攻击)的基本原理。

但是,您可以轻松地从Azure外部启用ICMP和Ping Azure虚拟机。 您需要在Win Server Firewall中允许入站ICMPv4,然后在Azure中设置NSG入站规则以接受来自“任何”源,“任何”目标和“任何”协议的stream量。 之后Ping将会正常工作,从Internet访问Azure虚拟机。

我做了这么多次,把Nagios等外部监控工具连接到我的Win Srv虚拟机上。

如果您正在使用最新的Win Srv 2016,您将在Win防火墙中看到一个名为“虚拟机监控”(ICMPv4)的禁用规则,您只需启用它即可。 但是,这种情况下,您还需要像上面描述的那样在Azure NSG上打开入站。

此外,您可以使用IP以及DNS设置来Ping Azure虚拟机。

但是要知道,按照上面描述的过程,您将使您的虚拟机容易受到Ping / ICMP泛滥攻击。

然而,Azure Perimeter的安全性无论如何都要比以往任何时候都要早,在检测到任何这样的洪水攻击之后,可能会采取将来源IP(从Pings发生的地方)列入黑名单等措施。 除非您(或Azure支持)修复了这种情况,否则您还可能会看到Azure将限制所有/任何虚拟机的stream量,甚至来自Azure支持的通知也可帮助解决根本问题。

简而言之,请勿在Azure虚拟机上盲目启用ICMP。 如果您知道请求将来自的源IP,请在NSG中指定它们(我会始终这样做),并避免在NSG入站源中指定“任何”。

HTH …