【Azure 应用服务】探索在Azure上设置禁止任何人访问App Service的默认域名(Default URL)
问题描述
总所周知,Azure App Service服务会默认提供一个 ***.chinacloudsites.cn为后缀的域名,但是该域名由上海蓝云网络科技有限公司备案,仅用于向其客户提供 Azure 服务。

而如果不进行ICP备案,任何通过公网流量访问默认域名都会被封堵。因为Azure后台会根据对默认域名的请求次数和频率自动扫描,如果被扫中,就会被封堵。所以为了避免这样的情况,所以需要禁止任何人使用默认域名访问!
问题分析
方式一:使用IIS的rewrite规则,发现访问的时默认域名,返回403
修改App Service wwwroot根目录中的web.config文件(如没有,可以直接复制下文内容,新建web.config文件)
<system.webServer>
<rewrite>
<rules>
<rule name="Disable Azure Domain" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="*.chinacloudsites.cn" />
</conditions>
<action type="CustomResponse" statusCode="403" />
</rule>
</rules>
</rewrite>
</system.webServer>
修改后效果:

方式二:使用应用程序网关,保护后端App Service
1)创建应用程序网关,按照教程把网关的后端池设置为App Service (又名 Web App)
教程:将应用服务添加为后端池:https://docs.azure.cn/zh-cn/application-gateway/configure-web-app-portal#add-app-service-as-backend-pool
2)回到App Service页面,进入Network网络设置页面,在限制访问中,配置只允许应用程序网关的IP地址进行访问。
注意:此时,自定义域名就不是绑定在App Service上,而是通过A记录的方式,在DNS服务器配置上指向应用程序网关的IP地址。

验证效果:

参考资料
将应用服务添加为后端池:https://docs.azure.cn/zh-cn/application-gateway/configure-web-app-portal#add-app-service-as-backend-pool
设置 Azure 应用服务访问限制:https://docs.azure.cn/zh-cn/app-service/app-service-ip-restrictions
【Azure 应用服务】探索在Azure上设置禁止任何人访问App Service的默认域名(Default URL)的更多相关文章
- 【Azure 应用服务】由 Azure Functions runtime is unreachable 的错误消息推导出 ASYNC(异步)和 SYNC(同步)混用而引起ThreadPool耗尽问题
问题描述 在Azure Function Portal上显示: Azure Functions runtime is unreachable,引起的结果是Function App目前不工作,但是此前一 ...
- Windows Azure入门教学系列 (七):使用REST API访问Storage Service
本文是Windows Azure入门教学的第七篇文章. 本文将会介绍如何使用REST API来直接访问Storage Service. 在前三篇教学中,我们已经学习了使用Windows Azure S ...
- IIS网站设置禁止IP访问设置方法
本文设置系统为Windows2003.IIS版本是6.0. 打开IIS管理器,在iis管理器左侧单击打开网站下面的相应需要设置的网站,并在此网站上右键,选择属性,即可打开该网站属性进行相关设置. (i ...
- Nginx如何设置禁止IP访问网站
需要禁止IP访问网站.在相关的server中设置相关的限制即可.
- 尝试了一些时间,最简单的apache上设置用IP访问一个虚拟目录
就是其实新建一个 多域名访问的设置 <VirtualHost *:80> DocumentRoot /var/www/ ServerName IP</VirtualHost> ...
- 【Azure 应用服务】在 App Service for Windows 中自定义 PHP 版本的方法
问题描述 在App Service for Windows的环境中,当前只提供了PHP 7.4 版本的选择情况下,如何实现自定义PHP Runtime的版本呢? 如 PHP Version 8.1.9 ...
- Nginx设置禁止通过IP访问服务器并且只能通过指定域名访问
为了避免别人把未备案的域名解析到自己的服务器IP而导致服务器被断网,需要在nginx上设置禁止通过IP访问服务器,只能通过域名访问. 最关键的一点是,在server的设置里面添加这么一行: liste ...
- Nginx 禁止IP访问 只允许域名访问
今天要在Nginx上设置禁止通过IP访问服务器,只能通过域名访问,这样做是为了避免别人把未备案的域名解析到自己的服务器IP而导致服务器被断网,从网络上搜到以下解决方案: Nginx的默认虚拟主机在用户 ...
- 【Azure 应用服务】App Service 在使用GIt本地部署,上传代码的路径为/home/site/repository,而不是站点的根目录/home/site/wwwroot。 这个是因为什么?
问题描述 App Service 在使用GIt本地部署,上传代码的路径为/home/site/repository,而不是站点的根目录/home/site/wwwroot. 这个是因为什么? 并且通过 ...
随机推荐
- 零基础学习java------33---------http协议,tomcat(其如何在eclipse上发布),注册案例
一. HTTP协议 https://www.cnblogs.com/vamei/archive/2013/05/11/3069788.html 二. tomcat---------->web服务 ...
- MyBatis 如何实现流式查询
基本概念 流式查询指的是查询成功后不是返回一个集合而是返回一个迭代器,应用每次从迭代器取一条查询结果.流式查询的好处是能够降低内存使用. 如果没有流式查询,我们想要从数据库取 1000 万条记录而又没 ...
- HDFS初探之旅(一)
1.HDFS简介 ...
- AOP中ProceedingJoinPoint获取目标方法,参数,注解
private void saveLog(ProceedingJoinPoint jp,long time)throws Throwable { package com.cy.pj.common.as ...
- activiti工作流引擎
参考文章 Activiti-5.18.0与springMvc项目集成和activiti-explorer单独部署Web项目并与业务数据库关联方法(AutoEE_V2实现方式) https://blog ...
- MyEclipse配置Hibernate框架(基础篇)
一.创建java project项目 二.项目右键Configure Facets -- Install Hibernate Facet 三.项目添加对应数据库的jar包 四.编写实体类 packag ...
- Nginx LOCATOIN块配置
1 匹配模式优先级 location = /uri =开头表示精确匹配,只有完全匹配上才能生效. location ^~ /uri ^~ 开头对URL路径进行前缀匹配,并且在正则之前.无正则普通匹配( ...
- <转>git,github在windows上的搭建
http://www.cnblogs.com/yixiaoyang/archive/2012/01/06/2314190.html Git在源码管理领域目前占很大的比重了,而且开源的项目很多都转到Gi ...
- [BUUCTF]PWN——pwnable_start
pwnable_start 附件 步骤: 例行检查,32位程序,什么保护都没开,首先想到的是ret2shellcode的方法 本地试运行一下,看看程序大概的情况 32位ida载入,没法f5,好在汇编不 ...
- Docker从入门到精通(六)——容器通信
想要变成 Docker 的高阶玩家,搞懂 Docker 的容器通信是必不可少的. 1.需求 通常一个 Web 项目上线,我们会把开发完成的服务部署在Tomcat 服务器里面,然后需要的持久化数据会存放 ...