Dzwebs.Net

撰写电脑技术杂文十余年

iis7请求筛选的功能及配置

Admin | 2014-8-22 9:06:44 | 被阅次数 | 9530

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

  一、iis7请求筛选的功能

  请求筛选的作用在于:如果要限制 Web 服务器处理的 HTTP 请求的类型,可以将 IIS 7 配置为分析每个传入请求的特定条件。

  请求筛选是一种安全功能,利用该功能,Internet 服务提供商 (ISP) 和应用服务提供商可以限制协议和内容行为。也就是说,通过请求筛选,可以允许或阻止访问某些文件。

  二、请求筛选的配置

  筛选 HTTP 请求

  可以通过以下方法执行此过程:在命令行窗口中运行 Appcmd.exe 命令、直接编辑配置文件或编写 WMI 脚本。

  以下各节介绍如何通过使用 Appcmd.exe 来配置请求筛选。

  若要配置高位字符,请使用以下语法:

  appcmd set config /section:requestfiltering /allowhighbitcharacters:true | false

  例如,若要允许使用高位字符,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /allowhighbitcharacters:true

  若要配置双转义,请使用以下语法:

  appcmd set config /section:requestfiltering /allowdoubleescaping:true | false

  例如,若要启用双转义,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /allowdoubleescaping:true

  配置文件扩展名

  若要配置 IIS 处理未列出的文件扩展名的方式,请使用以下语法:

  appcmd set config /section:requestfiltering /fileExtensions.allowunlisted:true | false

  例如,若要拒绝未列出的文件扩展名,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /fileExtensions.allowunlisted:false

  若要配置是否应对 WebDAV 请求应用文件扩展名,请使用以下语法:

  appcmd set config /section:requestfiltering /fileExtensions.applyToWebDAV:true | false

  例如,若要配置 IIS 以便不对 WebDAV 请求应用文件扩展名,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /fileExtensions.applyToWebDAV:false

  若要添加新文件扩展名,请使用以下语法:

  appcmd set config /section:requestfiltering /+fileExtensions.[fileextension=' .string ',allowed='true | false']

  变量 fileextension string 为您要允许或拒绝的文件扩展名。

  例如,若要为文件扩展名 .xxx 添加允许规则,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /+fileExtensions.[fileextension=' .xxx ',allowed='true']

  若要删除文件扩展名 .xxx 的规则,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /-fileExtensions.[fileextension=' .xxx ']

  配置请求限制

  若要配置内容所允许的最大长度值,请使用以下语法:

  appcmd set config /section:requestfiltering /requestlimits.maxallowedcontentlength: unit

  变量 requestlimits.maxallowedcontentlengthunit 用于指定内容的最大长度。

  例如,若要将内容的最大长度指定为 30000000,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /requestlimits.maxallowedcontentlength:30000000

  若要配置传入 URL 所允许的最大长度值,请使用以下语法:

  appcmd set config /section:requestfiltering /requestlimits.maxurl: unit

  变量 requestlimits.maxurlunit 用于指定传入 URL 的最大长度。

  例如,若要将传入 URL 的最大长度指定为 4096,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /requestlimits.maxurl:4096

  若要配置传入查询字符串所允许的最大长度值,请使用以下语法:

  appcmd set config /section:requestfiltering /requestlimits.maxquerystring: unit

  变量 requestlimits.maxquertystringunit 用于指定传入查询字符串的最大长度。

  例如,若要将传入查询字符串的最大长度指定为 2048,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /requestlimits.maxquerystring:2048

  若要配置特定 HTTP 头的大小限制,请使用以下语法:

  appcmd set config /section:requestfiltering /+requestlimits.headerLimits.[header=' string ',sizelimit=' unit ']

  变量 header string 用于指定适用此限制的头。 变量 sizelimitunit 用于指定此头的最大大小。

  例如,若要将包含值 contoso.com 的头的最大大小指定为 2048,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /+requestlimits.headerLimits.[header='contoso.com',sizelimit='2048']
  配置谓词

  若要配置 IIS 处理未列出的谓词的方式,请使用以下语法:

  appcmd set config /section:requestfiltering /verbs.allowunlisted:true | false

  例如,若要拒绝未列出的谓词,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /verbs.allowunlisted:false

  若要配置是否应向 WebDAV 请求应用谓词筛选,请使用以下语法:

  appcmd set config /section:requestfiltering /verbs.applyToWebDAV:true | false

  例如,若要配置 IIS 以便不向 WebDAV 请求应用谓词筛选,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /verbs.applyToWebDAV:false

  若要配置要筛选的谓词,请使用以下语法:

  appcmd set config /section:requestfiltering /+verbs.[verb=' string ',allowed='true | false']

  变量 verbstring 用于指定适用此限制的谓词。

  例如,若要指定允许使用 GET,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /+verbs.[verb='GET',allowed='true']

  配置隐藏段

  若要配置是否应向 WebDAV 请求应用隐藏段,请使用以下语法:

  appcmd set config /section:requestfiltering /hiddensegments.applyToWebDAV:true | false

  例如,若要配置 IIS 以便不向 WebDAV 请求应用隐藏段,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /hiddensegments.applyToWebDAV:false

  若要配置隐藏段,请使用以下语法:

  appcmd set config /section:requestfiltering /+hiddensegments.[segment=' string ']

  变量 segmentstring 用于指定隐藏的 URL 段。

  例如,若要指定 /bin 为隐藏段,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /+hiddensegments.[segment='/bin']

  配置拒绝 URL 序列

  若要拒绝使用 URL 序列,请使用以下语法:

  appcmd set config /section:requestfiltering /+denyurlsequences.[sequence=' string ']

  变量 sequencestring 用于指定 URL 中从不允许 IIS 解析的字符序列。

  例如,若要指定 IIS 从不解析包含两个句点的 URL,请在命令提示符处键入以下命令,然后按 Enter:

  appcmd set config /section:requestfiltering /+denyurlsequences.[sequence='..']


该杂文来自: 网络知识杂文

上一篇:win2008 IIS7禁用网站日志

下一篇:免费360WiFi使用条件及方法

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计