天道酬勤,学无止境

Troubleshoot Azure Inbound Security Rule Not Working

I created a new Windows Server 2012 R2 virtual machine in Microsoft Azure. Among other things installed on that virtual machine is a web site hosted in IIS, but I can't seem to get IIS on that server to respond externally.

I am using the Resource Manager, so on my Public IP Address, I configured the DNS name (from Configuration), so the full DNS name is myapp.eastus2.cloudapp.azure.com where myapp is my actual app.

Then, on my Network Security Group, I added an Inbound security rule with the following settings:

  • Name: HTTP
  • Priority: 1020 (there are no conflicting rules higher in priority)
  • Source: Any
  • Protocol: Any
  • Source port range: * (it was 80, but changed it after reading this post: Connection timeout port 80 on new Azure VM with NSG rules configured, but I would still think 80 should work)
  • Destination: Any
  • Destination port range: 80
  • Action: Allow

It doesn't matter if I try to access it by DNS name or the IP directly, I just get a timeout error. I can navigate to the web site on the local machine using either the machine name (e.g. http://myapp) or localhost. I also cannot navigate to the web site from the local machine using the full name (e.g. http://myapp.eastus2.cloudapp.azure.com).

Moreover, I'm really at a loss as to where to even troubleshoot this. Clicking on the Audit Logs only seems to show actual edits to the item (makes sense) and I did turn on Diagnostics for the NSG (like in this article: https://github.com/Azure/azure-content/blob/master/articles/virtual-network/virtual-network-nsg-manage-log.md), but it doesn't seem to be logging anything when I hit the endpoint (there are no new blobs in my storage account).

Anyone have any ideas?

标签

评论

It definitely was the NSG. Thanks to Michael B for suggesting I disassociate it. When I did that, everything started working. However, that didn't answer the underlying issue. I found, eventually, that deleting the rule and recreating it with exactly the same values worked. Go figure.

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • How to check Azure Network Security Group outbound IP Allowed or not?
    I have few problems regarding Azure Network Security Group. Currently I'm using Azure App Services to publish my website and in Azure, App Services, Network Side Controlled By NSG such as inbound and outbound security and other things. I'm working with sagepay payment gateway.they asked me to do following steps in order to success my sagepay integration. Please ensure that all of the following IP addresses are allowed within your Server or Firewall: For outbound traffic to our gateway: 195.170.169.9 – live.sagepay.com 195.170.169.8 – test.sagepay.com For inbound traffic you only need to
  • 如何检查 Azure 网络安全组出站 IP 是否允许?(How to check Azure Network Security Group outbound IP Allowed or not?)
    问题 我对 Azure 网络安全组几乎没有什么问题。 目前我正在使用 Azure 应用服务来发布我的网站,并在 Azure、应用服务、NSG 控制的网络端(例如入站和出站安全性等)中发布。 我正在使用 sagepay 支付网关。他们要求我执行以下步骤以成功集成 sagepay。 Please ensure that all of the following IP addresses are allowed within your Server or Firewall: For outbound traffic to our gateway: 195.170.169.9 – live.sagepay.com 195.170.169.8 – test.sagepay.com For inbound traffic you only need to whitelist IPs if you are The IPs from which we call back are: 195.170.169.14 195.170.169.18 195.170.169.15 The Subnet mask used by Sage Pay is 255.255.255.000 Please ensure that your firewalls allow outbound Port 443 (HTTPS
  • Windows Azure 虚拟机 - 打开端口(Windows Azure Virtual Machine - Opening a port)
    问题 我正在尝试在 Windows Azure 虚拟机中打开一个端口。 我有一个游戏正在监听那个端口,我可以通过 localhost 访问它,所以游戏正在运行。 我也在防火墙中打开了端口,并在虚拟机中创建了一个端点,但是该端口似乎没有对外开放。 我尝试通过 IP 地址和 DNS 访问它,结果相同。 还有什么我应该做的吗? 我在网上查了几个教程,但不知道我做错了什么。 回答1 Irina,确保您通过设置私有和公共端口正确配置了您的端点。 这是一个文档,解释了完成此操作的步骤... http://www.windowsazure.com/en-us/documentation/articles/virtual-machines-set-up-endpoints/ 回答2 这已经变成了这个 我建议暂时忽略 100% 的谷歌内容 回答3 通过 Azure CLI 很容易,例如,打开端口 80 $ az vm open-port -g MyResourceGroup -n MyVm --port 80 同时打开多个端口 az vm open-port -g MyResourceGroup -n MyVm --port 80-100 --priority 100 全部打开.. az vm open-port -g MyResourceGroup -n MyVm --port '*'
  • WebDeploy 不侦听端口 8172(WebDeploy not listening on port 8172)
    问题 我尝试将一个简单的 Web 应用程序从我的开发机器部署到在 Windows 7 Professional 虚拟机上运行的 IIS。 在这台机器上,我做了以下事情: 安装了 Web Deploy 3.6,确保安装了所有功能。 确保 Web 管理和 Web 部署代理服务设置为自动并且当前正在运行。 在 Windows 防火墙中启用端口 8172(未安装其他防火墙)。 该规则已经存在但未启用。 暂时关闭 Windows 防火墙以确保它仍然没有阻塞端口。 当我尝试: netstat -aon | findstr :8172 我没有得到任何结果,所以没有在这个端口上监听。 作为测试,我在服务器上安装了 VS 2012 并且使用 Web Deploy 发布工作正常。 但是,这不是我需要的方式。 我还能尝试什么来确保服务正在侦听端口 8172? 回答1 您还应该检查另外两个步骤: 1.在IIS中启用远程连接 只需通过RDP连接远程服务器,打开IIS,打开这个选项: 在右侧面板中,停止它。 这实际上会停止Web 管理服务。 然后您将能够检查启用远程连接标志。 检查它,单击右侧面板中的Apply选项,然后单击 Start 。 这对于使您能够从其他计算机(例如您的开发计算机)远程连接到此 IIS 服务器也是必要的。 2. 检查网络安全组(如果使用 AWS、Azure 或其他一些服务)
  • Could not connect Port in Microsoft Azure Vm
    I have created Red Hat VM in Microsoft Azure and able to connect via ssh. I have started Java server in VM with port 8081 and it started successfully. But I am not able view it in browser. Its doesn't get loaded. I have tried the following and but all doesn't get loaded:- host:80 host:8080 host:8081 I have added Inbound security rule in Network security Group and associated subnet to it. Still I am not able view my server in browser. I have followed this document for inbound security rule Here is my inbound rule netstat -tuplen (Not all processes could be identified, non-owned process info
  • Create an Azure VM with an unmanaged disk
    I'm trying to create an Azure VM with an unmanaged disk via PowerShell since managed disks aren't supported in Azure Government yet. None of the documentation I could find for PowerShell VM creation references managed or unmanaged disks and the default seems to be managed disks. My VM creation fails with the following error: New-AzureRmVM : Managed Disks are not supported in this region. ErrorCode: BadRequest Here's the script I'm using: $location = "USGovTexas" New-AzureRmResourceGroup -Name myResourceGroup -Location $location # Create a subnet configuration $subnetConfig = New
  • 使用SQL Server Management Studio远程连接到Azure虚拟机上托管的SQL Server Express实例(Use SQL Server Management Studio to connect remotely to an SQL Server Express instance hosted on an Azure Virtual Machine)
    问题 初次尝试 我有一个带有Windows Server 2012的Azure VM,上面刚刚安装了SQL Server 2012 Express Database Engine组件。 然后,我按照此处的说明与SQL Server Management Studio进行远程连接。 为虚拟机创建TCP终结点在Windows防火墙中打开TCP端口配置SQL Server以侦听TCP协议为混合模式身份验证配置SQL Server 创建SQL Server身份验证登录名确定虚拟机的DNS名称从另一台计算机连接到数据库引擎 在第七步之后,我收到以下错误: 建立与SQL Server的连接时发生与网络相关或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称正确,并且已将SQL Server配置为允许远程连接。 (提供者:命名管道提供程序,错误:40-无法打开与SQL Server的连接)(Microsoft SQL Server,错误:53) 在远程连接之前,我还需要配置什么? 故障排除 我一直在按照此处的故障排除说明进行操作。 下面的每个块引用都是描述该链接的步骤。 确认已安装并正在运行SQL Server数据库引擎的实例。 完毕。 我们安装了SQL Server Express,它作为名为SQLEXPRESS的命名实例运行。 如果尝试连接到命名实例,请确保SQL Server
  • 即使配置了 Azure 入站规则和 Windows 防火墙,也无法列出 Azure 上 IIS FTP 服务器上的目录(Cannot list directory on IIS FTP server on Azure, even after configuring Azure inbound rules and Windows firewall)
    问题 我在 Azure 中运行 Windows Server 2012,并在 IIS 中配置了 FTP 服务器。 当我尝试连接服务器时,它接受用户名和密码并让我登录,但不显示目录列表。 我试过使用 FileZilla FTP 客户端进行连接,但它说同样的错误。 Status: Resolving address of jothiprakashanandan.southindia.cloudapp.azure.com Status: Connecting to 104.211.244.241:21... Status: Connection established, waiting for welcome message... Status: Insecure server, it does not support FTP over TLS. Status: Logged in Status: Retrieving directory listing... Command: PWD Response: 257 "/" is current directory. Command: TYPE I Response: 200 Type set to I. Command: PASV Error: Connection timed out after 20 seconds of
  • Cannot list directory on IIS FTP server on Azure, even after configuring Azure inbound rules and Windows firewall
    I'am running Windows Server 2012 in Azure, and I've configured the FTP server in IIS. When I try to connect the server, it accepts the username and password and log me in but not showing the directory listing. I've tried using FileZilla FTP client to connect and it saying the same error. Status: Resolving address of jothiprakashanandan.southindia.cloudapp.azure.com Status: Connecting to 104.211.244.241:21... Status: Connection established, waiting for welcome message... Status: Insecure server, it does not support FTP over TLS. Status: Logged in Status: Retrieving directory listing... Command
  • 无法从EC2实例连接到RDS实例(Can't connect to RDS instance from EC2 instance)
    问题 我正在尝试从EC2实例i-78a8df00连接到RDS实例mysql。************。us-east-1.rds.amazonaws.com。 他们俩都在美国东部地区。 我将EC2实例的安全组(sg-********)添加到RDS安全组,但这没有帮助。 由于运行此命令时超时,它似乎是防火墙/ DNS问题: ubuntu@ip-10-195-189-237:~$ mysql -h mysql.************.us-east-1.rds.amazonaws.com 错误2003(HY000):无法连接到“ mysql。************。us-east-1.rds.amazonaws.com”上的MySQL服务器(110) 我可以使用与上述相同的线路从本地计算机连接到RDS实例。 我尝试了各种论坛解决方案,但没有用。 回答1 当我旋转一个新的EC2实例时,我遇到了类似的问题,但是并没有更改允许连接到RDS实例的端口3306的入站IP地址的RDS安全组中的设置。 令人困惑的是RDS仪表板中的一个选项,称为“安全组”。 您不需要它来解决问题。 您真正需要的是: 转到RDS实例列表单击您要连接的实例单击安全组规则部分 这将打开一个新的浏览器选项卡或带有安全组详细信息的窗口。 在底部找到几个选项卡,选择“入站规则”选项卡,然后单击“编辑”按钮。
  • 源安全组在 AWS 中未按预期工作(Source security group isn't working as expected in AWS)
    问题 我有一个 EC2 节点 node1(安全组 SG1),它应该可以从端口 9200 上的另一个 EC2 节点 node2(安全组 SG2)访问。现在,当我在端口 9200 的 SG1 中添加入站规则并指定 SG2 作为源时自定义 IP 部分,我无法从 node2 访问 node1。 另一方面,如果我在 SG1 中指定一个入站规则,源为 0.0.0.0/0 或 node2 的 IP,它工作正常。 我的方法有什么问题? 回答1 您是在尝试连接到 node1 的公共地址还是私有地址? 从文档: 当您将安全组指定为规则的源或目标时,该规则会影响与该安全组关联的所有实例。 例如,根据与源安全组关联的实例的私有 IP 地址允许传入流量。 我之前曾尝试连接到 EC2 实例的公共地址,因此对此感到很恼火……实际上,这听起来与您的设置非常相似。 当您连接入站规则以便源是安全组时,您必须通过源实例的私有地址进行通信。 需要注意的一些事项: 在 EC2 Classic 中,私有 IP 地址可以在 EC2 实例停止/启动时更改。 如果您使用的是 EC2 classic,您可能需要查看有关弹性 DNS 名称的讨论,以获得更静态的寻址解决方案。 如果您在 VPC 中设置环境,私有 IP 地址是静态的。 您还可以更改正在运行的实例的安全组成员身份。 回答2 原因:安全组间通信通过私有寻址工作。
  • 配置了 NSG 规则的新 Azure VM 上的连接超时端口 80(Connection timeout port 80 on new Azure VM with NSG rules configured)
    问题 我刚刚使用(推荐的)资源管理器部署模型在 Microsoft Azure 中创建了一个新的 Ubuntu 14.04 虚拟机。 以下屏幕截图显示了部署配置和生成的资源: 部署后,我通过公共 IP 使用 SSH 访问 VM,登录并安装 nginx。 我保留了默认配置并执行了“curl localhost”以确保网络服务器正在运行。 然后我转到网络安全组资源,并将端口 80 的允许规则添加到入站规则: 然后我打开浏览器并尝试请求与 NIC 关联的公共 IP,但连接超时。 编辑:我可以通过将 NSG 与 NIC 解除关联来获得访问权限,但是如果我重新关联它,我将在几分钟内再次被阻止。 我曾尝试使用相同的过程来设置带有 IIS 的 Windows Server VM,但我得到了相同的结果。 我在这里缺少什么? 使用经典部署模型进行相同设置时,我没有遇到任何错误,这仅在尝试推荐的资源管理器模型时发生。 回答1 您的 NSG 上的源端口是什么? 你有没有留下任何/*? 如果不是,您将自己限制为仅来自该一个端口的流量。 回答2 对于那些仍然与新门户 Azure 上的入站规则斗争的人,您需要将网络安全组 (NSG) 设置为: 允许来自(来源)的连接: any来源 和 * - 对于源端口范围(非常重要,因为设置 80 或 443 似乎很正常 - 这是不正确的) 目的地: any 和 80 -
  • 无法使用通过 VS2010 发布在 Windows Azure 上发布网站(Not able to publish website on Windows Azure using publish through VS2010)
    问题 当我尝试通过 Visual Studio 2010 在 Windows Azure 上发布我的 Web 应用程序时,我遇到了这个问题。我正在尝试通过右键单击项目并选择发布和导入从 Windows Azure 平台下载的发布配置文件。 我收到此错误: 错误 1 ​​Web 部署任务失败。 (无法连接到远程计算机(“waws-prod-am2-001.publish.azurewebsites.windows.net”)。在远程计算机上,确保已安装 Web Deploy 并且所需的进程(“Web Management Service ") 已启动。了解更多信息,请访问:http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_DESTINATION_NOT_REACHABLE。) 0 0 MeraSungard 回答1 当您尝试将您的 Web 应用程序从 VS2010 发布到 Windows Azure 网站时,发布过程将连接到启用 Web 部署服务的特定端口上的 Windows Azure 网站。 在 VS 2010 中,如果与此服务端口的连接失败,则 VS 将返回错误为“Web Deploy is installed........ on remote server. 事实上,WebDeploy 服务已经在运行
  • HTTPS不起作用(在基于AWS Elastic Beanstalk的网站上)(HTTPS not working (on AWS Elastic Beanstalk based site))
    问题 该站点可以在HTTP上正常运行,但是不能在HTTPS上运行。 我已经按照此页面上的所有步骤创建了一个自签名证书,并将其添加到我的Elastic Beanstalk环境中。 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https.html 我还使用以下命令从IAM获得成功的证书响应:aws iam get-server-certificate --server-certificate-name 在使用证书更新Elastic Beanstalk之后,我还向安全组添加了一条规则,该规则允许从0.0.0.0/0到端口443的入站流量。最后,我还验证了我的负载均衡器侦听器是否设置了HTTPS正确地上升。 尽管如此,我对https的调用仍无法解决,而http正常运行。 还有其他想法吗? 任何帮助将非常感激。 如果您需要更多信息,请告诉我。 拼命寻找对此的一些见识/帮助。 无论如何,由于无法用我的站点/代码解决此问题,我试图在Elastic Beanstalk上提供的示例站点上设置HTTPS。 有趣的是,即使那样也不起作用。 回答1 我想提供一个更新,使我终于能够解决该问题。 根本原因是因为我错过了为负载均衡器的安全组设置入站规则。 无论出于何种原因,当我阅读文档时,我都知道需要为实例的安全组
  • 从另一台设备访问Azure仿真器(Accessing Azure Emulator from Another Device)
    问题 我有两个不同的项目: Windows Phone 8应用程序,我在真实的物理开发设备上运行。 Azure云服务,其中包含一个简单的WebRole终结点,该终结点包含ASP.NET MVC WebAPI。 我的目标很简单: 使用从真实设备运行的WP8应用程序,可以在将WebAPI控制器部署到Azure仿真器时访问(使用HTTPClient)。 做的工作是: 将应用程序部署到Azure Cloud时,该应用程序可以成功与WebApi通信。 如果将应用程序本地托管在IIS Express (无Azure)上,则该应用程序可以成功与WebApi通信,并且在本文之后更改了IIS Express设置。 据我了解,问题在于Azure仿真器配置为侦听IP地址127.0.0.1,该IP地址无法从localhost域外部访问。 我发现这篇文章提供了解决此确切问题的方法,但是在尝试部署到Azure仿真器时,尝试遵循它会导致未知异常。 真的不可能在本地测试与Azure云服务通信的WP8应用程序吗? 回答1 我弄清楚了如何使电话模拟器或连接的物理Windows Phone设备与Azure模拟器进行通信。 对于在相同需求下苦苦挣扎的其他开发人员,以下是使其工作所需的步骤: 假设: 您知道主机的IP地址。 没有防火墙阻止访问关闭IIS和Azure模拟器,并在配置更改后重新启动它们 Azure计算模拟器:
  • EC2 inbound from security group not working - what have I done wrong?
    I have two instances. IOne is in us-east-1b and is in security group 'bamboo' ITwo is in us-east-1c and is in security group 'ssh from bamboo' In ssh from bamboo I allow inbound traffic on port 22 from group 'bamboo' This results in IOne getting timeouts when trying to SSH into ITwo If I change the security rule to the IP address of IOne instead of the group name, the SSH connection succeeds. I read that the two machines have to be in the same region (though it doesn't mention zones). Should my above setup work? If not what would I need to change?
  • 实用教程丨使用K3s和MySQL运行Rancher 2.4
    本文转自Rancher Labs 简 介 本文将介绍在高可用K3s Kubernetes集群上安装Rancher 2.4的过程并针对MySQL利用Microsoft Azure数据库的优势,该数据库消除了对etcd的依赖,并为我们提供了Azure在这一服务中的所有其他功能。 在本文中,你将了解到只使用Azure Cloud Shell如何部署基础架构以支持此方式。使用Cloud Shell的好处是零基础架构即可上手——仅需访问Azure门户即可。并且许多所需的CLI功能已经预先安装好,从而大大减少了完成安装所需的工作量。 你部署完成基础架构后,你将了解如何使用K3s在一个Kubernetes集群上部署Rancher 2.4。在Rancher 2.4中,我们已经添加了新的部署支持模式:在两个节点上的Rancher 2.4运行带有外部数据库的K3s。使用这一模式的好处之一是我们可以将节点视为短暂的。由于K3s支持外部MySQL数据库,因此我们可以做到这一点。 K3s是一个轻量的Kubernetes发行版,它比Rancher Kubernetes Engine(RKE)更先进,并且具有以下增强功能: 嵌入式SQLite数据库替换了etcd,成为默认的数据存储,它还支持外部数据存储,例如PostgreSQL、MySQL和etcd。(本文中我们将使用MySQL) 我们添加了简单但功能强大的
  • ECS弹性云服务器常用端口、安全组
    弹性云服务器常用端口弹性云服务器常用端口如 表1 所示。您可以通过配置安全组规则放通弹性云服务器对应的端口,详情请参见 添加安全组规则 。 表1 弹性云服务器常用端口协议端口说明FTP21FTP服务上传和下载文件。SSH22远程连接Linux弹性云服务器。Telnet23使用Telnet协议远程登录弹性云服务器。HTTP80使用HTTP协议访问网站。POP3110使用POP3协议接收邮件。IMAP143使用IMAP协议接收邮件。HTTPS443使用HTTPS服务访问网站。SQL Server1433SQL Server的TCP端口,用于供SQL Server对外提供服务。SQL Server1434SQL Server的UDP端口,用于返回SQL Server使用了哪个TCP/IP端口。Oracle1521Oracle通信端口,弹性云服务器上部署了 Oracle SQL需要放行的端口。MySQL3306MySQL数据库对外提供服务的端口。Windows Server Remote Desktop Services3389Windows远程桌面服务端口,通过这个端口可以连接Windows弹性云服务器。代理80808080 端口常用于WWW代理服务,实现网页浏览。如果您使用了8080端口,访问网站或使用代理服务器时,需要在IP地址后面加上:8080。安装 Apache Tomcat
  • Firewall access from Azure app service to blob storage using Virtual Network
    Originally I tried to restrict access from an app service to blob storage using IP addresses, however it turned out that you can only do this using a Virtual Network: Firewall access from Azure app service to blob storage I want to be able to achieve this without setting up a point-to-site VPN. The steps I have taken to set up a virtual network in Azure are as follows: Created Network security group "securitygroup-frontend", add custom inbound rule called Web with Source: Service Tag, Source service tag: Internet, Source port ranges: *, Destination : Any, Destination port ranges: 80, 443
  • 无法ping AWS EC2实例(Cannot ping AWS EC2 instance)
    问题 我有一个在AWS中运行的EC2实例。 当我尝试从本地机器ping通时,它不可用。 如何使实例可ping通? 回答1 添加新的EC2安全组入站规则: 类型:自定义ICMP规则协议:回声请求端口: N / A 来源:您的选择(我将选择“任何地方都可以从任何计算机ping”) 回答2 迟了几年,但希望这会对其他人有所帮助... 1)首先确保EC2实例具有公共IP。 如果具有公共DNS或公共IP地址(在下面圈出),那么您应该很好。 这就是您要查询的地址。 2)接下来,确保Amazon网络规则允许Echo Requests 。 转到EC2的安全组。 右键单击,选择入站规则答:选择添加规则 B:选择自定义ICMP规则-IPv4 C:选择回显请求 D:选择“任意位置”或“我的IP” E:选择保存 3)接下来,Windows防火墙默认会阻止入站Echo请求。 通过创建Windows防火墙例外来允许Echo请求... 转到“开始”,然后键入具有高级安全性的Windows防火墙。 选择入站规则 4)做完! 希望您现在应该能够ping您的服务器。 回答3 您必须编辑EC2实例所属的安全组并允许访问(或者创建一个新的安全组并将其添加到其中)。 默认情况下,所有内容均被拒绝。 您需要添加到安全组的例外取决于您需要使Internet可用的服务。 如果是网络服务器,则需要允许访问端口80的0.0.0.0