Mar
15
Wake on LAN(WOL),俗称远程唤醒,是现在很多网卡都支持的功能。而远程唤醒的实现,主要是向目标主机发送特殊格式的数据包,是AMD公司制作的Magic Packet这套软件以生成网络唤醒所需要的特殊数据包,俗称魔术包(Magic Packet)。Magic Packet格式虽然只是AMD公司开发推广的技术,并非世界公认的标准,但是仍然受到很多网卡制造商的支持,因此 许多具有网络唤醒功能的网卡都能与之兼容。
Boeing、IBM、Cisco、United States Army、Canada Customs and Revenue Agency、Intel Corp、Compaq、Lucent、Microsoft Ltd、Dell Computer Corporation、Hewlett-Packard、Siemens、Walt Disney World Co.、Compuware Corp、AMD (Isn't that ironic)、Nortel Networks、Macromedia Inc.、British Telecommunications plc、eBay等等公司均在使用WOL技术。
要实现远程唤醒,还需要硬件的设置:
主板和网卡必须都支持远程唤醒功能。一般目前的主板都支持这个功能(2002年以后的板都有),支持的主板上通常都有一个专门的3芯插座,以便在关机时为网卡供电。但并非所有的网卡都支持该功能(特别是一些价格较便宜的低档网卡),要判断网卡是否支持远程唤醒功能的方法很简单,支持远程唤醒的网卡上都有一个3针的WOL接口和一条3芯的远程唤醒电缆,通过判断网卡是否带有WOL接口即可(有些较新的网卡可能没有WOL接口也能支持远程唤醒。这是因为现在流行的主板支持PCI2.2标准,而PCI 2.2标准不需要通过专门的WOL接口为网卡供电,允许主板直接通过PCI插槽向网卡提供Standby电源)。
字串6
1.硬件连接
网卡安装完毕后将远程唤醒电缆的一端插入到网卡的WOL接口上,另外一端与主板的3针WOL远程唤醒接口相连(该接口旁通常标有WOL_CON的字样,当然如果主板和网卡都支持PCI2.2标准则无须做这一步)。
需要说明的是,某些主板上已经集成了具有网络唤醒功能的网卡,只要开启“Wake on PCI Card”功能就可以了,没有什么三脚插座,更不需要专用的三芯连线。
2.CMOS设置
打开CMOS远程唤醒功能很简单,只要将CMOS设置中的“Power Management Setup”的“Wake Up On LAN”或“Resume by LAN”项设置为“Enable”或“On”即可。
ATX电源
必须要使用ATX电源,而且其+5V Standby电流必须比较大,根据Intel的建议,它需要在600mA以上。该电流的大小可以从电源外部标识中的+5VSB(或+5AUX,5VSB)栏里查到。(绝大部分的网卡在0.7A以下都可唤醒)
如果远程计算机最后一次关机的时候是属于非正常关机(突然断电或者关机时死机等),唤醒就有可能会失败。在Windows 2000/XP系统中如果在关闭计算机时使用休眠 ,也可能会造成唤醒失败。这是因为一些网卡需要复位一个标记,这只有在操作系统正常关闭的时候才会发生。
字串9
软件的实现方面,其实就是通过socket向目标的机器发送Magic Packet(魔术包),魔术包的格式,包含有连续6个字节的“FF”和连续重复16次的MAC地址。你可以在任何协议的数据包(如在TCP/IP、IPX包)中填上 "FFFFFFFFFFFF"+连续重复16次的MAC地址,就可利用该协议作出一个使用该协议的Magic Packet。只要NIC检测到数据包中任何地方有这样的片段,便会将计算机唤醒。
假设被控计算机的Mac地址为01:02:03:04:05:06 (6 bytes),那么那台机器的网卡在数据帧内发现以下的片断便会将计算机唤醒。
FFFFFFFFFFFF010203040506010203040506010203040506010203040506
010203040506010203040506010203040506010203040506010203040506
010203040506010203040506010203040506010203040506010203040506
010203040506010203040506
正是因为这个Magic Packet可以封装在任何协议的数据包中,可以在各种Router和switch之间传送,而不会影响Magic Packet唤醒的功能。也就是说,不管Magic Packet是来自于LAN还是WAN,只要网卡检测到Magic Packet就能唤醒。最常被使用的是UDP广播包,不需要端口号,只要知道被控计算机的MAC地址即可。
字串4
注:UDP广播分两种,一种是directed broadcast,比如你的网段是192.168.0.X,你就往192.168.0.255发就可以了。另一种是limited broadcast,广播地址是255.255.255.255
要了解更多请参见“Magic Packet? Technical Documentation”
http://www.amd.com.cn/chcn/ConnectivitySolutions/TechnicalResources/0,,50_2334_2481_2494,00.html
Chapter2:局域网远程唤醒
请你务必弄懂Chapter1中所讲解的东西再开始看Chapter2。
首先声明一点,在你机上安装任何远程控制软件的客户端都不可以实现远程唤醒,PCAnywhere、Remote Administrator之类的远程控制软件在关机的情况下根本不可能工作,手机短信实现远程唤醒也是天方夜谭。远程唤醒只能基于你的计算机的硬件去实现。
现在假设A、B两机位于同一个局域网中, 要用主控计算机A机远程唤醒被控计算机B。
那你只要在B机的CMOS设置(有人喜欢叫BIOS设置)中设置好两个地方:
1.开启“Wake on PCI Card”功能,没有这项的设置的话,那可能就要插远程唤醒电缆了;
字串1
这步的目的是“在关机时为网卡供电”
2.开启“Wake Up On LAN”或“Resume by LAN”功能;
这步的目的是“让主板接受网卡发送的唤醒信号”
设置好之后,就保存退出。
在A机你要下载局域网唤醒的小软件,下面我推荐两款给大家用吧。
PCnet Magic Packet Utility——AMD的产品,英文介面,需要安装才可以使用,功能比较强大
http://dl.pconline.com.cn/html_2/1/59/id=1885&pn=0.html
NetWaker for windows 简体中文版
下面以AMD的Magic Packet为例,在A机下载安装好。该软件默认安装在C:\pcnet\magic_pkt目录下,由于不会在程序项中或桌面上增加任何快捷方式,因此,要想运行该软件,用户必须自己到所安装的目录下执行magpac.exe,自己动手将该程序在桌面上建立一个快捷方式当然更方便了。
运行magpac.exe,在“Magic Packets”菜单中单击“Power On One Host”(启动某一主机)命令,显示“Send a Magic Packet to One Host”(向主机发送唤醒数据包)对话框(如图所示)。在“Destination Ethernet Address”(目标以太网地址)中输入B机的网卡MAC地址,单击“Send”(发送)按钮。B机将自动启动。
当然,Magic Packet还可以远程唤醒局域网内多台计算机,留给你自己去摸索吧。
下面我提供一个图文版Magic Packet的教程链接供大家学习吧:
http://www.codefans.com/ArticleView/Article_1174.html
Chapter3:广域网的远程唤醒
1、广域网中实现远程唤醒的话,其实也不比局域网远程唤醒难多少。被控计算机端只要增加一个能获取公网IP地址、能设置端口映射的设备(如路由器、防火墙)。 字串2
现在主流的宽带上网方式不外乎ADSL跟Cable(即视讯宽频、有线电视网络)两种,都可以使用宽带路由实现共享上网,下面简单讲下这两种上网方式下路由器怎样设置才能获取到公网IP地址。
ADSL分两种,一种是固定IP的ADSL,在路由器中选择固定IP地址上网方式,填上电信分配给你的公网IP地址即可;另外一种是动态IP的ADSL,在路由器中设置PPPoE拨号,填上你的用户名、密码,拨号成功后路由器就会自动获取一个公网IP地址;
Cable的话,只要在路由器设置“自动获取IP”上网方式,路由器就会自动获取一个公网IP地址;
正确设置好路由器之后,在路由器的连接状态那里可以直接查看其公网IP地址。
2、在路由器中设置允许“Subnet Directed Broadcasts(子网定向广播)”,并且设置端口映射,将路由器的某一端口映射到被控计算机的任意端口
3、只要路由器通电,主控计算机就能通过互联网向路由器发送Magic Packet,而路由器与被控计算机之间是通过网线连通的,所以可以很顺利地将Magic Packet发送到被控计算机的网卡。路由器实际上起到中间桥梁的作用。
附上能发送Magic Packet的网页Wake On Lan over the Internet
http://www.depicus.com/wake-on-lan/woli.aspx 字串4
Netmask是一个比较值得注意的地方,填错了的话,目标IP地址就会出错。
下面我通过一个例子简单讲述一下广域网远程唤醒的过程
假设主控计算机为A机,被控计算机为B机
B机的所在局域网环境如下:一条ADSL接在4口路由器R1上,R1的4 个口分别连接着S1,S2,S3,S4四台交换机。B机接在S3交换机的其中一个口。
R1拨号后自动获取到的IP为12.34.56.78,B机在局域网中的IP为192.168.1.167,MAC地址为BB:BB:BB:BB:BB:BB。
在R1设置端口映射条目如下:12.34.56.78:9——>192.168.1.255:168
这里192.168.1.255为192.168.1.167所在网络的定向广播地址。
为什么不直接映射到192.168.1.167呢?因为当B机关机后,192.168.1.167这个IP不再与R1通信,R1中关于192.168.1.167的ARP条目也会很快就消失,所有与192.168.1.167这个IP通信的数据包都会被丢弃。
1.A机向12.34.56.78(255.255.255.251)这个目标IP的9号端口发送一个包含FFFFFFFFFFFF和连续重复16次BBBBBBBBBBBB的Magic Packet的单播包,中间经过了N个路由,该单播包顺利进入R1;
2.当R1检测到该数据包端口号为9,根据端口映射条目将该数据包的目标IP及端口号修改为192.168.1.255:168,此时该包被R1识别成定向广播包,因为R1已设置成允许Subnet Directed Broadcasts,所以该包并没有被丢弃;
字串7
3.R1将这个广播包向4个口广播,S1,S2,S3,S4所连的所有端口都收到这个广播包,即便B机处于关机状态也会收到该广播包;
B机的网卡检测到广播包中含自己MAC地址信息的Magic Packet,就会被唤醒,而其它机收到之后只会将该数据包丢弃。
4.实际应用中不建议主控计算机通过IP地址去跟路由器通讯,因为一旦路由器重新获取IP地址,远程唤醒就会失效。只要路由器支持动态域名解析(DDNS)功能,可将路由设置成IP地址变更时自动向DDNS提供商重新注册IP地址,DDNS提供商将根据你的帐号对你申请的域名进行域名解析。设置成功后就可以通过固定的域名去与路由器通讯,唤醒与该路由器直连的计算机。
欲了解更多关于DDNS(动态域名解析服务)的信息可参见这里:
http://publish.it168.com/2005/0519/20050519002902.shtml?cChanNel=no&cPositi
Chapter4:
网络远程唤醒还可以使用调制解调器,只要主板支持Wake-Up On Internal Modem(WOM),那么电话能通的地方都能利用WOM来实现远程唤醒。普通的内置调制解调器是不能直接通过PCI插槽得到+5VSB待命电流的,我们需要用一条“WOM”连接线,插到内置调制解调器及主板的WOM的插槽内。若使用外置式调制解调器时则不存在这个问题,因为工作电压是由外置式调制解调器单独的电源变压器提供的。 字串7
确保主机和调制解调器的电源打开电话线已插好,在POWER MANAGEMENT SETUP里找modem ring resume或者POWER ON BY RING项,将其设定为ON或者ENABLED。只要Modem处于开启状态,拿另一部电话拨打Modem所连接的电话号码就可以通过WOM实现远程唤醒了。使用WOM进行远程唤醒不用担心电话费的问题,因为Modem只要侦测到电话震铃不需要接听电话就可以启动机器(所以我们不用花一分钱就可以打国际长途去唤醒位于另一个国家中的计算机了)。
然后WOM有个弊端,所有电话打进来都会马上唤醒,而这通电话很可能不是你打进的。计算机开着自然就要耗电的啦,当然你可以设置计算机在空闲一段时间后自动关机,这样可以省下不少电费。但是如果整天有电话打进的话,估计被控计算机也命不久已。
Boeing、IBM、Cisco、United States Army、Canada Customs and Revenue Agency、Intel Corp、Compaq、Lucent、Microsoft Ltd、Dell Computer Corporation、Hewlett-Packard、Siemens、Walt Disney World Co.、Compuware Corp、AMD (Isn't that ironic)、Nortel Networks、Macromedia Inc.、British Telecommunications plc、eBay等等公司均在使用WOL技术。
要实现远程唤醒,还需要硬件的设置:
主板和网卡必须都支持远程唤醒功能。一般目前的主板都支持这个功能(2002年以后的板都有),支持的主板上通常都有一个专门的3芯插座,以便在关机时为网卡供电。但并非所有的网卡都支持该功能(特别是一些价格较便宜的低档网卡),要判断网卡是否支持远程唤醒功能的方法很简单,支持远程唤醒的网卡上都有一个3针的WOL接口和一条3芯的远程唤醒电缆,通过判断网卡是否带有WOL接口即可(有些较新的网卡可能没有WOL接口也能支持远程唤醒。这是因为现在流行的主板支持PCI2.2标准,而PCI 2.2标准不需要通过专门的WOL接口为网卡供电,允许主板直接通过PCI插槽向网卡提供Standby电源)。
字串6
1.硬件连接
网卡安装完毕后将远程唤醒电缆的一端插入到网卡的WOL接口上,另外一端与主板的3针WOL远程唤醒接口相连(该接口旁通常标有WOL_CON的字样,当然如果主板和网卡都支持PCI2.2标准则无须做这一步)。
需要说明的是,某些主板上已经集成了具有网络唤醒功能的网卡,只要开启“Wake on PCI Card”功能就可以了,没有什么三脚插座,更不需要专用的三芯连线。
2.CMOS设置
打开CMOS远程唤醒功能很简单,只要将CMOS设置中的“Power Management Setup”的“Wake Up On LAN”或“Resume by LAN”项设置为“Enable”或“On”即可。
ATX电源
必须要使用ATX电源,而且其+5V Standby电流必须比较大,根据Intel的建议,它需要在600mA以上。该电流的大小可以从电源外部标识中的+5VSB(或+5AUX,5VSB)栏里查到。(绝大部分的网卡在0.7A以下都可唤醒)
如果远程计算机最后一次关机的时候是属于非正常关机(突然断电或者关机时死机等),唤醒就有可能会失败。在Windows 2000/XP系统中如果在关闭计算机时使用休眠 ,也可能会造成唤醒失败。这是因为一些网卡需要复位一个标记,这只有在操作系统正常关闭的时候才会发生。
字串9
软件的实现方面,其实就是通过socket向目标的机器发送Magic Packet(魔术包),魔术包的格式,包含有连续6个字节的“FF”和连续重复16次的MAC地址。你可以在任何协议的数据包(如在TCP/IP、IPX包)中填上 "FFFFFFFFFFFF"+连续重复16次的MAC地址,就可利用该协议作出一个使用该协议的Magic Packet。只要NIC检测到数据包中任何地方有这样的片段,便会将计算机唤醒。
假设被控计算机的Mac地址为01:02:03:04:05:06 (6 bytes),那么那台机器的网卡在数据帧内发现以下的片断便会将计算机唤醒。
FFFFFFFFFFFF010203040506010203040506010203040506010203040506
010203040506010203040506010203040506010203040506010203040506
010203040506010203040506010203040506010203040506010203040506
010203040506010203040506
正是因为这个Magic Packet可以封装在任何协议的数据包中,可以在各种Router和switch之间传送,而不会影响Magic Packet唤醒的功能。也就是说,不管Magic Packet是来自于LAN还是WAN,只要网卡检测到Magic Packet就能唤醒。最常被使用的是UDP广播包,不需要端口号,只要知道被控计算机的MAC地址即可。
字串4
注:UDP广播分两种,一种是directed broadcast,比如你的网段是192.168.0.X,你就往192.168.0.255发就可以了。另一种是limited broadcast,广播地址是255.255.255.255
要了解更多请参见“Magic Packet? Technical Documentation”
http://www.amd.com.cn/chcn/ConnectivitySolutions/TechnicalResources/0,,50_2334_2481_2494,00.html
Chapter2:局域网远程唤醒
请你务必弄懂Chapter1中所讲解的东西再开始看Chapter2。
首先声明一点,在你机上安装任何远程控制软件的客户端都不可以实现远程唤醒,PCAnywhere、Remote Administrator之类的远程控制软件在关机的情况下根本不可能工作,手机短信实现远程唤醒也是天方夜谭。远程唤醒只能基于你的计算机的硬件去实现。
现在假设A、B两机位于同一个局域网中, 要用主控计算机A机远程唤醒被控计算机B。
那你只要在B机的CMOS设置(有人喜欢叫BIOS设置)中设置好两个地方:
1.开启“Wake on PCI Card”功能,没有这项的设置的话,那可能就要插远程唤醒电缆了;
字串1
这步的目的是“在关机时为网卡供电”
2.开启“Wake Up On LAN”或“Resume by LAN”功能;
这步的目的是“让主板接受网卡发送的唤醒信号”
设置好之后,就保存退出。
在A机你要下载局域网唤醒的小软件,下面我推荐两款给大家用吧。
PCnet Magic Packet Utility——AMD的产品,英文介面,需要安装才可以使用,功能比较强大
http://dl.pconline.com.cn/html_2/1/59/id=1885&pn=0.html
NetWaker for windows 简体中文版
下面以AMD的Magic Packet为例,在A机下载安装好。该软件默认安装在C:\pcnet\magic_pkt目录下,由于不会在程序项中或桌面上增加任何快捷方式,因此,要想运行该软件,用户必须自己到所安装的目录下执行magpac.exe,自己动手将该程序在桌面上建立一个快捷方式当然更方便了。
运行magpac.exe,在“Magic Packets”菜单中单击“Power On One Host”(启动某一主机)命令,显示“Send a Magic Packet to One Host”(向主机发送唤醒数据包)对话框(如图所示)。在“Destination Ethernet Address”(目标以太网地址)中输入B机的网卡MAC地址,单击“Send”(发送)按钮。B机将自动启动。
当然,Magic Packet还可以远程唤醒局域网内多台计算机,留给你自己去摸索吧。
下面我提供一个图文版Magic Packet的教程链接供大家学习吧:
http://www.codefans.com/ArticleView/Article_1174.html
Chapter3:广域网的远程唤醒
1、广域网中实现远程唤醒的话,其实也不比局域网远程唤醒难多少。被控计算机端只要增加一个能获取公网IP地址、能设置端口映射的设备(如路由器、防火墙)。 字串2
现在主流的宽带上网方式不外乎ADSL跟Cable(即视讯宽频、有线电视网络)两种,都可以使用宽带路由实现共享上网,下面简单讲下这两种上网方式下路由器怎样设置才能获取到公网IP地址。
ADSL分两种,一种是固定IP的ADSL,在路由器中选择固定IP地址上网方式,填上电信分配给你的公网IP地址即可;另外一种是动态IP的ADSL,在路由器中设置PPPoE拨号,填上你的用户名、密码,拨号成功后路由器就会自动获取一个公网IP地址;
Cable的话,只要在路由器设置“自动获取IP”上网方式,路由器就会自动获取一个公网IP地址;
正确设置好路由器之后,在路由器的连接状态那里可以直接查看其公网IP地址。
2、在路由器中设置允许“Subnet Directed Broadcasts(子网定向广播)”,并且设置端口映射,将路由器的某一端口映射到被控计算机的任意端口
3、只要路由器通电,主控计算机就能通过互联网向路由器发送Magic Packet,而路由器与被控计算机之间是通过网线连通的,所以可以很顺利地将Magic Packet发送到被控计算机的网卡。路由器实际上起到中间桥梁的作用。
附上能发送Magic Packet的网页Wake On Lan over the Internet
http://www.depicus.com/wake-on-lan/woli.aspx 字串4
Netmask是一个比较值得注意的地方,填错了的话,目标IP地址就会出错。
下面我通过一个例子简单讲述一下广域网远程唤醒的过程
假设主控计算机为A机,被控计算机为B机
B机的所在局域网环境如下:一条ADSL接在4口路由器R1上,R1的4 个口分别连接着S1,S2,S3,S4四台交换机。B机接在S3交换机的其中一个口。
R1拨号后自动获取到的IP为12.34.56.78,B机在局域网中的IP为192.168.1.167,MAC地址为BB:BB:BB:BB:BB:BB。
在R1设置端口映射条目如下:12.34.56.78:9——>192.168.1.255:168
这里192.168.1.255为192.168.1.167所在网络的定向广播地址。
为什么不直接映射到192.168.1.167呢?因为当B机关机后,192.168.1.167这个IP不再与R1通信,R1中关于192.168.1.167的ARP条目也会很快就消失,所有与192.168.1.167这个IP通信的数据包都会被丢弃。
1.A机向12.34.56.78(255.255.255.251)这个目标IP的9号端口发送一个包含FFFFFFFFFFFF和连续重复16次BBBBBBBBBBBB的Magic Packet的单播包,中间经过了N个路由,该单播包顺利进入R1;
2.当R1检测到该数据包端口号为9,根据端口映射条目将该数据包的目标IP及端口号修改为192.168.1.255:168,此时该包被R1识别成定向广播包,因为R1已设置成允许Subnet Directed Broadcasts,所以该包并没有被丢弃;
字串7
3.R1将这个广播包向4个口广播,S1,S2,S3,S4所连的所有端口都收到这个广播包,即便B机处于关机状态也会收到该广播包;
B机的网卡检测到广播包中含自己MAC地址信息的Magic Packet,就会被唤醒,而其它机收到之后只会将该数据包丢弃。
4.实际应用中不建议主控计算机通过IP地址去跟路由器通讯,因为一旦路由器重新获取IP地址,远程唤醒就会失效。只要路由器支持动态域名解析(DDNS)功能,可将路由设置成IP地址变更时自动向DDNS提供商重新注册IP地址,DDNS提供商将根据你的帐号对你申请的域名进行域名解析。设置成功后就可以通过固定的域名去与路由器通讯,唤醒与该路由器直连的计算机。
欲了解更多关于DDNS(动态域名解析服务)的信息可参见这里:
http://publish.it168.com/2005/0519/20050519002902.shtml?cChanNel=no&cPositi
Chapter4:
网络远程唤醒还可以使用调制解调器,只要主板支持Wake-Up On Internal Modem(WOM),那么电话能通的地方都能利用WOM来实现远程唤醒。普通的内置调制解调器是不能直接通过PCI插槽得到+5VSB待命电流的,我们需要用一条“WOM”连接线,插到内置调制解调器及主板的WOM的插槽内。若使用外置式调制解调器时则不存在这个问题,因为工作电压是由外置式调制解调器单独的电源变压器提供的。 字串7
确保主机和调制解调器的电源打开电话线已插好,在POWER MANAGEMENT SETUP里找modem ring resume或者POWER ON BY RING项,将其设定为ON或者ENABLED。只要Modem处于开启状态,拿另一部电话拨打Modem所连接的电话号码就可以通过WOM实现远程唤醒了。使用WOM进行远程唤醒不用担心电话费的问题,因为Modem只要侦测到电话震铃不需要接听电话就可以启动机器(所以我们不用花一分钱就可以打国际长途去唤醒位于另一个国家中的计算机了)。
然后WOM有个弊端,所有电话打进来都会马上唤醒,而这通电话很可能不是你打进的。计算机开着自然就要耗电的啦,当然你可以设置计算机在空闲一段时间后自动关机,这样可以省下不少电费。但是如果整天有电话打进的话,估计被控计算机也命不久已。
Mar
15
姓名: 李钰
年龄: 12月20日
身高: 167 (cm)
体重: 46 (kg)
生日:1976年12月20日
逝世:2009年3月14日22:48
毕业院校: 上海戏剧学院
所学专业: 表演
2009年3月14日22:48,女演员李钰(原名李郁)因患淋巴癌医治无效,在北京协和医院病逝,终年33岁。上海戏剧学院同学会会长赵有亮和江平向新浪娱乐证实此消息。
李钰出生于1976年12月20日,是上海戏剧学院93级学生,她最为人熟知的角色是电视剧《情深深雨蒙蒙》中的方瑜一角,她还曾主演电影《怒江魂》、电视剧《末代皇妃》等多部作品。
从艺简历
电影:
《恰同学少年》 饰:姗姗(女主角)
《老婆万岁》 饰:女主角
《蛇咒》 饰:女主角
《峡谷传奇》 饰:女主角
电视剧:
《倩女幽魂》 饰:聂小倩(女主角)
《恋爱时节》 饰:钱惠珊(女主角)
《情深深雨蒙蒙》 饰:方瑜 合作演员:赵薇 高鑫 林心如 苏有朋 寇振海
《猎豹出击》 饰:容雨君(女主角)
《情义两重天》 饰:钟虹(女主角)
《末代皇妃》 饰:川岛芳子(反一号)
上戏北京同学会发布讣告:
上海戏剧学院北京同学会泣告:
上戏表演系九三级学生,电影《怒江魂》、电视剧《情深深雨蒙蒙》、《末代皇妃》等片的主演、优秀青年影视演员李钰,因患淋巴癌医治无效,不幸于2009年3月14日22:48分在北京协和医院病逝,特此讣告。
年龄: 12月20日
身高: 167 (cm)
体重: 46 (kg)
生日:1976年12月20日
逝世:2009年3月14日22:48
毕业院校: 上海戏剧学院
所学专业: 表演
2009年3月14日22:48,女演员李钰(原名李郁)因患淋巴癌医治无效,在北京协和医院病逝,终年33岁。上海戏剧学院同学会会长赵有亮和江平向新浪娱乐证实此消息。
李钰出生于1976年12月20日,是上海戏剧学院93级学生,她最为人熟知的角色是电视剧《情深深雨蒙蒙》中的方瑜一角,她还曾主演电影《怒江魂》、电视剧《末代皇妃》等多部作品。
从艺简历
电影:
《恰同学少年》 饰:姗姗(女主角)
《老婆万岁》 饰:女主角
《蛇咒》 饰:女主角
《峡谷传奇》 饰:女主角
电视剧:
《倩女幽魂》 饰:聂小倩(女主角)
《恋爱时节》 饰:钱惠珊(女主角)
《情深深雨蒙蒙》 饰:方瑜 合作演员:赵薇 高鑫 林心如 苏有朋 寇振海
《猎豹出击》 饰:容雨君(女主角)
《情义两重天》 饰:钟虹(女主角)
《末代皇妃》 饰:川岛芳子(反一号)
上戏北京同学会发布讣告:
上海戏剧学院北京同学会泣告:
上戏表演系九三级学生,电影《怒江魂》、电视剧《情深深雨蒙蒙》、《末代皇妃》等片的主演、优秀青年影视演员李钰,因患淋巴癌医治无效,不幸于2009年3月14日22:48分在北京协和医院病逝,特此讣告。
Mar
15
李钰在《情深深雨濛濛》中饰演方瑜。
李钰在《情深深雨濛濛》中饰演方瑜。
李钰曾主演多部影视剧。
网易娱乐3月15日讯 知名女演员李钰因患淋巴癌医治无效,在北京协和医院病逝,年仅33岁。
李钰出生于1976年12月20日,是上海戏剧学院93级学生,因出演《情深深雨濛濛》中的方瑜一角而为广大观众熟知,后来又主演了《倩女幽魂》《恋爱时节》《恰同学少年》等影视剧。
Mar
14
来源于:
http://www.microsoft.com/china/technet/security/sgk/sec_IIS_6_0.mspx
本页内容
简介
准备工作
减少 Web 服务器的攻击面
配置帐户
配置文件和目录的安全
保护网站和虚拟目录
在 Web 服务器上配置安全套接字层
相关信息
简介
Web 服务器通常是各种安全攻击的目标。其中一些攻击非常严重,足以对企业资产、工作效率和客户关系造成相当的破坏—所有攻击都会带来不便和麻烦。Web 服务器的安全是企业成功的关键。
本文档说明如何开始保护 Web 服务器的过程。此 Web 服务器在 Microsoft® Windows Server™ 2003 Standard Edition 操作系统上运行 Internet Information Services (IIS) 6.0。首先,本节描述影响 Web 服务器安全的一些最常见威胁。然后,本文档提供说明性指导,使您的 Web 服务器更安全地防御这些攻击。
通过对 IIS 早期版本做以下更改,IIS 6.0 以更加主动的姿态来防御恶意用户和攻击者:
• 安装 Windows Server 2003 Standard Edition 时,默认情况下没有安装 IIS 6.0。
• 初次安装 IIS 6.0 时,Web 服务器仅服务于或显示静态网页 (HTML),这降低了服务于动态网页或可执行文件、内容而带来的风险。
• 万维网发布服务(WWW 服务)是 IIS 6.0 初次安装时在默认情况下支持的唯一服务。您可以在需要时启用所需要的特定服务。
• IIS 6.0 初次安装时,默认情况下禁用 ASP 和 ASP.NET。
• 对于其他保护,IIS 6.0 中所有默认的安全配置设置都符合或超过由 IIS Lockdown Tool 提供的安全配置设置。IIS Lockdown Tool 在 IIS 的早期版本上运行,旨在通过禁用不必要的特性来减少 Web 服务器的攻击面。有关 IIS Lockdown Tool 的详细信息,请参阅 Security Guidance Kit 中的“确保 Internet 信息服务 5.0 和 5.1 的安全”。
由于 IIS 6.0 的默认设置禁用了 Web 服务通常使用的许多功能,因此,本文档说明如何在降低服务器暴露给潜在攻击者程度的同时配置 Web 服务器的其他功能。
本文档就增强 Web 服务器的安全提供以下指导:
• 减少 Web 服务器的攻击面,或者降低服务器暴露给潜在攻击者的程度。
• 配置匿名访问的用户和组帐户
• 保护文件和目录不接受未经授权的访问
• 保护网站和虚拟目录不接受未经授权的访问
• 配置 Web 服务器上安全套接字层 (SSL)
要点:本文档包括的所有逐步说明都是使用“开始”菜单形成的,此菜单在安装操作系统时默认显示。如果修改过“开始”菜单,则这些步骤可能稍有不同。
在您完成本文档中的步骤之后,Web 服务器将能够服务于以 .asp 页面形式提供的动态内容,而且仍然能够对以下类型的攻击提供强有力的保护,这些攻击有时威胁到面向 Internet 的服务器:
• 配置文件攻击,此攻击搜集网站的有关信息;可通过禁止不需要的端口和禁用不需要的协议来减少这种攻击。
• 拒绝服务攻击,此攻击使 Web 服务器充满各种请求;可通过应用安全修补程序和软件更新来最大限度地减少这种攻击。
• 没有正确权限的用户未经授权的访问;通常通过配置 Web 和 NTFS 权限来阻止这种访问。
• 恶意代码在 Web 服务器上任意执行;可通过防止对系统工具和命令的访问来最大限度地减少这种攻击。
• 特权提升,使恶意用户能够使用具有较高特权的帐户来运行程序;可通过使用最低特权的服务和用户帐户来最大限度地减少这种攻击。
• 来自病毒、蠕虫和特洛伊木马的破坏;可通过禁用不需要的功能、使用最低特权的帐户以及及时应用最新安全修补程序来遏制这种攻击。
注意:由于保护 Web 服务器是一个复杂而长期的过程,完全的安全性很难保证。
返回页首
准备工作
本节说明本文档中描述的 Web 服务器的系统要求和特征。
系统要求
本文档中用作示例的 Web 服务器有以下系统要求:
• 此服务器运行 Windows Server 2003 Standard Edition。
• 操作系统安装在 NTFS 分区上。有关 NTFS 的信息,请在 Windows Server 2003 中的帮助和支持中心搜索“NTFS”。
• Windows Server 2003 所有必需的修补程序和更新都已经应用到此服务器。为了验证 Web 服务器上是否安装了最新的安全更新,请转到位于 Microsoft 网站 http://go.microsoft.com/fwlink/?LinkId=22630 上的 Windows Update 网页,利用 Windows Update 来扫描服务器是否有可用的更新。
• Windows Server 2003 安全保护已经应用到服务器。
本文档提供介绍性信息,帮助您设置最初的几个步骤,以配置一台更安全的 Web 服务器。不过,为了使 Web 服务器尽可能安全,您必须了解服务器上运行的应用程序的操作。本文档不包括应用程序特定安全配置的有关信息。
Web 服务器特征
本文档中用作示例的 Web 服务器有以下特征要求:
• Web 服务器正在工作进程隔离模式下运行 IIS 6.0 。
• Web 服务器托管一个面向 Internet 的网站。
• Web 服务器配有防火墙,仅支持 HTTP 端口 80 和 HTTPS 端口 443 上的流量。
• 此 Web 服务器是专用 Web 服务器,这种服务器只能用作 Web 服务器而不能用于其他目的,例如文件服务器、打印服务器或运行 Microsoft SQL Server® 的数据库服务器。
• 允许匿名访问网站。
• Web 服务器服务于 HTML 和 ASP 网页。
• 没有在 Web 服务器上配置 Microsoft 的 FrontPage® 2002 Server Extensions。
• Web 服务器上的应用程序不需要数据库连接。
• Web 服务器不支持 FTP(文件上传和下载)、SMTP(电子邮件)或 NNTP(新闻组)协议。
• Web 服务器不使用 Internet Security and Acceleration Server。
• 管理员必须本地登录以管理 Web 服务器。
返回页首
减少 Web 服务器的攻击面
通过减少 Web 服务器的攻击面,或者降低服务器暴露给潜在攻击者的程度,来开始保护 Web 服务器的过程。例如,仅启用 Web 服务器正常运行所必需的组件、服务和端口。
禁用 SMB 和 NetBIOS
主机枚举攻击扫描网络,以便确定潜在目标的 IP 地址。要降低主机枚举成功攻击 Web 服务器上面向 Internet 的端口的可能性,应禁用除传输控制协议 (TCP) 以外的所有网络协议。Web 服务器中的面向 Internet 的网络适配器上不需要服务器消息块 (SMB) 和 NetBIOS。
本节提供以下逐步说明,以降低 Web 服务器的攻击面:
• 禁用面向 Internet 连接上的 SMB
• 禁用基于 TCP/IP 的 NetBIOS
注意:禁用 SMB 和 NetBIOS 之后,此服务器不能用作文件服务器或打印服务器,不可以浏览网络,而且不能远程管理此 Web 服务器。如果您的服务器是需要管理员本地登录的专用 Web 服务器,这些限制则不会影响服务器的运行。
SMB 使用下列端口:
• TCP 端口 139
• TCP 和 UDP 端口 445 (SMB Direct Host)
NetBIOS 使用下列端口:
• TCP 和 UDP 端口 137(NetBIOS 命名服务)
• TCP 和 UDP 端口 138(NetBIOS 数据报服务)
• TCP 和 UDP 端口 139(NetBIOS 会话服务)
仅禁用 NetBIOS 将不会防止 SMB 通信,因为如果标准 NetBIOS 端口不可用,SMB 则使用 TCP 端口 445(也称为 SMB Direct Host)。您必须分别禁用 NetBIOS 和 SMB。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑、系统工具和设备管理器。
• 禁用面向 Internet 连接上的 SMB
1.
单击“开始”,单击“设置”,再单击“控制面板”,然后双击“网络连接”。
2.
右键单击您的面向 Internet 的连接,然后单击“属性”。
3.
清除“Microsoft 网络客户端”复选框。
4.
清除“Microsoft 网络的文件和打印机共享”复选框,然后单击“确定”。
• 禁用基于 TCP/IP 的 NetBIOS
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“系统工具”,然后选择“设备管理器”。
3.
右键单击“设备管理器”,单击“查看”,然后单击“显示隐藏的设备”。
4.
双击“非即插即用驱动程序”。
5.
右键单击“NetBios over Tcpip”,单击“停用”,然后单击“是”。
注意:本文档中的屏幕快照反映的是测试环境,其信息可能与您的屏幕所显示的信息有所不同。
上述过程不仅禁用 TCP 端口 445 和 UDP 端口 445 上的 SMB 直接宿主侦听者,而且禁用 Nbt.sys 驱动程序,并需要重新启动系统。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证 SMB 是否已禁用
1.
单击“开始”,单击“设置”,然后单击“网络和拨号连接”。
2.
右键单击您的面向 Internet 的连接,然后单击“属性”。
3.
验证是否清除了“Microsoft 网络客户端”和“Microsoft 网络的文件和打印机共享”复选框,然后单击“确定”。
• 验证 NetBIOS 是否已禁用
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“系统工具”,然后选择“设备管理器”。
3.
右键单击“设备管理器”,单击“查看”,然后单击“显示隐藏的设备”。
4.
双击“非即插即用驱动程序”,然后单击“NetBios over Tcpip”。
上下文菜单中现在出现“启用”选择,这表示 NetBIOS over TCP/IP 目前已禁用。
5.
单击“确定”关闭“设备管理器”。
只选择基本的 IIS 组件和服务
IIS 6.0 除了包括 WWW 服务之外,还包括一些子组件和服务,例如 FTP 服务和 SMTP 服务。为了最大限度地降低针对特定服务和子组件的攻击风险,建议您只选择网站和 Web 应用程序正确运行所必需的服务和子组件。
下表显示用作本文档示例的 Web 服务器上 IIS 子组件和服务在“添加或删除程序”中的推荐设置。
IIS 子组件和服务的推荐设置
子组件或服务 默认设置 Web 服务器设置
后台智能传输服务 (BITS) 服务器扩展
禁用
不更改
公用文件
启用
不更改
FTP 服务
禁用
不更改
FrontPage 2002 Server Extensions
禁用
不更改
Internet 信息服务管理器
启用
不更改
Internet 打印
禁用
不更改
NNTP 服务
禁用
不更改
SMTP 服务
启用
禁用
万维网服务
启用
不更改
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:添加或删除程序。
• 配置 IIS 组件和服务
1.
单击“开始”,单击“控制面板”,然后单击“添加或删除程序”。
2.
单击“添加/删除 Windows 组件”。
3.
在“Windows 组件向导”页面中的“组件”下,单击“应用程序服务器”,然后单击“详细信息”。
4.
单击“Internet 信息服务 (IIS)”,然后单击“详细信息”。
5.
参考上表,然后通过选择或清除相应组件或服务的复选框,来选择或取消相应的 IIS 组件和服务。
6.
按照“Windows 组件向导”中的以下说明来完成此向导。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否选择了 IIS 组件和服务
• 单击“开始”,单击“控制面板”,然后单击“管理工具”。
在“管理工具”菜单中出现“Internet 信息服务 (IIS) 管理器”。
只启用基本的 Web 服务扩展
服务于动态内容的 Web 服务器需要 Web 服务扩展。每种动态内容都响应特定的 Web 服务扩展。由于安全原因,IIS 6.0 允许您启用和禁用单独的 Web 服务扩展,因此,只启用您的内容所需要的扩展。
警告:不要启用所有的 Web 服务扩展。尽管启用所有的 Web 服务扩展可确保最大限度地兼容现有的网站和应用程序,但却大幅增加了 Web 服务器的攻击面。您可能需要分别测试您的网站和应用程序,以确保只启用必需的 Web 服务和扩展。
假设配置 Web 服务器来服务于作为默认网页的 Default.asp 文件。尽管配置了默认网页,但您必须启用 Active Server Pages Web 服务扩展才能查看 .asp 网页。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 启用 Active Server Pages Web 服务扩展
1.
单击“开始”,单击“控制面板”,单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
双击“本地计算机”,然后单击“Web 服务扩展”。
3.
单击“Active Server Pages”,然后单击“允许”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否启用了 Active Server Pages Web 服务扩展
1.
打开“文本编辑器”,键入文本,然后将文件作为 Default.asp 保存到 C:\inetpub\wwwroot 目录。
2.
在 Internet Explorer 地址栏中,键入以下 URL,然后按 Enter 键: http://localhost。
浏览器中出现 Default.asp 文件。
返回页首
配置帐户
建议您删除未使用的帐户,因为攻击者可能发现这些帐户,然后利用这些帐户来获取您服务器上的数据和应用程序的访问权。始终使用强密码,因为弱密码增加了成功进行强力攻击或字典攻击(即攻击者竭尽全力地猜密码)的可能性。使用以最低特权运行的帐户。否则,攻击者可以通过使用以高级特权运行的帐户来获取未经授权的资源的访问权。
本节对配置帐户提供以下逐步说明:
• 禁用未使用的帐户
• 使用应用程序池来隔离应用程序
禁用未使用的帐户
未使用的帐户及其特权可以被攻击者用来获取服务器的访问权。您应该定期审核服务器上的本地帐户,并禁用未使用的任何帐户。在生产服务器上禁用这些帐户之前,先在测试服务器上禁用帐户,以确保禁用帐户不会对应用程序的操作方式带来不利影响。如果在测试服务器上禁用帐户没有出现任何问题,则在生产服务器上禁用帐户。
注意:如果您选择删除而不是禁用未使用的帐户,则一定要知道您不能恢复已删除的帐户,因而不能删除管理员帐户和来宾帐户。而且,一定要在生产服务器上删除帐户之前,先在测试服务器上删除此帐户。
本节对删除或禁用未使用的帐户提供以下逐步说明:
• 禁用来宾帐户
• 重命名管理员帐户
• 重命名 IUSR_ComputerName 帐户
禁用来宾帐户
采用匿名连接来访问 Web 服务器时,使用来宾帐户。在默认安装 Windows Server 2003 时,禁用来宾帐户。 要限制对服务器的匿名连接,请确保禁用来宾帐户。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:计算机管理
• 禁用来宾帐户
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“本地用户和组”,然后单击“用户”文件夹。来宾帐户应该以红色的 X 图标显示,以指示此帐户已禁用。如果来宾帐户未禁用,则继续步骤 3 来禁用此帐户。
3.
右键单击“Guest”(来宾)帐户,然后单击“属性”。
4.
在“常规”选项卡上,选中“帐户已停用”复选框,然后单击“确定”。
来宾帐户现在应该以红色 X 图标显示。
重命名管理员帐户
默认的本地管理员帐户因其在计算机上的更高特权而成为恶意用户的目标。要增强安全性,请重命名默认的管理员帐户并分配一个强密码。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑。
• 重命名默认的管理员帐户并分配一个强密码
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“本地用户和组”,然后单击“用户”文件夹。
3.
右键单击“Administrator”(管理员)帐户,然后单击“重命名”。
4.
在框中键入名称,然后按 Enter 键。
5.
在桌面上,按 Ctrl+Alt+Del,然后单击“更改密码”。
6.
在“用户名”框中键入管理员帐户的新名称。
7.
在“旧密码”框中键入当前密码,在“新密码”框中键入新密码,在“确认新密码”框中重新键入新密码,然后单击“确定”。
警告:不要使用上下文菜单中的“设置密码”菜单项来更改密码,除非您忘记了密码并且没有可用的密码重置磁盘。使用这种方法来更改管理员密码可能导致受此密码保护的信息永久丢失。
重命名 IUSR 帐户
默认的匿名 Internet 用户帐户 IUSR_ComputerName 是在 IIS 安装期间创建的。ComputerName 的值是安装 IIS 时服务器的 NetBIOS 名称。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑。
• 重命名 IUSR 帐户
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“本地用户和组”,然后单击“用户”文件夹。
3.
右键单击 IUSR_ComputerName 帐户,然后单击“重命名”。
4.
键入新帐户名称,然后按 Enter 键。
• 在 IIS 元数据库中更改 IUSR 帐户的值
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击“本地计算机”,然后单击“属性”。
3.
选中“允许直接编辑配置数据库”复选框,然后单击“确定”。
4.
浏览至 MetaBase.xml 文件的位置,默认情况下为 C:\Windows\system32\inetsrv。
5.
右键单击 MetaBase.xml 文件,然后单击“编辑”。
6.
搜索“AnonymousUserName”属性,然后键入 IUSR 帐户的新名称。
7.
在“文件”菜单上,单击“退出”,然后单击“是”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证帐户是否已禁用
1.
按 Ctrl+Alt+Del,然后单击“注销”以注销 Web 服务器。
2.
在“登录到 Windows”对话框中,在“用户名”框中键入已禁用帐户的名称,键入已禁用帐户的密码,然后单击“确定”。
出现以下消息:
您的帐户已被停用。请向系统管理员咨询。
• 验证帐户是否已重命名
1.
按 Ctrl+Alt+Del,然后单击“注销”以注销 Web 服务器。
2.
在“登录到 Windows”对话框中,在“用户名”框中键入已重命名帐户以前的名称,键入重命名帐户的密码,然后单击“确定”。
出现以下消息:
系统无法让您登录。请确定您的用户名及域无误,然后再次输入密码。密码的字母必须使用正确的大小写。
3.
单击“确定”,然后在“用户名”框中键入重命名帐户的新名称。
4.
键入重命名帐户的密码,然后单击“确定”。
您应该能够用重命名的帐户登录到计算机。
使用应用程序池来隔离应用程序
使用 IIS 6.0,可以将应用程序隔离到应用程序池。应用程序池是包含一个或多个 URL 的一个组,一个工作进程或者一组工作进程对应用程序池提供服务。因为每个应用程序都独立于其他应用程序运行,因此,使用应用程序池可以提高 Web 服务器的可靠性和安全性。
在 Windows 操作系统上运行进程的每个应用程序都有一个进程标识,以确定此进程如何访问系统资源。每个应用程序池也有一个进程标识,此标识是一个以应用程序需要的最低权限运行的帐户。可以使用此进程标识来允许匿名访问您的网站或应用程序。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑。
• 创建应用程序池
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
双击本地计算机,右键单击“应用程序池”,单击“新建”,然后单击“应用程序池”。
3.
在“应用程序池 ID”框中,为应用程序池键入一个新 ID(例如,ContosoAppPool)。
4.
在“应用程序池设置”下,单击“Use default settings for the new application pool”(使用新应用程序池的默认设置),然后单击“确定”。
• 将网站或应用程序分配到应用程序池
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要分配到应用程序池的网站或应用程序,然后单击“属性”。
3.
根据您选择的应用程序类型,单击“主目录”、“虚拟目录”或“目录”选项卡。
4.
如果您将目录或虚拟目录分配到应用程序池,则验证“应用程序名”框是否包含正确的网站或应用程序名称。
-或者-
如果在“应用程序名”框中没有名称,则单击“创建”,然后键入网站或应用程序的名称。
5.
在“应用程序池”列表框中,单击您想要分配网站或应用程序的应用程序池的名称,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否创建了应用程序池
1.
使用管理员帐户登录到 Web 服务器。
2.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
3.
双击本地计算机,双击“应用程序池”,然后验证是否在应用程序池节点下出现您所创建的应用程序池。
4.
右键单击您所创建的程序池,然后单击“属性”。
5.
单击“标识”选项卡,验证此应用程序池是否设置为称作“网络服务”的预定义的安全帐户,然后单击“确定”。
• 验证网站或应用程序是否分配到特定的应用程序池
1.
使用管理员帐户登录到 Web 服务器。
2.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
3.
双击本地计算机,双击“网站”,右键单击您想要验证应用程序池设置的网站,然后单击“属性”。
4.
根据您选择的应用程序类型,单击“主目录”、“虚拟目录”或“目录”选项卡。
5.
在“应用程序池”列表框中,验证是否列出您想要将网站分配到的应用程序池的名称,然后单击“取消”。
返回页首
配置文件和目录的安全
使用强访问控制来帮助保护敏感的文件和目录。在多数情况下,允许对特定帐户的访问比拒绝对特定帐户的访问更加有效。如有可能,请将访问设置在目录级。当文件添加到文件夹时,它们继承文件夹的权限,因此您不需要采取进一步的措施。
本节对配置文件和目录提供以下逐步说明:
• 重定位和设置 IIS 日志文件的权限
• 配置 IIS 元数据库权限
• 禁用 FileSystemObject 组件
重新定位和设置 IIS 日志文件的权限
为了增强 IIS 日志文件的安全,您应该将文件重新定位到非系统驱动器,此驱动器格式化为使用 NTFS 文件系统。此位置应该与网站内容的位置不同。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑和 Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 将 IIS 日志文件的位置移动到非系统分区
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至您想要重新定位 IIS 日志文件的位置。
3.
右键单击您想要重新定位 IIS 日志文件的上一级目录,单击“新建”,然后单击“文件夹”。
4.
键入文件夹的名称,例如 ContosoIISLogs,然后按 Enter 键。
5.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
6.
右键单击网站,然后单击“属性”。
7.
单击“网站”选项卡,然后单击“启用日志记录”框架中的“属性”。
8.
在“常规属性”选项卡中,单击“浏览”,然后导航到您刚才创建的文件夹以存储 IIS 日志文件。
9.
单击“确定”三次。
注意:如果您在原来的位置 Windows\System32\Logfiles 上有 IIS 日志文件,则必须将这些文件手动移动到新位置。IIS 不为您移动这些文件。
• 设置 IIS 日志文件的 ACL
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至日志文件所在的文件夹。
3.
右键单击此文件夹,单击“属性”,然后单击“安全”选项卡。
4.
在顶部窗格中,单击“Administrators”(管理员),确保底部窗格中的权限设置为“完全控制”。
5.
在顶部窗格中,单击“System”(系统),确保底部窗格中的权限设置为“完全控制”,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否移动了日志文件并设置了权限
1.
单击“开始”,单击“搜索”,然后单击“文件或文件夹”。
2.
在“要搜索的文件名”框中键入部分或完整的文件名(例如 LogFiles),在“搜索范围”框中选择一个位置,然后单击“立即搜索”。
搜索返回日志文件的新位置。
3.
按 Ctrl+Alt+Del,然后单击“注销”。
4.
使用没有日志文件访问权的帐户来登录到 Web 服务器。
5.
单击“开始”,右键单击“我的电脑”,单击“资源管理器”,然后浏览至 LogFiles 目录。
6.
右键单击 LogFiles 目录,然后单击“打开”。
出现以下消息:
• 拒绝访问。
配置 IIS 元数据库权限
IIS 元数据库是包含大部分 IIS 配置信息的 XML 文件。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑和 MetaBase.xml 文件。
• 限制 MetaBase.xml 文件的访问权
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至 Windows\System32\Inetsrv\MetaBase.xml 文件,右键单击此文件,然后单击“属性”。
3.
单击“安全”选项卡,确认只有 Administrators 组的成员和 LocalSystem 帐户拥有对元数据库的完全控制访问权,删除所有其他文件权限,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证对 MetaBase.xml 文件受限制的访问
1.
按 Ctrl+Alt+Del,然后单击“注销”。
2.
使用没有 MetaBase.xml 文件访问权的帐户来登录到 Web 服务器。
3.
单击“开始”,右键单击“我的电脑”,单击“资源管理器”,然后浏览至 MetaBase.xml 的位置。
4.
右键单击 MetaBase.xml 文件,然后单击“打开”。
出现以下消息:
• 拒绝访问。
禁用 FileSystemObject 组件
ASP、Windows 脚本主机和其他编写脚本的应用程序使用 FileSystemObject (FSO) 组件来创建、删除、获取信息以及操纵驱动器、文件夹和文件。可考虑禁用 FSO 组件,但要注意,这也将删除字典对象。另外,验证是否没有其他程序需要这个组件。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:命令提示符。
• 禁用 FileSystemObject 组件
1.
单击“开始”,单击“运行”,在“打开”框中键入 cmd,然后单击“确定”。
2.
切换到 C:\Windows\system32 目录。
3.
在命令提示符处,键入 regsvr32 scrrun.dll /u ,然后按 Enter 键。
出现以下消息:
DllUnregisterServer in scrrun.dll succeeded。
4.
单击“确定”。
5.
在命令提示符处,键入 exit 关闭命令提示窗口。
返回页首
保护网站和虚拟目录
将 Web 根目录和虚拟目录重新定位到非系统分区,以帮助防御目录遍历攻击。这些攻击允许攻击者执行操作系统程序和工具。由于这种攻击不能遍历所有驱动器,因此,将网站内容重新定位到另一个驱动器可以增强对这些攻击的防护。
本节对保护网站和虚拟目录提供以下逐步说明:
• 将网站内容移动到非系统驱动器
• 配置网站权限
将网站内容移动到非系统驱动器
不要使用默认的 \Inetpub\Wwwroot 目录作为网站内容的位置。例如,如果系统安装在 C: 驱动器,则将内容目录移动到 D: 驱动器,以减轻目录遍历攻击(这种攻击试图浏览 Web 服务器的目录结构)带来的危险。一定要验证是否所有的虚拟目录都指向新驱动器。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc) 和命令提示。
• 将网站内容移动到非系统驱动器
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要移动其内容的网站,然后单击“停止”。
3.
单击“开始”,单击“运行”,在“打开”框中键入 cmd,然后单击“确定”。
4.
在命令提示符处键入以下命令:
xcopy c:\inetpub\wwwroot\SiteName Drive:\wwwroot\SiteName /s /i /o
在上述命令中,
• SiteName 由您的网站名代替。
• Drive 由新驱动器名代替,例如 D。
5.
返回到 Internet 信息服务 (IIS) 管理器管理单元。
6.
右键单击网站,然后单击“属性”。
7.
根据您选择的应用程序类型,单击“主目录”、“虚拟目录”或“目录”选项卡,在“本地路径”框中键入新目录位置,然后单击“确定”。
-或者-
浏览至您刚才复制了文件的目录位置,然后单击“确定”。
8.
右键单击网站,然后单击“开始”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证网站内容是否已经移动到非系统驱动器
1.
单击“开始”,单击“搜索”,然后单击“文件或文件夹”。
2.
在“要搜索的文件名”框中键入部分或完整的文件名,在“搜索范围”中选择位置,然后单击“立即搜索”。
搜索结果列出您移动到新位置的文件以及原有位置的文件。
• 删除系统驱动器上的网站内容
• 导航到 C:\Inetpub\Wwwroot\SiteName 目录,然后删除移动到非系统驱动器的文件。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证网站内容是否已经从系统驱动器上删除
1.
单击“开始”,单击“搜索”,然后单击“文件或文件夹”。
2.
在“要搜索的文件名”文本框中键入部分或完整的文件名,在“搜索范围”中选择一个位置,然后单击“立即搜索”。
搜索结果只列出您移动到新位置的文件。
配置网站权限
可以为您的 Web 服务器配置特定站点、目录和文件的访问权。这些权限可以应用于所有用户,无论用户有何特定的访问权。
配置文件系统目录的权限
IIS 6.0 依靠 NTFS 权限来帮助保护单个文件和目录不会受到未经授权的访问。网站权限应用于试图访问网站的任何人,与此不同的是,您可以使用 NTFS 权限来定义哪些用户可以访问您的内容,以及如何允许这些用户操作这些内容。为了增强安全性,同时使用网站权限和 NTFS 权限。
访问控制列表 (ACL) 指示哪些用户或组有访问或修改特定文件的权限。不是在每个文件上设置 ACL,而是为每种文件类型创建新目录,在每个目录上设置 ACL,然后允许文件从它们所在的目录中继承这些权限。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑和 Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 将网站内容移动到单独的文件夹
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至包含网站内容的文件,然后单击网站内容的最上层的文件夹。
3.
在“文件”菜单中,单击“新建”,然后单击“文件夹”,以便在网站的内容目录中创建一个新文件夹。
4.
为文件夹命名,然后按 Enter 键。
5.
按 Ctrl 键,然后选择您想要保护的每个网页。
6.
右键单击这些网页,然后单击“复制”。
7.
右键单击新文件夹,然后单击“粘贴”。
注意: 如果您已经创建了到这些网页的链接,则必须更新这些链接以便反映站点内容的新位置。
• 设置 Web 内容的权限
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要配置的网站的文件夹、网站、目录、虚拟目录或文件,然后单击“属性”。
3.
根据您想要授权或拒绝访问的类型,选择或清除下列任何复选框(如果可用):
• 脚本源文件访问。用户可以访问源文件。如果选择“读”,则可以读源文件;如果选择“写”,则可以写源文件。脚本源访问包括脚本的源代码。如果“读”或“写”均未选择,则此选项不可用。
• 读(默认情况下选择)。用户可以查看目录或文件的内容和属性。
• 写。用户可以更改目录或文件的内容和属性。
• 目录浏览。用户可以查看文件列表和集合。
• 日志访问。对网站的每次访问创建日志项。
• 检索资源。允许检索服务检索此资源。这允许用户搜索资源。
4.
在“执行权限”列表框中,选择脚本执行的相应级别:
• 无。不在服务器上运行脚本和可执行文件(例如,文件类型为 .exe 的文件)。
• 仅脚本。只在服务器上运行脚本。
• 脚本和可执行文件。在服务器运行脚本和可执行文件。
5.
单击“确定”。如果目录的子节点配置了不同的网站权限,则出现“继承覆盖”框。
6.
如果出现“继承覆盖”框,在“子节点”列表中选择您想要应用目录的 Web 权限的子节点。
-或者-
单击“全选”来设置属性,以便将 Web 权限应用到所有子节点。
7.
如果您不只看到一个“继承覆盖”对话框,则从“子节点”列表中选择子节点,或者单击“全选”,然后单击“确定”,以便将此属性的 Web 权限应用到子节点。
如果一个子节点属于您已经更改了网站权限的目录,此节点还为特定选项设置了网站权限,则子节点的权限将覆盖您为目录设置的权限。如果您想要将目录级的 Web 权限应用到子节点,则必须在“继承覆盖”框中选择这些子节点。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否拒绝网站内容目录的写权限
1.
按 Ctrl+Alt+Del,然后单击“注销”。
2.
使用在物理或虚拟目录上具有“读”和“执行”权限的帐户来登录到 Web 服务器。
3.
单击“开始”,右键单击“我的电脑”,单击“资源管理器”,浏览至一个文件位置,您想要将此位置的文件复制到物理或虚拟目录。
4.
右键单击此文件,然后单击“复制”。
5.
浏览至物理或虚拟目录的位置,然后右键单击此目录。“粘贴”选项在上下文菜单上不可用,这意味着您没有此目录的写权限。
返回页首
在 Web 服务器上配置安全套接字层
在 Web 服务器上配置安全套接字层 (SSL) 安全功能,以便验证内容的完整性,验证用户身份并对网络传输加密。SSL 安全依靠服务器证书,此证书允许用户在传输个人信息(例如信用卡帐号)之前验证 Web 网站的身份。每个网站只能有一个服务器证书。
获取并安装服务器证书
证书由称作证书颁发机构 (CA) 的非 Microsoft 组织颁发。服务器证书通常与 Web 服务器有关,尤其与配置了 SSL 的网站有关。您必须生成证书请求,将此请求发送到 CA,然后在接收到 CA 的证书之后安装此证书。
证书依靠一对加密密钥(一个公钥和一个私钥)来确保安全。当您生成服务器证书请求时,您实际上正在生成私钥。从 CA 接收到的服务器证书包含公钥。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc) 和 Web 服务器证书向导。
• 生成服务器证书请求
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“服务和应用程序”部分, 然后双击“Internet 信息服务”。
3.
右键单击您想要安装服务器证书的网站,然后单击“属性”。
4.
单击“目录安全”选项卡。在“安全通信”部分中,单击“服务器证书”,以启动“Web 服务器证书向导”,然后单击“下一步”。
5.
单击“创建一个新证书”,然后单击“下一步”。
6.
单击“立即准备请求,但稍后发送”,然后单击“下一步”。
7.
在“名称”框中,键入容易记住的名称。(默认的名称是您正在生成证书请求的网站名,例如 http://www.contoso.com。)
8.
指定位长度,然后单击“下一步”。
加密密钥的位长度确定了加密的强度。大多数非 Microsoft CA 都希望您最少选择 1024 位。
9.
在“组织”部分,键入您的组织和组织单位信息。确保此信息的准确性,并且“组织”字段中不包含逗号,然后单击“下一步”。
10.
在“站点的公用名称”部分,键入含域名的宿主计算机的名称,然后单击“下一步”。
11.
键入您的地理信息,然后单击“下一步”。
12.
将此文件保存为 .txt 文件。(默认的文件名和位置是 C:\certreq.txt。)
以下示例显示证书请求文件的特征。
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIDATCCAmoCAQAwbDEOMAwGA1UEAxMFcGxhbjgxDDAKBgNVBAsTA1BTUzESMBAG
A1UEChMJTWljcm9zb2Z0MRIwEAYDVQQHEwlDaGFybG90dGUxFzAVBgNVBAgTDk5v
cnRoIENhcm9saW5hMQswCQYDVQQGEwJVUzCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
gYkCgYEAtW1koGfdt+EoJbKdxUZ+5vE7TF1ZuT+xaK9jEWHESfw11zoRKrHzHN0f
IASnwg3vZ0ACteQy5SiWmFaJeJ4k7YaKUb6chZXG3GqL4YiSKFaLpJX+YRiKMtmI
JzFzict5GVVGHsa1lY0BDYDO2XOAlstGlHCtENHOKpzdYdANRg0CAwEAAaCCAVMw
GgYKKwYBBAGCNw0CAzEMFgo1LjAuMjE5NS4yMDUGCisGAQQBgjcCAQ4xJzAlMA4G
A1UdDwEB/wQEAwIE8DATBgNVHSUEDDAKBggrBgEFBQcDATCB/QYKKwYBBAGCNw0C
AjGB7jCB6wIBAR5aAE0AaQBjAHIAbwBzAG8AZgB0ACAAUgBTAEEAIABTAEMAaABh
AG4AbgBlAGwAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBp
AGQAZQByA4GJAGKa0jzBn8fkxScrWsdnU2eUJOMUK5Ms87Q+fjP1/pWN3PJnH7x8
MBc5isFCjww6YnIjD8c3OfYfjkmWc048ZuGoH7ZoD6YNfv/SfAvQmr90eGmKOFFi
TD+hl1hM08gu2oxFU7mCvfTQ/2IbXP7KYFGEqaJ6wn0Z5yLOByPqblQZAAAAAAAA
AAAwDQYJKoZIhvcNAQEFBQADgYEAhpzNy+aMNHAmGUXQT6PKxWpaxDSjf4nBmo7o
MhfC7CIvR0McCQ+CBwuLzD+UJxl+kjgb+qwcOUkGX2PCZ7tOWzcXWNmn/4YHQl0M
GEXu0w67sVc2R9DlsHDNzeXLIOmjUl935qy1uoIR4V5C48YNsF4ejlgjeCFsbCoj
Jb9/2RM=
-----END NEW CERTIFICATE REQUEST-----
13.
确认请求的详细信息,单击“下一步”,然后单击“完成”。
• 提交服务器证书请求
1.
联系 CA,查找提交请求的要求。
2.
将上述过程中创建的 .txt 文件的内容复制成 CA 要求的请求格式。
3.
将请求发送给您的 CA。
接收到 CA 的证书后,准备在您的 Web 服务器上安装此证书。
• 安装服务器证书
1.
将证书 (.cer) 文件复制到 C:\Windows\System32\CertLog 文件夹。
2.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
3.
右键单击您想要安装服务器证书的网站,然后单击“属性”。
4.
单击“目录安全”选项卡。在“安全通信”部分中,单击“服务器证书”,以启动“Web 服务器证书向导”,然后单击“下一步”。
5.
单击“处理挂起的请求并安装证书”,然后单击“下一步”。
6.
浏览至您接收到的 CA 证书。单击“下一步”两次,然后单击“完成”。
验证新的设置
验证正确设置是否已经应用于您的本地计算机。
• 验证是否在 Web 服务器上安装了证书
1.
单击“开始”,单击“控制面板”,单击“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要查看证书的网站,然后单击“属性”。
3.
在“目录安全”选项卡上的“安全通信”区域内,单击“查看证书”,查看证书之后,单击“确定”两次。
在 Web 服务器上强制和启用 SSL 连接
安装服务器证书之后,必须在 Web 服务器上强制 SSL 连接。然后,必须启用 SSL 连接。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 强制 SSL 连接
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要强制 SSL 连接的网站,然后单击“属性”。
3.
单击“目录安全”选项卡。在“安全通信”部分,单击“编辑”。
4.
单击“要求安全通道 (SSL)”,选择加密长度,然后单击“确定”。
注意:如果您指定 128 位加密,使用 40 位或 56 位长度浏览的客户端计算机不能与您的站点通信,除非将其浏览器升级到支持 128 位加密的版本。
• 在 Web 服务器上启用 SSL 连接
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要启用 SSL 连接的网站,然后单击“属性”。
3.
单击“网站”选项卡。在“网站标识”部分,验证“SSL 端口”是否填充了数值 443。
4.
然后单击“高级”。通常出现两个对话框,在“此网站的多个标识”框中列出此网站 IP 地址和端口。在“此网站的多个 SSL 标识”字段下,如果还没有列出端口 443,则单击“添加”。选择服务器的 IP 地址,在“SSL 端口”框中键入数值“443”,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证 Web 服务器上的 SSL 连接
1.
打开浏览器,然后尝试通过标准的 http:// 协议来连接到 Web 服务器。例如,在“地址”框中,键入 http://localhost。
如果 SSL 被强制,则出现以下错误消息:
网页必须通过安全通道查看。您试图访问的网页受到安全套接字层 (SSL) 保护。
2.
通过键入 https://localhost,再次尝试连接到您想要查看的网页。
通常出现 Web 服务器的默认网页。
返回页首
相关信息
有关保护 IIS 6.0 的详细信息,请参阅下列文档:
• 位于 Microsoft 网站上的Security Enhancements in Internet Information Services 6.0,其网址为 http://go.microsoft.com/fwlink/?LinkId=22800(英文) 。
• 位于 TechNet 网站上的 Configuring Application Isolation on Windows Server 2003 and Internet Information Services (IIS) 6.0,其网址为 http://go.microsoft.com/fwlink/?LinkId=2280(英文)。
• 位于 Microsoft Events and Webcasts 网站上的 TechNet Webcast: Securing Internet Information Services (IIS),其网址为 http://go.microsoft.com/fwlink/?LinkId=22802(英文)。
有关IIS 6.0 的详细信息,请参阅下列文档:
• 位于 Microsoft 下载中心上的 Internet Information Services (IIS) 6.0 Resource Kit,其网址为 http://go.microsoft.com/fwlink/?LinkId=22803(英文)。
• 位于 TechNet 网站上的 Internet Information Services 技术网页,其网址为 http://go.microsoft.com/fwlink/?LinkId=22804(英文)。
• 位于 Microsoft 网站上的 Technical Overview of Internet Information Services (IIS) 6.0,其网址为 http://go.microsoft.com/fwlink/?LinkId=22805(英文)。
http://www.microsoft.com/china/technet/security/sgk/sec_IIS_6_0.mspx
本页内容
简介
准备工作
减少 Web 服务器的攻击面
配置帐户
配置文件和目录的安全
保护网站和虚拟目录
在 Web 服务器上配置安全套接字层
相关信息
简介
Web 服务器通常是各种安全攻击的目标。其中一些攻击非常严重,足以对企业资产、工作效率和客户关系造成相当的破坏—所有攻击都会带来不便和麻烦。Web 服务器的安全是企业成功的关键。
本文档说明如何开始保护 Web 服务器的过程。此 Web 服务器在 Microsoft® Windows Server™ 2003 Standard Edition 操作系统上运行 Internet Information Services (IIS) 6.0。首先,本节描述影响 Web 服务器安全的一些最常见威胁。然后,本文档提供说明性指导,使您的 Web 服务器更安全地防御这些攻击。
通过对 IIS 早期版本做以下更改,IIS 6.0 以更加主动的姿态来防御恶意用户和攻击者:
• 安装 Windows Server 2003 Standard Edition 时,默认情况下没有安装 IIS 6.0。
• 初次安装 IIS 6.0 时,Web 服务器仅服务于或显示静态网页 (HTML),这降低了服务于动态网页或可执行文件、内容而带来的风险。
• 万维网发布服务(WWW 服务)是 IIS 6.0 初次安装时在默认情况下支持的唯一服务。您可以在需要时启用所需要的特定服务。
• IIS 6.0 初次安装时,默认情况下禁用 ASP 和 ASP.NET。
• 对于其他保护,IIS 6.0 中所有默认的安全配置设置都符合或超过由 IIS Lockdown Tool 提供的安全配置设置。IIS Lockdown Tool 在 IIS 的早期版本上运行,旨在通过禁用不必要的特性来减少 Web 服务器的攻击面。有关 IIS Lockdown Tool 的详细信息,请参阅 Security Guidance Kit 中的“确保 Internet 信息服务 5.0 和 5.1 的安全”。
由于 IIS 6.0 的默认设置禁用了 Web 服务通常使用的许多功能,因此,本文档说明如何在降低服务器暴露给潜在攻击者程度的同时配置 Web 服务器的其他功能。
本文档就增强 Web 服务器的安全提供以下指导:
• 减少 Web 服务器的攻击面,或者降低服务器暴露给潜在攻击者的程度。
• 配置匿名访问的用户和组帐户
• 保护文件和目录不接受未经授权的访问
• 保护网站和虚拟目录不接受未经授权的访问
• 配置 Web 服务器上安全套接字层 (SSL)
要点:本文档包括的所有逐步说明都是使用“开始”菜单形成的,此菜单在安装操作系统时默认显示。如果修改过“开始”菜单,则这些步骤可能稍有不同。
在您完成本文档中的步骤之后,Web 服务器将能够服务于以 .asp 页面形式提供的动态内容,而且仍然能够对以下类型的攻击提供强有力的保护,这些攻击有时威胁到面向 Internet 的服务器:
• 配置文件攻击,此攻击搜集网站的有关信息;可通过禁止不需要的端口和禁用不需要的协议来减少这种攻击。
• 拒绝服务攻击,此攻击使 Web 服务器充满各种请求;可通过应用安全修补程序和软件更新来最大限度地减少这种攻击。
• 没有正确权限的用户未经授权的访问;通常通过配置 Web 和 NTFS 权限来阻止这种访问。
• 恶意代码在 Web 服务器上任意执行;可通过防止对系统工具和命令的访问来最大限度地减少这种攻击。
• 特权提升,使恶意用户能够使用具有较高特权的帐户来运行程序;可通过使用最低特权的服务和用户帐户来最大限度地减少这种攻击。
• 来自病毒、蠕虫和特洛伊木马的破坏;可通过禁用不需要的功能、使用最低特权的帐户以及及时应用最新安全修补程序来遏制这种攻击。
注意:由于保护 Web 服务器是一个复杂而长期的过程,完全的安全性很难保证。
返回页首
准备工作
本节说明本文档中描述的 Web 服务器的系统要求和特征。
系统要求
本文档中用作示例的 Web 服务器有以下系统要求:
• 此服务器运行 Windows Server 2003 Standard Edition。
• 操作系统安装在 NTFS 分区上。有关 NTFS 的信息,请在 Windows Server 2003 中的帮助和支持中心搜索“NTFS”。
• Windows Server 2003 所有必需的修补程序和更新都已经应用到此服务器。为了验证 Web 服务器上是否安装了最新的安全更新,请转到位于 Microsoft 网站 http://go.microsoft.com/fwlink/?LinkId=22630 上的 Windows Update 网页,利用 Windows Update 来扫描服务器是否有可用的更新。
• Windows Server 2003 安全保护已经应用到服务器。
本文档提供介绍性信息,帮助您设置最初的几个步骤,以配置一台更安全的 Web 服务器。不过,为了使 Web 服务器尽可能安全,您必须了解服务器上运行的应用程序的操作。本文档不包括应用程序特定安全配置的有关信息。
Web 服务器特征
本文档中用作示例的 Web 服务器有以下特征要求:
• Web 服务器正在工作进程隔离模式下运行 IIS 6.0 。
• Web 服务器托管一个面向 Internet 的网站。
• Web 服务器配有防火墙,仅支持 HTTP 端口 80 和 HTTPS 端口 443 上的流量。
• 此 Web 服务器是专用 Web 服务器,这种服务器只能用作 Web 服务器而不能用于其他目的,例如文件服务器、打印服务器或运行 Microsoft SQL Server® 的数据库服务器。
• 允许匿名访问网站。
• Web 服务器服务于 HTML 和 ASP 网页。
• 没有在 Web 服务器上配置 Microsoft 的 FrontPage® 2002 Server Extensions。
• Web 服务器上的应用程序不需要数据库连接。
• Web 服务器不支持 FTP(文件上传和下载)、SMTP(电子邮件)或 NNTP(新闻组)协议。
• Web 服务器不使用 Internet Security and Acceleration Server。
• 管理员必须本地登录以管理 Web 服务器。
返回页首
减少 Web 服务器的攻击面
通过减少 Web 服务器的攻击面,或者降低服务器暴露给潜在攻击者的程度,来开始保护 Web 服务器的过程。例如,仅启用 Web 服务器正常运行所必需的组件、服务和端口。
禁用 SMB 和 NetBIOS
主机枚举攻击扫描网络,以便确定潜在目标的 IP 地址。要降低主机枚举成功攻击 Web 服务器上面向 Internet 的端口的可能性,应禁用除传输控制协议 (TCP) 以外的所有网络协议。Web 服务器中的面向 Internet 的网络适配器上不需要服务器消息块 (SMB) 和 NetBIOS。
本节提供以下逐步说明,以降低 Web 服务器的攻击面:
• 禁用面向 Internet 连接上的 SMB
• 禁用基于 TCP/IP 的 NetBIOS
注意:禁用 SMB 和 NetBIOS 之后,此服务器不能用作文件服务器或打印服务器,不可以浏览网络,而且不能远程管理此 Web 服务器。如果您的服务器是需要管理员本地登录的专用 Web 服务器,这些限制则不会影响服务器的运行。
SMB 使用下列端口:
• TCP 端口 139
• TCP 和 UDP 端口 445 (SMB Direct Host)
NetBIOS 使用下列端口:
• TCP 和 UDP 端口 137(NetBIOS 命名服务)
• TCP 和 UDP 端口 138(NetBIOS 数据报服务)
• TCP 和 UDP 端口 139(NetBIOS 会话服务)
仅禁用 NetBIOS 将不会防止 SMB 通信,因为如果标准 NetBIOS 端口不可用,SMB 则使用 TCP 端口 445(也称为 SMB Direct Host)。您必须分别禁用 NetBIOS 和 SMB。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑、系统工具和设备管理器。
• 禁用面向 Internet 连接上的 SMB
1.
单击“开始”,单击“设置”,再单击“控制面板”,然后双击“网络连接”。
2.
右键单击您的面向 Internet 的连接,然后单击“属性”。
3.
清除“Microsoft 网络客户端”复选框。
4.
清除“Microsoft 网络的文件和打印机共享”复选框,然后单击“确定”。
• 禁用基于 TCP/IP 的 NetBIOS
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“系统工具”,然后选择“设备管理器”。
3.
右键单击“设备管理器”,单击“查看”,然后单击“显示隐藏的设备”。
4.
双击“非即插即用驱动程序”。
5.
右键单击“NetBios over Tcpip”,单击“停用”,然后单击“是”。
注意:本文档中的屏幕快照反映的是测试环境,其信息可能与您的屏幕所显示的信息有所不同。
上述过程不仅禁用 TCP 端口 445 和 UDP 端口 445 上的 SMB 直接宿主侦听者,而且禁用 Nbt.sys 驱动程序,并需要重新启动系统。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证 SMB 是否已禁用
1.
单击“开始”,单击“设置”,然后单击“网络和拨号连接”。
2.
右键单击您的面向 Internet 的连接,然后单击“属性”。
3.
验证是否清除了“Microsoft 网络客户端”和“Microsoft 网络的文件和打印机共享”复选框,然后单击“确定”。
• 验证 NetBIOS 是否已禁用
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“系统工具”,然后选择“设备管理器”。
3.
右键单击“设备管理器”,单击“查看”,然后单击“显示隐藏的设备”。
4.
双击“非即插即用驱动程序”,然后单击“NetBios over Tcpip”。
上下文菜单中现在出现“启用”选择,这表示 NetBIOS over TCP/IP 目前已禁用。
5.
单击“确定”关闭“设备管理器”。
只选择基本的 IIS 组件和服务
IIS 6.0 除了包括 WWW 服务之外,还包括一些子组件和服务,例如 FTP 服务和 SMTP 服务。为了最大限度地降低针对特定服务和子组件的攻击风险,建议您只选择网站和 Web 应用程序正确运行所必需的服务和子组件。
下表显示用作本文档示例的 Web 服务器上 IIS 子组件和服务在“添加或删除程序”中的推荐设置。
IIS 子组件和服务的推荐设置
子组件或服务 默认设置 Web 服务器设置
后台智能传输服务 (BITS) 服务器扩展
禁用
不更改
公用文件
启用
不更改
FTP 服务
禁用
不更改
FrontPage 2002 Server Extensions
禁用
不更改
Internet 信息服务管理器
启用
不更改
Internet 打印
禁用
不更改
NNTP 服务
禁用
不更改
SMTP 服务
启用
禁用
万维网服务
启用
不更改
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:添加或删除程序。
• 配置 IIS 组件和服务
1.
单击“开始”,单击“控制面板”,然后单击“添加或删除程序”。
2.
单击“添加/删除 Windows 组件”。
3.
在“Windows 组件向导”页面中的“组件”下,单击“应用程序服务器”,然后单击“详细信息”。
4.
单击“Internet 信息服务 (IIS)”,然后单击“详细信息”。
5.
参考上表,然后通过选择或清除相应组件或服务的复选框,来选择或取消相应的 IIS 组件和服务。
6.
按照“Windows 组件向导”中的以下说明来完成此向导。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否选择了 IIS 组件和服务
• 单击“开始”,单击“控制面板”,然后单击“管理工具”。
在“管理工具”菜单中出现“Internet 信息服务 (IIS) 管理器”。
只启用基本的 Web 服务扩展
服务于动态内容的 Web 服务器需要 Web 服务扩展。每种动态内容都响应特定的 Web 服务扩展。由于安全原因,IIS 6.0 允许您启用和禁用单独的 Web 服务扩展,因此,只启用您的内容所需要的扩展。
警告:不要启用所有的 Web 服务扩展。尽管启用所有的 Web 服务扩展可确保最大限度地兼容现有的网站和应用程序,但却大幅增加了 Web 服务器的攻击面。您可能需要分别测试您的网站和应用程序,以确保只启用必需的 Web 服务和扩展。
假设配置 Web 服务器来服务于作为默认网页的 Default.asp 文件。尽管配置了默认网页,但您必须启用 Active Server Pages Web 服务扩展才能查看 .asp 网页。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 启用 Active Server Pages Web 服务扩展
1.
单击“开始”,单击“控制面板”,单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
双击“本地计算机”,然后单击“Web 服务扩展”。
3.
单击“Active Server Pages”,然后单击“允许”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否启用了 Active Server Pages Web 服务扩展
1.
打开“文本编辑器”,键入文本,然后将文件作为 Default.asp 保存到 C:\inetpub\wwwroot 目录。
2.
在 Internet Explorer 地址栏中,键入以下 URL,然后按 Enter 键: http://localhost。
浏览器中出现 Default.asp 文件。
返回页首
配置帐户
建议您删除未使用的帐户,因为攻击者可能发现这些帐户,然后利用这些帐户来获取您服务器上的数据和应用程序的访问权。始终使用强密码,因为弱密码增加了成功进行强力攻击或字典攻击(即攻击者竭尽全力地猜密码)的可能性。使用以最低特权运行的帐户。否则,攻击者可以通过使用以高级特权运行的帐户来获取未经授权的资源的访问权。
本节对配置帐户提供以下逐步说明:
• 禁用未使用的帐户
• 使用应用程序池来隔离应用程序
禁用未使用的帐户
未使用的帐户及其特权可以被攻击者用来获取服务器的访问权。您应该定期审核服务器上的本地帐户,并禁用未使用的任何帐户。在生产服务器上禁用这些帐户之前,先在测试服务器上禁用帐户,以确保禁用帐户不会对应用程序的操作方式带来不利影响。如果在测试服务器上禁用帐户没有出现任何问题,则在生产服务器上禁用帐户。
注意:如果您选择删除而不是禁用未使用的帐户,则一定要知道您不能恢复已删除的帐户,因而不能删除管理员帐户和来宾帐户。而且,一定要在生产服务器上删除帐户之前,先在测试服务器上删除此帐户。
本节对删除或禁用未使用的帐户提供以下逐步说明:
• 禁用来宾帐户
• 重命名管理员帐户
• 重命名 IUSR_ComputerName 帐户
禁用来宾帐户
采用匿名连接来访问 Web 服务器时,使用来宾帐户。在默认安装 Windows Server 2003 时,禁用来宾帐户。 要限制对服务器的匿名连接,请确保禁用来宾帐户。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:计算机管理
• 禁用来宾帐户
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“本地用户和组”,然后单击“用户”文件夹。来宾帐户应该以红色的 X 图标显示,以指示此帐户已禁用。如果来宾帐户未禁用,则继续步骤 3 来禁用此帐户。
3.
右键单击“Guest”(来宾)帐户,然后单击“属性”。
4.
在“常规”选项卡上,选中“帐户已停用”复选框,然后单击“确定”。
来宾帐户现在应该以红色 X 图标显示。
重命名管理员帐户
默认的本地管理员帐户因其在计算机上的更高特权而成为恶意用户的目标。要增强安全性,请重命名默认的管理员帐户并分配一个强密码。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑。
• 重命名默认的管理员帐户并分配一个强密码
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“本地用户和组”,然后单击“用户”文件夹。
3.
右键单击“Administrator”(管理员)帐户,然后单击“重命名”。
4.
在框中键入名称,然后按 Enter 键。
5.
在桌面上,按 Ctrl+Alt+Del,然后单击“更改密码”。
6.
在“用户名”框中键入管理员帐户的新名称。
7.
在“旧密码”框中键入当前密码,在“新密码”框中键入新密码,在“确认新密码”框中重新键入新密码,然后单击“确定”。
警告:不要使用上下文菜单中的“设置密码”菜单项来更改密码,除非您忘记了密码并且没有可用的密码重置磁盘。使用这种方法来更改管理员密码可能导致受此密码保护的信息永久丢失。
重命名 IUSR 帐户
默认的匿名 Internet 用户帐户 IUSR_ComputerName 是在 IIS 安装期间创建的。ComputerName 的值是安装 IIS 时服务器的 NetBIOS 名称。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑。
• 重命名 IUSR 帐户
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“本地用户和组”,然后单击“用户”文件夹。
3.
右键单击 IUSR_ComputerName 帐户,然后单击“重命名”。
4.
键入新帐户名称,然后按 Enter 键。
• 在 IIS 元数据库中更改 IUSR 帐户的值
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击“本地计算机”,然后单击“属性”。
3.
选中“允许直接编辑配置数据库”复选框,然后单击“确定”。
4.
浏览至 MetaBase.xml 文件的位置,默认情况下为 C:\Windows\system32\inetsrv。
5.
右键单击 MetaBase.xml 文件,然后单击“编辑”。
6.
搜索“AnonymousUserName”属性,然后键入 IUSR 帐户的新名称。
7.
在“文件”菜单上,单击“退出”,然后单击“是”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证帐户是否已禁用
1.
按 Ctrl+Alt+Del,然后单击“注销”以注销 Web 服务器。
2.
在“登录到 Windows”对话框中,在“用户名”框中键入已禁用帐户的名称,键入已禁用帐户的密码,然后单击“确定”。
出现以下消息:
您的帐户已被停用。请向系统管理员咨询。
• 验证帐户是否已重命名
1.
按 Ctrl+Alt+Del,然后单击“注销”以注销 Web 服务器。
2.
在“登录到 Windows”对话框中,在“用户名”框中键入已重命名帐户以前的名称,键入重命名帐户的密码,然后单击“确定”。
出现以下消息:
系统无法让您登录。请确定您的用户名及域无误,然后再次输入密码。密码的字母必须使用正确的大小写。
3.
单击“确定”,然后在“用户名”框中键入重命名帐户的新名称。
4.
键入重命名帐户的密码,然后单击“确定”。
您应该能够用重命名的帐户登录到计算机。
使用应用程序池来隔离应用程序
使用 IIS 6.0,可以将应用程序隔离到应用程序池。应用程序池是包含一个或多个 URL 的一个组,一个工作进程或者一组工作进程对应用程序池提供服务。因为每个应用程序都独立于其他应用程序运行,因此,使用应用程序池可以提高 Web 服务器的可靠性和安全性。
在 Windows 操作系统上运行进程的每个应用程序都有一个进程标识,以确定此进程如何访问系统资源。每个应用程序池也有一个进程标识,此标识是一个以应用程序需要的最低权限运行的帐户。可以使用此进程标识来允许匿名访问您的网站或应用程序。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑。
• 创建应用程序池
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
双击本地计算机,右键单击“应用程序池”,单击“新建”,然后单击“应用程序池”。
3.
在“应用程序池 ID”框中,为应用程序池键入一个新 ID(例如,ContosoAppPool)。
4.
在“应用程序池设置”下,单击“Use default settings for the new application pool”(使用新应用程序池的默认设置),然后单击“确定”。
• 将网站或应用程序分配到应用程序池
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要分配到应用程序池的网站或应用程序,然后单击“属性”。
3.
根据您选择的应用程序类型,单击“主目录”、“虚拟目录”或“目录”选项卡。
4.
如果您将目录或虚拟目录分配到应用程序池,则验证“应用程序名”框是否包含正确的网站或应用程序名称。
-或者-
如果在“应用程序名”框中没有名称,则单击“创建”,然后键入网站或应用程序的名称。
5.
在“应用程序池”列表框中,单击您想要分配网站或应用程序的应用程序池的名称,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否创建了应用程序池
1.
使用管理员帐户登录到 Web 服务器。
2.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
3.
双击本地计算机,双击“应用程序池”,然后验证是否在应用程序池节点下出现您所创建的应用程序池。
4.
右键单击您所创建的程序池,然后单击“属性”。
5.
单击“标识”选项卡,验证此应用程序池是否设置为称作“网络服务”的预定义的安全帐户,然后单击“确定”。
• 验证网站或应用程序是否分配到特定的应用程序池
1.
使用管理员帐户登录到 Web 服务器。
2.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
3.
双击本地计算机,双击“网站”,右键单击您想要验证应用程序池设置的网站,然后单击“属性”。
4.
根据您选择的应用程序类型,单击“主目录”、“虚拟目录”或“目录”选项卡。
5.
在“应用程序池”列表框中,验证是否列出您想要将网站分配到的应用程序池的名称,然后单击“取消”。
返回页首
配置文件和目录的安全
使用强访问控制来帮助保护敏感的文件和目录。在多数情况下,允许对特定帐户的访问比拒绝对特定帐户的访问更加有效。如有可能,请将访问设置在目录级。当文件添加到文件夹时,它们继承文件夹的权限,因此您不需要采取进一步的措施。
本节对配置文件和目录提供以下逐步说明:
• 重定位和设置 IIS 日志文件的权限
• 配置 IIS 元数据库权限
• 禁用 FileSystemObject 组件
重新定位和设置 IIS 日志文件的权限
为了增强 IIS 日志文件的安全,您应该将文件重新定位到非系统驱动器,此驱动器格式化为使用 NTFS 文件系统。此位置应该与网站内容的位置不同。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑和 Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 将 IIS 日志文件的位置移动到非系统分区
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至您想要重新定位 IIS 日志文件的位置。
3.
右键单击您想要重新定位 IIS 日志文件的上一级目录,单击“新建”,然后单击“文件夹”。
4.
键入文件夹的名称,例如 ContosoIISLogs,然后按 Enter 键。
5.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
6.
右键单击网站,然后单击“属性”。
7.
单击“网站”选项卡,然后单击“启用日志记录”框架中的“属性”。
8.
在“常规属性”选项卡中,单击“浏览”,然后导航到您刚才创建的文件夹以存储 IIS 日志文件。
9.
单击“确定”三次。
注意:如果您在原来的位置 Windows\System32\Logfiles 上有 IIS 日志文件,则必须将这些文件手动移动到新位置。IIS 不为您移动这些文件。
• 设置 IIS 日志文件的 ACL
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至日志文件所在的文件夹。
3.
右键单击此文件夹,单击“属性”,然后单击“安全”选项卡。
4.
在顶部窗格中,单击“Administrators”(管理员),确保底部窗格中的权限设置为“完全控制”。
5.
在顶部窗格中,单击“System”(系统),确保底部窗格中的权限设置为“完全控制”,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否移动了日志文件并设置了权限
1.
单击“开始”,单击“搜索”,然后单击“文件或文件夹”。
2.
在“要搜索的文件名”框中键入部分或完整的文件名(例如 LogFiles),在“搜索范围”框中选择一个位置,然后单击“立即搜索”。
搜索返回日志文件的新位置。
3.
按 Ctrl+Alt+Del,然后单击“注销”。
4.
使用没有日志文件访问权的帐户来登录到 Web 服务器。
5.
单击“开始”,右键单击“我的电脑”,单击“资源管理器”,然后浏览至 LogFiles 目录。
6.
右键单击 LogFiles 目录,然后单击“打开”。
出现以下消息:
• 拒绝访问。
配置 IIS 元数据库权限
IIS 元数据库是包含大部分 IIS 配置信息的 XML 文件。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑和 MetaBase.xml 文件。
• 限制 MetaBase.xml 文件的访问权
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至 Windows\System32\Inetsrv\MetaBase.xml 文件,右键单击此文件,然后单击“属性”。
3.
单击“安全”选项卡,确认只有 Administrators 组的成员和 LocalSystem 帐户拥有对元数据库的完全控制访问权,删除所有其他文件权限,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证对 MetaBase.xml 文件受限制的访问
1.
按 Ctrl+Alt+Del,然后单击“注销”。
2.
使用没有 MetaBase.xml 文件访问权的帐户来登录到 Web 服务器。
3.
单击“开始”,右键单击“我的电脑”,单击“资源管理器”,然后浏览至 MetaBase.xml 的位置。
4.
右键单击 MetaBase.xml 文件,然后单击“打开”。
出现以下消息:
• 拒绝访问。
禁用 FileSystemObject 组件
ASP、Windows 脚本主机和其他编写脚本的应用程序使用 FileSystemObject (FSO) 组件来创建、删除、获取信息以及操纵驱动器、文件夹和文件。可考虑禁用 FSO 组件,但要注意,这也将删除字典对象。另外,验证是否没有其他程序需要这个组件。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:命令提示符。
• 禁用 FileSystemObject 组件
1.
单击“开始”,单击“运行”,在“打开”框中键入 cmd,然后单击“确定”。
2.
切换到 C:\Windows\system32 目录。
3.
在命令提示符处,键入 regsvr32 scrrun.dll /u ,然后按 Enter 键。
出现以下消息:
DllUnregisterServer in scrrun.dll succeeded。
4.
单击“确定”。
5.
在命令提示符处,键入 exit 关闭命令提示窗口。
返回页首
保护网站和虚拟目录
将 Web 根目录和虚拟目录重新定位到非系统分区,以帮助防御目录遍历攻击。这些攻击允许攻击者执行操作系统程序和工具。由于这种攻击不能遍历所有驱动器,因此,将网站内容重新定位到另一个驱动器可以增强对这些攻击的防护。
本节对保护网站和虚拟目录提供以下逐步说明:
• 将网站内容移动到非系统驱动器
• 配置网站权限
将网站内容移动到非系统驱动器
不要使用默认的 \Inetpub\Wwwroot 目录作为网站内容的位置。例如,如果系统安装在 C: 驱动器,则将内容目录移动到 D: 驱动器,以减轻目录遍历攻击(这种攻击试图浏览 Web 服务器的目录结构)带来的危险。一定要验证是否所有的虚拟目录都指向新驱动器。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc) 和命令提示。
• 将网站内容移动到非系统驱动器
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要移动其内容的网站,然后单击“停止”。
3.
单击“开始”,单击“运行”,在“打开”框中键入 cmd,然后单击“确定”。
4.
在命令提示符处键入以下命令:
xcopy c:\inetpub\wwwroot\SiteName Drive:\wwwroot\SiteName /s /i /o
在上述命令中,
• SiteName 由您的网站名代替。
• Drive 由新驱动器名代替,例如 D。
5.
返回到 Internet 信息服务 (IIS) 管理器管理单元。
6.
右键单击网站,然后单击“属性”。
7.
根据您选择的应用程序类型,单击“主目录”、“虚拟目录”或“目录”选项卡,在“本地路径”框中键入新目录位置,然后单击“确定”。
-或者-
浏览至您刚才复制了文件的目录位置,然后单击“确定”。
8.
右键单击网站,然后单击“开始”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证网站内容是否已经移动到非系统驱动器
1.
单击“开始”,单击“搜索”,然后单击“文件或文件夹”。
2.
在“要搜索的文件名”框中键入部分或完整的文件名,在“搜索范围”中选择位置,然后单击“立即搜索”。
搜索结果列出您移动到新位置的文件以及原有位置的文件。
• 删除系统驱动器上的网站内容
• 导航到 C:\Inetpub\Wwwroot\SiteName 目录,然后删除移动到非系统驱动器的文件。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证网站内容是否已经从系统驱动器上删除
1.
单击“开始”,单击“搜索”,然后单击“文件或文件夹”。
2.
在“要搜索的文件名”文本框中键入部分或完整的文件名,在“搜索范围”中选择一个位置,然后单击“立即搜索”。
搜索结果只列出您移动到新位置的文件。
配置网站权限
可以为您的 Web 服务器配置特定站点、目录和文件的访问权。这些权限可以应用于所有用户,无论用户有何特定的访问权。
配置文件系统目录的权限
IIS 6.0 依靠 NTFS 权限来帮助保护单个文件和目录不会受到未经授权的访问。网站权限应用于试图访问网站的任何人,与此不同的是,您可以使用 NTFS 权限来定义哪些用户可以访问您的内容,以及如何允许这些用户操作这些内容。为了增强安全性,同时使用网站权限和 NTFS 权限。
访问控制列表 (ACL) 指示哪些用户或组有访问或修改特定文件的权限。不是在每个文件上设置 ACL,而是为每种文件类型创建新目录,在每个目录上设置 ACL,然后允许文件从它们所在的目录中继承这些权限。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:我的电脑和 Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 将网站内容移动到单独的文件夹
1.
单击“开始”,右键单击“我的电脑”,然后单击“资源管理器”。
2.
浏览至包含网站内容的文件,然后单击网站内容的最上层的文件夹。
3.
在“文件”菜单中,单击“新建”,然后单击“文件夹”,以便在网站的内容目录中创建一个新文件夹。
4.
为文件夹命名,然后按 Enter 键。
5.
按 Ctrl 键,然后选择您想要保护的每个网页。
6.
右键单击这些网页,然后单击“复制”。
7.
右键单击新文件夹,然后单击“粘贴”。
注意: 如果您已经创建了到这些网页的链接,则必须更新这些链接以便反映站点内容的新位置。
• 设置 Web 内容的权限
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要配置的网站的文件夹、网站、目录、虚拟目录或文件,然后单击“属性”。
3.
根据您想要授权或拒绝访问的类型,选择或清除下列任何复选框(如果可用):
• 脚本源文件访问。用户可以访问源文件。如果选择“读”,则可以读源文件;如果选择“写”,则可以写源文件。脚本源访问包括脚本的源代码。如果“读”或“写”均未选择,则此选项不可用。
• 读(默认情况下选择)。用户可以查看目录或文件的内容和属性。
• 写。用户可以更改目录或文件的内容和属性。
• 目录浏览。用户可以查看文件列表和集合。
• 日志访问。对网站的每次访问创建日志项。
• 检索资源。允许检索服务检索此资源。这允许用户搜索资源。
4.
在“执行权限”列表框中,选择脚本执行的相应级别:
• 无。不在服务器上运行脚本和可执行文件(例如,文件类型为 .exe 的文件)。
• 仅脚本。只在服务器上运行脚本。
• 脚本和可执行文件。在服务器运行脚本和可执行文件。
5.
单击“确定”。如果目录的子节点配置了不同的网站权限,则出现“继承覆盖”框。
6.
如果出现“继承覆盖”框,在“子节点”列表中选择您想要应用目录的 Web 权限的子节点。
-或者-
单击“全选”来设置属性,以便将 Web 权限应用到所有子节点。
7.
如果您不只看到一个“继承覆盖”对话框,则从“子节点”列表中选择子节点,或者单击“全选”,然后单击“确定”,以便将此属性的 Web 权限应用到子节点。
如果一个子节点属于您已经更改了网站权限的目录,此节点还为特定选项设置了网站权限,则子节点的权限将覆盖您为目录设置的权限。如果您想要将目录级的 Web 权限应用到子节点,则必须在“继承覆盖”框中选择这些子节点。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证是否拒绝网站内容目录的写权限
1.
按 Ctrl+Alt+Del,然后单击“注销”。
2.
使用在物理或虚拟目录上具有“读”和“执行”权限的帐户来登录到 Web 服务器。
3.
单击“开始”,右键单击“我的电脑”,单击“资源管理器”,浏览至一个文件位置,您想要将此位置的文件复制到物理或虚拟目录。
4.
右键单击此文件,然后单击“复制”。
5.
浏览至物理或虚拟目录的位置,然后右键单击此目录。“粘贴”选项在上下文菜单上不可用,这意味着您没有此目录的写权限。
返回页首
在 Web 服务器上配置安全套接字层
在 Web 服务器上配置安全套接字层 (SSL) 安全功能,以便验证内容的完整性,验证用户身份并对网络传输加密。SSL 安全依靠服务器证书,此证书允许用户在传输个人信息(例如信用卡帐号)之前验证 Web 网站的身份。每个网站只能有一个服务器证书。
获取并安装服务器证书
证书由称作证书颁发机构 (CA) 的非 Microsoft 组织颁发。服务器证书通常与 Web 服务器有关,尤其与配置了 SSL 的网站有关。您必须生成证书请求,将此请求发送到 CA,然后在接收到 CA 的证书之后安装此证书。
证书依靠一对加密密钥(一个公钥和一个私钥)来确保安全。当您生成服务器证书请求时,您实际上正在生成私钥。从 CA 接收到的服务器证书包含公钥。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc) 和 Web 服务器证书向导。
• 生成服务器证书请求
1.
单击“开始”,右键单击“我的电脑”,然后单击“管理”。
2.
双击“服务和应用程序”部分, 然后双击“Internet 信息服务”。
3.
右键单击您想要安装服务器证书的网站,然后单击“属性”。
4.
单击“目录安全”选项卡。在“安全通信”部分中,单击“服务器证书”,以启动“Web 服务器证书向导”,然后单击“下一步”。
5.
单击“创建一个新证书”,然后单击“下一步”。
6.
单击“立即准备请求,但稍后发送”,然后单击“下一步”。
7.
在“名称”框中,键入容易记住的名称。(默认的名称是您正在生成证书请求的网站名,例如 http://www.contoso.com。)
8.
指定位长度,然后单击“下一步”。
加密密钥的位长度确定了加密的强度。大多数非 Microsoft CA 都希望您最少选择 1024 位。
9.
在“组织”部分,键入您的组织和组织单位信息。确保此信息的准确性,并且“组织”字段中不包含逗号,然后单击“下一步”。
10.
在“站点的公用名称”部分,键入含域名的宿主计算机的名称,然后单击“下一步”。
11.
键入您的地理信息,然后单击“下一步”。
12.
将此文件保存为 .txt 文件。(默认的文件名和位置是 C:\certreq.txt。)
以下示例显示证书请求文件的特征。
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIDATCCAmoCAQAwbDEOMAwGA1UEAxMFcGxhbjgxDDAKBgNVBAsTA1BTUzESMBAG
A1UEChMJTWljcm9zb2Z0MRIwEAYDVQQHEwlDaGFybG90dGUxFzAVBgNVBAgTDk5v
cnRoIENhcm9saW5hMQswCQYDVQQGEwJVUzCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
gYkCgYEAtW1koGfdt+EoJbKdxUZ+5vE7TF1ZuT+xaK9jEWHESfw11zoRKrHzHN0f
IASnwg3vZ0ACteQy5SiWmFaJeJ4k7YaKUb6chZXG3GqL4YiSKFaLpJX+YRiKMtmI
JzFzict5GVVGHsa1lY0BDYDO2XOAlstGlHCtENHOKpzdYdANRg0CAwEAAaCCAVMw
GgYKKwYBBAGCNw0CAzEMFgo1LjAuMjE5NS4yMDUGCisGAQQBgjcCAQ4xJzAlMA4G
A1UdDwEB/wQEAwIE8DATBgNVHSUEDDAKBggrBgEFBQcDATCB/QYKKwYBBAGCNw0C
AjGB7jCB6wIBAR5aAE0AaQBjAHIAbwBzAG8AZgB0ACAAUgBTAEEAIABTAEMAaABh
AG4AbgBlAGwAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBp
AGQAZQByA4GJAGKa0jzBn8fkxScrWsdnU2eUJOMUK5Ms87Q+fjP1/pWN3PJnH7x8
MBc5isFCjww6YnIjD8c3OfYfjkmWc048ZuGoH7ZoD6YNfv/SfAvQmr90eGmKOFFi
TD+hl1hM08gu2oxFU7mCvfTQ/2IbXP7KYFGEqaJ6wn0Z5yLOByPqblQZAAAAAAAA
AAAwDQYJKoZIhvcNAQEFBQADgYEAhpzNy+aMNHAmGUXQT6PKxWpaxDSjf4nBmo7o
MhfC7CIvR0McCQ+CBwuLzD+UJxl+kjgb+qwcOUkGX2PCZ7tOWzcXWNmn/4YHQl0M
GEXu0w67sVc2R9DlsHDNzeXLIOmjUl935qy1uoIR4V5C48YNsF4ejlgjeCFsbCoj
Jb9/2RM=
-----END NEW CERTIFICATE REQUEST-----
13.
确认请求的详细信息,单击“下一步”,然后单击“完成”。
• 提交服务器证书请求
1.
联系 CA,查找提交请求的要求。
2.
将上述过程中创建的 .txt 文件的内容复制成 CA 要求的请求格式。
3.
将请求发送给您的 CA。
接收到 CA 的证书后,准备在您的 Web 服务器上安装此证书。
• 安装服务器证书
1.
将证书 (.cer) 文件复制到 C:\Windows\System32\CertLog 文件夹。
2.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
3.
右键单击您想要安装服务器证书的网站,然后单击“属性”。
4.
单击“目录安全”选项卡。在“安全通信”部分中,单击“服务器证书”,以启动“Web 服务器证书向导”,然后单击“下一步”。
5.
单击“处理挂起的请求并安装证书”,然后单击“下一步”。
6.
浏览至您接收到的 CA 证书。单击“下一步”两次,然后单击“完成”。
验证新的设置
验证正确设置是否已经应用于您的本地计算机。
• 验证是否在 Web 服务器上安装了证书
1.
单击“开始”,单击“控制面板”,单击“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要查看证书的网站,然后单击“属性”。
3.
在“目录安全”选项卡上的“安全通信”区域内,单击“查看证书”,查看证书之后,单击“确定”两次。
在 Web 服务器上强制和启用 SSL 连接
安装服务器证书之后,必须在 Web 服务器上强制 SSL 连接。然后,必须启用 SSL 连接。
要求
• 凭据:您必须作为 Web 服务器 Administrators 组成员登录。
• 工具:Internet 信息服务 (IIS) 管理器 (Iis.msc)。
• 强制 SSL 连接
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要强制 SSL 连接的网站,然后单击“属性”。
3.
单击“目录安全”选项卡。在“安全通信”部分,单击“编辑”。
4.
单击“要求安全通道 (SSL)”,选择加密长度,然后单击“确定”。
注意:如果您指定 128 位加密,使用 40 位或 56 位长度浏览的客户端计算机不能与您的站点通信,除非将其浏览器升级到支持 128 位加密的版本。
• 在 Web 服务器上启用 SSL 连接
1.
单击“开始”,单击“控制面板”,再单击“管理工具”,然后双击“Internet 信息服务 (IIS) 管理器”。
2.
右键单击您想要启用 SSL 连接的网站,然后单击“属性”。
3.
单击“网站”选项卡。在“网站标识”部分,验证“SSL 端口”是否填充了数值 443。
4.
然后单击“高级”。通常出现两个对话框,在“此网站的多个标识”框中列出此网站 IP 地址和端口。在“此网站的多个 SSL 标识”字段下,如果还没有列出端口 443,则单击“添加”。选择服务器的 IP 地址,在“SSL 端口”框中键入数值“443”,然后单击“确定”。
验证新的设置
验证正确安全设置是否已经应用于您的 Web 服务器。
• 验证 Web 服务器上的 SSL 连接
1.
打开浏览器,然后尝试通过标准的 http:// 协议来连接到 Web 服务器。例如,在“地址”框中,键入 http://localhost。
如果 SSL 被强制,则出现以下错误消息:
网页必须通过安全通道查看。您试图访问的网页受到安全套接字层 (SSL) 保护。
2.
通过键入 https://localhost,再次尝试连接到您想要查看的网页。
通常出现 Web 服务器的默认网页。
返回页首
相关信息
有关保护 IIS 6.0 的详细信息,请参阅下列文档:
• 位于 Microsoft 网站上的Security Enhancements in Internet Information Services 6.0,其网址为 http://go.microsoft.com/fwlink/?LinkId=22800(英文) 。
• 位于 TechNet 网站上的 Configuring Application Isolation on Windows Server 2003 and Internet Information Services (IIS) 6.0,其网址为 http://go.microsoft.com/fwlink/?LinkId=2280(英文)。
• 位于 Microsoft Events and Webcasts 网站上的 TechNet Webcast: Securing Internet Information Services (IIS),其网址为 http://go.microsoft.com/fwlink/?LinkId=22802(英文)。
有关IIS 6.0 的详细信息,请参阅下列文档:
• 位于 Microsoft 下载中心上的 Internet Information Services (IIS) 6.0 Resource Kit,其网址为 http://go.microsoft.com/fwlink/?LinkId=22803(英文)。
• 位于 TechNet 网站上的 Internet Information Services 技术网页,其网址为 http://go.microsoft.com/fwlink/?LinkId=22804(英文)。
• 位于 Microsoft 网站上的 Technical Overview of Internet Information Services (IIS) 6.0,其网址为 http://go.microsoft.com/fwlink/?LinkId=22805(英文)。
Mar
14
INTRODUCTION
This article describes the default permissions and the user rights on a newly installed application server that has Internet Information Services (IIS) 6.0 installed.
MORE INFORMATION
The following tables document the NTFS file system permissions, registry permissions, and Microsoft Windows user rights. This information applies if Microsoft ASP.NET is included as part of the installation suite. This article focuses on the World Wide Web Publishing Service and does not consider other components, such as the File Transfer Protocol (FTP) service, the Simple Mail Transfer Protocol (SMTP) service, and Microsoft FrontPage Server Extensions (FPSE).
Note For the purposes of this document, the IUSR_MachineName account is used interchangeably with a configured anonymous account.
NTFS permissions
Directory Users\Groups Permissions
%windir%\help\iishelp\common Administrators Full control
%windir%\help\iishelp\common System Full control
%windir%\help\iishelp\common IIS_WPG Read
%windir%\help\iishelp\common Users (See Note 1.) Read, execute
%windir%\IIS Temporary Compressed Files Administrators Full control
%windir%\IIS Temporary Compressed Files System Full control
%windir%\IIS Temporary Compressed Files IIS_WPG List, read, write
%windir%\IIS Temporary Compressed Files Creator owner Full control
%windir%\system32\inetsrv Administrators Full control
%windir%\system32\inetsrv System Full control
%windir%\system32\inetsrv Users Read, execute
%windir%\system32\inetsrv\*.vbs Administrators Full control
%windir%\system32\inetsrv\ASP compiled templates Administrators Full control
%windir%\system32\inetsrv\ASP compiled templates IIS_WPG Read
%windir%\system32\inetsrv\History Administrators Full control
%windir%\system32\inetsrv\History System Full control
%windir%\system32\Logfiles Administrators Full control
%windir%\system32\inetsrv\metaback Administrators Full control
%windir%\system32\inetsrv\metaback System Full control
Inetpub\Adminscripts Administrators Full control
Inetpub\wwwroot (or content directories) Administrators Full control
Inetpub\wwwroot (or content directories) System Full control
Inetpub\wwwroot (or content directories) IIS_WPG Read, execute
Inetpub\wwwroot (or content directories) IUSR_MachineName Read, execute
Inetpub\wwwroot (or content directories) ASPNET (See Note 2.) Read, execute
Note 1 You must have permissions to this directory when you use Basic authentication or Integrated authentication and when custom errors are configured. For example, when error 401.1 occurs, the logged-on user sees the expected detailed custom error only if permissions to read the 4011.htm file have been granted to that user.
Note 2 By default, ASP.NET is used as the ASP.NET process identity in IIS 5.0 isolation mode. If ASP.NET is switched to IIS 5.0 isolation mode, ASP.NET must have access to the content areas. ASP.NET process isolation is detailed in IIS Help. For additional information, visit the following Microsoft Web site:
ASP.NET process isolation
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol
/windowsserver2003/proddocs/standard/aaconruntimeprocessisolation.asp
Registry permissions
Location Users\Groups Permissions
HKLM\System\CurrentControlSet\Service\ASP Administrators Full control
HKLM\System\CurrentControlSet\Service\ASP System Full control
HKLM\System\CurrentControlSet\Service\ASP IIS_WPG Read
HKLM\System\CurrentControlSet\Service\HTTP Administrators Full control
HKLM\System\CurrentControlSet\Service\HTTP System Full control
HKLM\System\CurrentControlSet\Service\HTTP IIS_WPG Read
HKLM\System\CurrentControlSet\Service\IISAdmin Administrators Full control
HKLM\System\CurrentControlSet\Service\IISAdmin System Full control
HKLM\System\CurrentControlSet\Service\IISAdmin IIS_WPG Read
HKLM\System\CurrentControlSet\Service\w3svc Administrators Full control
HKLM\System\CurrentControlSet\Service\w3svc System Full control
HKLM\System\CurrentControlSet\Service\w3svc IIS_WPG Read
Windows User Rights
Policy Users
Access this computer from the network Administrators
Access this computer from the network ASPNET
Access this computer from the network IUSR_MachineName
Access this computer from the network IWAM_MachineName
Access this computer from the network Users
Adjust memory quotas for a process Administrators
Adjust memory quotas for a process IWAM_MachineName
Adjust memory quotas for a process Local service
Adjust memory quotas for a process Network service
Bypass traverse checking IIS_WPG
Allow log on locally (see Note) Administrators
Allow log on locally (see Note) IUSR_MachineName
Deny logon locally ASPNET
Impersonate a client after authentication Administrators
Impersonate a client after authentication ASPNET
Impersonate a client after authentication IIS_WPG
Impersonate a client after authentication Service
Log on as a batch job ASPNET
Log on as a batch job IIS_WPG
Log on as a batch job IUSR_MachineName
Log on as a batch job IWAM_MachineName
Log on as a batch job Local service
Logon as a service ASPNET
Logon as a service Network service
Replace a process level token IWAM_MachineName
Replace a process level token Local service
Replace a process level token Network service
Note In a new default installation of Microsoft Windows Server 2003 with IIS 6.0, the Users group and the Everyone group have Bypass traverse checking permissions. The worker process identity inherits Bypass traverse checking permissions through one of these groups. If both groups are removed from Bypass traverse checking permissions, and the worker process identity does not inherit Bypass traverse checking permissions through any other assignment, the worker process does not start. If the Users group and the Everyone group must be removed from the Bypass traverse checking permissions, add the IIS_WPG group to permit IIS to function as expected.
Note In IIS 6.0, when Basic authentication is configured as one of the authentication options, the LogonMethod metabase property for Basic authentication is NETWORK_CLEARTEXT. The NETWORK_CLEARTEXT logon type does not require the Allow log on locally user right. This also applies to Anonymous authentication. For additional information, see the "Basic Authentication Default Logon Type" topic in IIS Help. You can also visit the following Microsoft Web site:
Basic authentication
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol
/windowsserver2003/proddocs/standard/sec_auth_basicauth.asp?frame=true
REFERENCES
For additional information about how to implement and manage IIS security, visit the following Microsoft Web sites:
Windows Server 2003 Security Guide
http://go.microsoft.com/fwlink/?LinkId=14845
TechNet
http://www.microsoft.com/technet/security/prodtech/iis/default.mspx
Security how-to resources
http://www.microsoft.com/technet/itsolutions/howto/sechow.mspx
Improving Web application security: threats and countermeasures
http://msdn.microsoft.com/library/en-us/dnnetsec/html/ThreatCounter.asp
This article describes the default permissions and the user rights on a newly installed application server that has Internet Information Services (IIS) 6.0 installed.
MORE INFORMATION
The following tables document the NTFS file system permissions, registry permissions, and Microsoft Windows user rights. This information applies if Microsoft ASP.NET is included as part of the installation suite. This article focuses on the World Wide Web Publishing Service and does not consider other components, such as the File Transfer Protocol (FTP) service, the Simple Mail Transfer Protocol (SMTP) service, and Microsoft FrontPage Server Extensions (FPSE).
Note For the purposes of this document, the IUSR_MachineName account is used interchangeably with a configured anonymous account.
NTFS permissions
Directory Users\Groups Permissions
%windir%\help\iishelp\common Administrators Full control
%windir%\help\iishelp\common System Full control
%windir%\help\iishelp\common IIS_WPG Read
%windir%\help\iishelp\common Users (See Note 1.) Read, execute
%windir%\IIS Temporary Compressed Files Administrators Full control
%windir%\IIS Temporary Compressed Files System Full control
%windir%\IIS Temporary Compressed Files IIS_WPG List, read, write
%windir%\IIS Temporary Compressed Files Creator owner Full control
%windir%\system32\inetsrv Administrators Full control
%windir%\system32\inetsrv System Full control
%windir%\system32\inetsrv Users Read, execute
%windir%\system32\inetsrv\*.vbs Administrators Full control
%windir%\system32\inetsrv\ASP compiled templates Administrators Full control
%windir%\system32\inetsrv\ASP compiled templates IIS_WPG Read
%windir%\system32\inetsrv\History Administrators Full control
%windir%\system32\inetsrv\History System Full control
%windir%\system32\Logfiles Administrators Full control
%windir%\system32\inetsrv\metaback Administrators Full control
%windir%\system32\inetsrv\metaback System Full control
Inetpub\Adminscripts Administrators Full control
Inetpub\wwwroot (or content directories) Administrators Full control
Inetpub\wwwroot (or content directories) System Full control
Inetpub\wwwroot (or content directories) IIS_WPG Read, execute
Inetpub\wwwroot (or content directories) IUSR_MachineName Read, execute
Inetpub\wwwroot (or content directories) ASPNET (See Note 2.) Read, execute
Note 1 You must have permissions to this directory when you use Basic authentication or Integrated authentication and when custom errors are configured. For example, when error 401.1 occurs, the logged-on user sees the expected detailed custom error only if permissions to read the 4011.htm file have been granted to that user.
Note 2 By default, ASP.NET is used as the ASP.NET process identity in IIS 5.0 isolation mode. If ASP.NET is switched to IIS 5.0 isolation mode, ASP.NET must have access to the content areas. ASP.NET process isolation is detailed in IIS Help. For additional information, visit the following Microsoft Web site:
ASP.NET process isolation
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol
/windowsserver2003/proddocs/standard/aaconruntimeprocessisolation.asp
Registry permissions
Location Users\Groups Permissions
HKLM\System\CurrentControlSet\Service\ASP Administrators Full control
HKLM\System\CurrentControlSet\Service\ASP System Full control
HKLM\System\CurrentControlSet\Service\ASP IIS_WPG Read
HKLM\System\CurrentControlSet\Service\HTTP Administrators Full control
HKLM\System\CurrentControlSet\Service\HTTP System Full control
HKLM\System\CurrentControlSet\Service\HTTP IIS_WPG Read
HKLM\System\CurrentControlSet\Service\IISAdmin Administrators Full control
HKLM\System\CurrentControlSet\Service\IISAdmin System Full control
HKLM\System\CurrentControlSet\Service\IISAdmin IIS_WPG Read
HKLM\System\CurrentControlSet\Service\w3svc Administrators Full control
HKLM\System\CurrentControlSet\Service\w3svc System Full control
HKLM\System\CurrentControlSet\Service\w3svc IIS_WPG Read
Windows User Rights
Policy Users
Access this computer from the network Administrators
Access this computer from the network ASPNET
Access this computer from the network IUSR_MachineName
Access this computer from the network IWAM_MachineName
Access this computer from the network Users
Adjust memory quotas for a process Administrators
Adjust memory quotas for a process IWAM_MachineName
Adjust memory quotas for a process Local service
Adjust memory quotas for a process Network service
Bypass traverse checking IIS_WPG
Allow log on locally (see Note) Administrators
Allow log on locally (see Note) IUSR_MachineName
Deny logon locally ASPNET
Impersonate a client after authentication Administrators
Impersonate a client after authentication ASPNET
Impersonate a client after authentication IIS_WPG
Impersonate a client after authentication Service
Log on as a batch job ASPNET
Log on as a batch job IIS_WPG
Log on as a batch job IUSR_MachineName
Log on as a batch job IWAM_MachineName
Log on as a batch job Local service
Logon as a service ASPNET
Logon as a service Network service
Replace a process level token IWAM_MachineName
Replace a process level token Local service
Replace a process level token Network service
Note In a new default installation of Microsoft Windows Server 2003 with IIS 6.0, the Users group and the Everyone group have Bypass traverse checking permissions. The worker process identity inherits Bypass traverse checking permissions through one of these groups. If both groups are removed from Bypass traverse checking permissions, and the worker process identity does not inherit Bypass traverse checking permissions through any other assignment, the worker process does not start. If the Users group and the Everyone group must be removed from the Bypass traverse checking permissions, add the IIS_WPG group to permit IIS to function as expected.
Note In IIS 6.0, when Basic authentication is configured as one of the authentication options, the LogonMethod metabase property for Basic authentication is NETWORK_CLEARTEXT. The NETWORK_CLEARTEXT logon type does not require the Allow log on locally user right. This also applies to Anonymous authentication. For additional information, see the "Basic Authentication Default Logon Type" topic in IIS Help. You can also visit the following Microsoft Web site:
Basic authentication
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol
/windowsserver2003/proddocs/standard/sec_auth_basicauth.asp?frame=true
REFERENCES
For additional information about how to implement and manage IIS security, visit the following Microsoft Web sites:
Windows Server 2003 Security Guide
http://go.microsoft.com/fwlink/?LinkId=14845
TechNet
http://www.microsoft.com/technet/security/prodtech/iis/default.mspx
Security how-to resources
http://www.microsoft.com/technet/itsolutions/howto/sechow.mspx
Improving Web application security: threats and countermeasures
http://msdn.microsoft.com/library/en-us/dnnetsec/html/ThreatCounter.asp