【问题标题】:Securing a network between a website and VM in azure在 Azure 中保护网站和 VM 之间的网络
【发布时间】:2012-06-08 04:39:37
【问题描述】:

我知道在 Windows azure 中您可以将虚拟机添加到虚拟网络,但我没有看到将网站添加到网络的选项。

从 Azure 网站保护对 VM (MongoDb) 的访问的推荐方法是什么?

我更希望将数据库置于某种防火墙之后,而不是让流量通过公共互联网。

编辑:虚拟机将托管 MongoDb,因此不能选择使用 Sql Azure 或其他 MSSql 解决方案。

【问题讨论】:

  • 您找到合适的解决方案了吗?今天似乎仍然是个问题...如果我必须使用 IAAS,我将使用 AWS 而不是 Azure...对我来说的好处是能够使用 Azure 网站...谢谢

标签: azure azure-web-app-service


【解决方案1】:

如果您希望在虚拟机中使用网络和您自己的数据库,最好从保留网站开始。由于资源限制和其他限制,共享网站可能不是一个好主意。

如果您的数据库是 MongoDB,那么您有两种选择:

  1. 让您的 ASP.NET MVC 应用程序在虚拟机(Windows Server + IIS + 您的应用程序 - IaaS)中运行,并让 MongoDB 在其他虚拟机上运行。如果两台机器在同一个DC,你就不需要摆弄网络了。

  2. 让 Azure ASP.NET MVC Web 角色 (PaaS) 和虚拟机运行 MongoDB (IaaS)。

在这两种情况下,您只需要配置一个连接字符串来连接 MongoDB,并且不需要额外的网络修改来使其工作,因为所有机器都在同一个 DC 内。

【讨论】:

  • 我不确定你所说的静态和免费是什么意思,因为我的理解是天蓝色网站不需要是静态的(我现在正在运行一个 MVC4 应用程序)和可以在大型专用实例(4 核和 7gb 内存)上运行
  • 只要我们能够弄清楚网络安全性,我就可以毫无问题地为服务付费,我们计划使用 azure 站点来实现快速和轻松的部署,而不是成本方面。
  • 我刚刚在上面添加了更多信息。
【解决方案2】:

老问题,但现在 Microsoft Azure 支持: http://azure.microsoft.com/en-us/documentation/articles/web-sites-integrate-with-vnet/

编辑: 首先,确保您已设置 VNET 并添加了网关(出于某种原因,添加网关需要很长时间...确保在继续之前完成)。

New-AzureVNetGateway -VNetName $vnetName -GatewayType DynamicRouting

网关也可以添加到门户中。

然后,您必须为此使用new Preview Portal,浏览您的网络应用程序并向下滚动到网络部分并单击“虚拟网络”按钮。然后,在现有连接列表下找到您的 vnet。如果您没有看到它,则说明您的网关设置不正确。

【讨论】:

    【解决方案3】:

    我不确定我是否理解您的问题,但我会尽力回答。一种方法是创建一个虚拟机(IaaS)来托管您的网站,例如MVC 3 应用程序。 (创建其中两个,然后在 Azure 中对它们进行负载平衡)。创建另一个 VM (IaaS),这将是您的数据库 VM。例如SQL 服务器。来自您网站的连接字符串将允许您与数据库服务器通信

    当用户访问您的网站时,他们将无法看到您的数据库,因为它没有公开公开,他们只会看到您为网站打开的端口 80 以供浏览。您已经有效地创建了一个安全的网站,人们可以通过端口 80 浏览该网站,而无需访问您的数据库层。

    上面的模型对所有事情都使用 IaaS,您还可以做一个 PaaS/IaaS,其中您有一个在 Azure PaaS(Web 角色)中运行的网站,并且您有一个在 IaaS 机器上运行的数据库(例如 SQL Server)。同样,所有流量都会访问您面向公众的网站,该网站将有一个连接字符串指向您的 IaaS 实例,并且只有它才能与您的数据库实例进行通信。

    还有更多方法可以解决这个问题,通过提供 MySQL(今天宣布)的 WAWS(Windows Azure 网站)以及在 Azure 中使用 SQL DB?

    如果您解释了您的确切要求,那么我们可以更好地指导您吗?

    我仍然不清楚您的虚拟网络部分以及位于何处?

    【讨论】:

    • 我了解它将如何与托管在 vm 下的网站一起使用,我正在尝试查看使用 azure 本地网站的用户。
    • 当前预览版仅支持将 Windows Azure 网站连接到已经在云中运行的 SQL Azure 和 MySQL。
    • 您可以使用网络角色添加网站。这些可以添加到虚拟网络中,并且不需要使用 VM IaaS 路由的完整设置。
    【解决方案4】:

    您不能将 Windows Azure 网站添加到由其他 Windows Azure 部署组成的虚拟网络。

    只要您的数据库位于同一个数据中心内,就不需要虚拟网络。如果您创建一个 Windows Azure 网站,您可以简单地与一个 Windows Azure SQL 数据库对话 - 只需通过门户设置一个,获取连接字符串和凭据,然后将其添加到您的应用程序中。事实上,当您从库(使用 SQL Server 与 MySQL)创建网站时,系统会要求您创建新数据库或选择现有数据库。

    在门户中,您可以轻松创建自己的数据库(这是数据库即服务,只需几秒钟)。完成后,您可以启用防火墙规则以允许 Windows Azure 服务访问它。然后不要添加任何进一步的防火墙规则。此时,只有 Windows Azure 服务甚至可以找到您的数据库,并且只有知道凭据的服务才能连接到它。

    正如@user728584 建议的那样,您也可以在虚拟机中运行数据库,但您必须通过公共 IP 地址访问它。如果您访问本地数据库,则会遇到同样的问题,因为无法将 vpn 客户端安装到 Azure 网站中。您可以使用托管在 Web 角色中的 Web 应用程序来执行此操作(您几乎可以做任何事情)。

    【讨论】:

    • 我们的数据库是mongodb,所以不能使用sql azure,或者mysql解决方案。
    猜你喜欢
    • 1970-01-01
    • 2021-07-22
    • 2016-05-03
    • 1970-01-01
    • 2021-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-10
    相关资源
    最近更新 更多