跳转到主要内容

热门内容

今日:


总体:


最近浏览:


Chinese, Simplified

category

应用服务环境是Azure应用服务在客户Azure虚拟网络子网中的部署。它可以与外部或内部端点一起部署,用于应用访问。具有内部端点的App Service环境的部署称为内部负载均衡器(ILB)App Service环境(ASE)

Web应用程序防火墙通过检查入站Web流量来阻止SQL注入、跨站点脚本、恶意软件上传和应用程序DDoS以及其他攻击,从而帮助保护您的Web应用程序。您可以从Azure Marketplace获取WAF设备,也可以使用Azure应用程序网关。

Azure应用程序网关是一个虚拟设备,提供第7层负载平衡、TLS/SSL卸载和web应用程序防火墙(WAF)保护。它可以监听公共IP地址,并将流量路由到您的应用程序端点。以下信息描述了如何将配置了WAF的应用程序网关与ILB应用程序服务环境中的应用程序集成。

应用网关与ILB应用服务环境的集成是在应用级别。当您使用ILB App Service环境配置应用程序网关时,您是在为ILB App Services环境中的特定应用程序进行配置。此技术允许在单个ILB App Service环境中托管安全的多租户应用程序。

高级集成图截图

在本演练中,您将:

  • 创建Azure应用程序网关。
  • 配置应用程序网关以指向ILB应用程序服务环境中的应用程序。
  • 编辑指向应用程序网关的公共DNS主机名。


先决条件


要将应用网关与ILB应用服务环境集成,您需要:

  • ILB应用服务环境。
  • ILB应用服务环境的专用DNS区域。
  • 在ILB应用服务环境中运行的应用程序。
  • 稍后用于指向应用程序网关的公共DNS名称。
  • 如果需要对应用程序网关使用TLS/SSL加密,则需要一个用于绑定到应用程序网关的有效公共证书。
     

ILB应用服务环境


有关如何创建ILB应用服务环境的详细信息,请参阅Azure门户中的创建ASE和使用ARM模板创建ASE。

  • 创建ILB ASE后,默认域为<YourAseName>.appserviceenvironment.net。

ILB ASE概述截图

  • 为入站访问配置了内部负载平衡器。您可以在ASE设置下的IP地址中检查入站地址。稍后,您可以创建映射到此IP地址的专用DNS区域。

从ILB ASE IP地址设置中获取入站地址的屏幕截图。

私有DNS区域


您需要一个私有DNS区域进行内部名称解析。使用下表所示的记录集使用ASE名称创建它(有关说明,请参阅快速入门-使用Azure门户创建Azure专用DNS区域)。

Name Type Value
* A ASE inbound address
@ A ASE inbound address
@ SOA ASE DNS name
*.scm A ASE inbound address


ILB ASE上的应用服务


您需要在ILB ASE中创建应用服务计划和应用程序。在门户中创建应用程序时,选择您的ILB ASE作为区域。

应用程序网关的公共DNS名称


要从互联网连接到应用程序网关,您需要一个可路由的域名。在这种情况下,我使用了可路由的域名asabuludemo.com,并计划使用此域名App.asabuludemo.com连接到应用服务。创建应用网关后,映射到此应用域名的IP地址需要设置为应用网关公共IP地址。将公共域映射到应用程序网关后,您不需要在App Service中配置自定义域。您可以使用App Service Domains购买自定义域名。

有效的公共证书


为了增强安全性,建议绑定TLS/SSL证书进行会话加密。要将TLS/SSL证书绑定到应用程序网关,需要具有以下信息的有效公共证书。使用App Service证书,您可以购买TLS/SSL证书并将其导出为.pfx格式。

Name Value Description
Common Name <yourappname>.<yourdomainname>, for example: app.asabuludemo.com
or *.<yourdomainname>, for example: *.asabuludemo.com
A standard certificate or a wildcard certificate for the application gateway
Subject Alternative Name <yourappname>.scm.<yourdomainname>, for example: app.scm.asabuludemo.com
or *.scm.<yourdomainname>, for example: *.scm.asabuludemo.com
The SAN that allowing to connect to App Service kudu service. It's an optional setting, if you don't want to publish the App Service kudu service to the internet.


证书文件应具有私钥并以.pfx格式保存,稍后将导入应用程序网关。

创建应用程序网关


有关基本应用程序网关创建,请参阅教程:使用Azure门户创建具有Web应用程序防火墙的应用程序网关。

在本教程中,我们将使用Azure门户创建具有ILB App Service环境的应用程序网关。

在Azure门户中,选择新建>网络>应用程序网关以创建应用程序网关。

  • 基础设置

在Tier下拉列表中,您可以选择Standard V2或WAF V2在应用程序网关上启用WAF功能。

  • 前端设置

选择前端IP地址类型为公共、私有或两者兼而有之。如果设置为Private或Both,则需要在应用程序网关子网范围内分配一个静态IP地址。在这种情况下,我们仅将公共端点设置为公共IP。

  • 公共IP地址-您需要为应用程序网关公共访问关联一个公共IP地址。记录此IP地址,以后需要在DNS服务中添加记录。

从应用程序网关前端设置获取公共IP地址的屏幕截图。

  • 后端设置

输入后端池名称,然后在目标类型中选择应用服务或IP地址或FQDN。在这种情况下,我们设置为应用服务,并从目标下拉列表中选择应用服务名称。

在后端设置中添加后端池名称的屏幕截图。

  • 配置设置

在配置设置中,您需要通过选择添加路由规则图标来添加路由规则。

在配置设置中添加路由规则的屏幕截图。

  • 您需要在路由规则中配置侦听器和后端目标。您可以添加HTTP侦听器进行概念验证部署,也可以添加HTTPS侦听器进行安全增强。

要使用HTTP协议连接到应用程序网关,您可以使用以下设置创建侦听器,

Parameter Value Description
Rule name For example: http-routingrule Routing name
Listener name For example: http-listener Listener name
Frontend IP Public For internet access, set to Public
Protocol HTTP Don't use TLS/SSL encryption
Port 80 Default HTTP Port
Listener type Multi site Allow to listen multi-sites on the application gateway
Host type Multiple/Wildcard Set to multiple or wildcard website name if listener type is set to multi-sites.
Host name For example: app.asabuludemo.com Set to a routable domain name for App Service


应用网关路由规则的HTTP侦听器的屏幕截图。

  • 要使用TLS/SSL加密连接到应用程序网关,您可以使用以下设置创建侦听器,
Parameter Value Description
Rule name For example: https-routingrule Routing name
Listener name For example: https-listener Listener name
Frontend IP Public For internet access, set to Public
Protocol HTTPS Use TLS/SSL encryption
Port 443 Default HTTPS Port
Https Settings Upload a certificate Upload a certificate contains the CN and the private key with .pfx format.
Listener type Multi site Allow to listen multi-sites on the application gateway
Host type Multiple/Wildcard Set to multiple or wildcard website name if listener type is set to multi-sites.
Host name For example: app.asabuludemo.com Set to a routable domain name for App Service

  • 您必须在后端目标中配置后端池和HTTP设置。后端池已在前面的步骤中配置。选择添加新链接以添加HTTP设置。

  • HTTP settings listed as below:
Parameter Value Description
HTTP setting name For example: https-setting HTTP setting name
Backend protocol HTTPS Use TLS/SSL encryption
Backend port 443 Default HTTPS Port
Use well known CA certificate Yes The default domain name of ILB ASE is .appserviceenvironment.net, the certificate of this domain is issued by a public trusted root authority. In the Trusted root certificate setting, you can set to use well known CA trusted root certificate.
Override with new host name Yes The host name header will be overwrote on connecting to the app on ILB ASE
Host name override Pick host name from backend target When setting backend pool to App Service, you can pick host from backend target
Create custom probes No Use default health probe


配置与ILB ASE的应用程序网关集成


要从应用程序网关访问ILB ASE,您需要检查虚拟网络是否链接到专用DNS区域。如果没有虚拟网络链接到应用程序网关的ExpressRoute,请按照以下步骤添加虚拟网络链接。

配置具有专用DNS区域的虚拟网络链接


要配置具有专用DNS区域的虚拟网络链接,请转到专用DNS区域配置平面。选择虚拟网络链接>添加


  • Input the Link name and select the respective subscription and virtual network where the application gateway resides in.


  • You can confirm the backend health status from Backend health in the application gateway plane.


添加公共DNS记录


从互联网访问应用程序网关时,您需要配置正确的DNS映射。

应用网关的公共IP地址可以在应用网关平面的前端IP配置中找到。


  • Use Azure DNS service as example, you can add a record set to map the app domain name to the public IP address of the application gateway.


验证连接


在从互联网访问的机器上,您可以验证应用程序域名到应用程序网关公共IP地址的名称解析。


  • On a machine access from internet, test the web access from a browser.

 

本文地址
最后修改
星期一, 九月 16, 2024 - 08:24
Article