社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 770阅读
  • 1回复

WWW服务高级配置

楼层直达
级别: 管理员
发帖
3549
飞翔币
5005
威望
64392
飞扬币
51613
信誉值
815
[td=2,1,1468]
[size=11pt]WWW服务高级配置
多Web站点配置
在一台计算机上实现多个Web站点的方式称为虚拟服务器。尤其对于多个小型站点,虚拟服务器可以极大的节省硬件成本,如右图。
我们知道,域名是区分站点的唯一性标记,站点的数量是与域名数相等的;同时,一个域名往往是与一个IP地址唯一对应的。这样,看上去服务器应该拥有的IP地址数应该与虚拟服务器的数量相同。这种虚拟服务器的实现方法就是在上一章中提到的方式。
显然,由于IP地址资源的缺稀性,我们往往需要借助于其他手段利用同一IP地址实现多个站点,这里我们介绍的两种方法是端口号方法和主机头方法。








更改端口号方式
TCP端口号是客户机浏览器与Web服务器之间的信息通道,TCP端口号可以多达四位数。每种网络服务都需要在服务器端指定一个TCP端口号,客户机只有指定了同一端口号之后才能与服务器建立通信联系。那么,为什么我们通常浏览Web网站时不必输入端口号呢,这是因为普通的Internet服务拥有固定的缺省端口号,例如WWW服务的缺省端口号为80,FTP服务的缺省端口号为21。当我们在浏览器中输入站点地址时,即使不指定80位端口号,浏览器仍然自动的以TCP端口80与服务器进行通信。
端口号与IP地址同样是用于区分站点的唯一性标识,这样,即使两个站点拥有同样的IP地址,但只要给它们指定不同的TCP端口号就可以将它们区分开来。但是,一旦将端口号从默认的80更改为其他数值,客户浏览器并不能直接以更改过的端口打开网页,客户必须手工指定它TCP端口号,就是在浏览器地址栏中输入域名之后加上":"和端口号数值。例如,在同一台服务器上有两个网站www.Site1.com和www.Site2.com,它们共用一个IP地址168.192.3.15,我们配制www.Site1.com使用默认端口号80,而www.Site2.com的端口号为8088,那么我们在浏览器地址栏中输入地址168.192.3.15得到的是Site1,要想访问Site2就要输入168.192.3.15:8088。
指定站点端口号的方法并不复杂:
1.打开IIS管理环境,右击管理控制树中的站点节点,单击【属性】。
2.打开WWW属性表单,可见如左图的【Web站点】选项卡。
3.在【TCP端口】栏中更改TCP端口号。
以端口号方式使站点共用IP地址的方法并不方便,除了要用户记住端口号数字之外,这样的做法也不太符合网络礼仪,所以很难用于正规的商业性网站。但是在一些内部网站,尤其是不希望普通用户访问的安全性网站中,通过更改默认端口号可以提高网站安全性。
主机标头方式
主机标头(Host Header)是除了IP地址和TCP端口号之外的第三个用于区分站点的唯一性标识。这样,对于两个共用同一个IP地址且都采用默认TCP端口号80的站点,只要为它们指定不同的主机标头,就可以唯一的在网络中将它们区分开。
主机标头这种技术是在HTTP 1.1标准中定义的,因此,对于在IIS中使用主机标头进行配制的站点,客户浏览器必须支持HTTP 1.1标准才能进行浏览。高于3.0版本的IE和高于2.0版本的Netscape浏览器支持HTTP 1.1标准。
为站点添加主机标头的方法如下:
1.在WWW属性表单的【Web站点】选项卡中单击【IP地址】栏右侧的【高级】。
2.如右图,在【高级多Web站点配置】对话框中,选择列表中的标识项,单击【删除】。
3.单击【添加】,打开【高级Web站点标识】对话框,如右图所示。
4.在【IP地址】下拉列表框中选择IP地址。
5.指定【TCP端口】栏中的值为默认端口号80。
6.在【主机头名】栏中输入主机标头名称,尽量不要包含空格或其他不兼容字符。
7.单击【确定】返回。
8.再次单击【确定】完成。
  上述设置中,可以指定多个站点拥有同一IP地址、TCP端口号,只要保持它们的主机标头各不相同即可。随后,应在DNS服务器中将这些主机头名统统映射到它们共同的IP地址上。在客户浏览器中输入主机头名即可访问相应站点。
[size=11pt]WWW服务高级配置
Web站点安全性设置
无庸置疑,站点的安全性是一个相当重要的话题。随着黑客技术的提高,在动辄听说某某网站又被攻破的今天,我们无法不时时刻刻提心吊胆。同时,随着企业信息化程度的不断提高以及B2B、ASP等电子商务模式的不断深入人心,越来越多的敏感数据被包含在企业内部网站和商业站点中,一旦这些信息丢失,后果将不堪设想。时至今日,Web站点的安全性设置几乎已经成为一个Web管理员最重要的日常工作。本节将就安全性设置问题进行深入的讨论。
安全设置概述
站点的安全防范是一个综合性的系统工程,世界上有矛就有盾,我们不可能指望仅仅通过某一种技术使站点永远保持安全。事实上,一个有效的安全计划要依赖于综合利用诸多软件设置甚至硬件防护才能产生较好的安全效果。有关防火墙之类基于硬件或专门防护软件的安全防范措施将不属于本节讨论的范畴,请大家参阅专门的反黑技术指南。本节讨论的安全设置仅依赖于Windows 2000和IIS内部的安全性功能,鉴于Windwos 2000强大的安全性能(符合C2安全级别),尤其是强大的用户认证能力和独有的NTFS安全分区,IIS网站的安全性完全可以得到非常有力的保证。
笼统的说,站点安全性工作将围绕如下两个任务进行:合法用户身份的认证和站点文件的安全保障。前者需要借助于Windows 2000的账号系统和认证机制;后者则要由IIS和NTFS分区共同维护。
右图就是一个身份验证的例子,含有敏感数据的内部网站往往不允许匿名访问,当客户企图连接网页时回收到类似右图的网络密码对话框,用于客户验证。
理解Windows 2000用户账号和组
在系统讲述IIS安全机制之前,有必要先对Windows 2000的用户账号概念以及账号验证机制进行简单介绍,这些正是IIS安全性配制的基础。
账号是在windows 2000网络中区分用户的唯一性标识,账号与实际用户是对应的。在Windows 2000网络环境中,为计算机用户分配各自不相同的账号,通过对账号指定访问权限可以限制用户对资源的访问程度。在安装Windows 2000时,系统自动生成管理员账号Administrator,管理员具有对计算机的全部属性进行配制的能力。
Windows 2000中添加账号的工作是在计算机管理器中完成的,具体方法如下:
1.单击【开始】、【程序】、【管理工具】、【计算机管理】,打开如右图所示的计算机管理器。
2.展开左侧管理控制树中的【本地用户和组】节点,选择【用户】。
3.单击【操作】菜单,选择【新用户】,打开【新用户】对话框,如右图。
4.添加用户名、全名、描述等信息并设定密码。
5.单击【创建】。
6.单击【关闭】返回。
7.此时,新用户账号出现在计算机管理器的用户列表中。
8.双击列表中的用户账号可以打开账号属性对话框详细配制账号属性。
账号代表着网络中的个体,对应着现实中的网络用户,通过将资源的访问权限赋予账号,可以使用户能够或者不能访问特定的资源(下一小节详述)。账号本身的安全性由密码进行保护,在网络中,账号通常是公开的,而密码则必须保密,且有必要通过定期更改密码、密码锁定等策略强化账号安全。
当账号数目随着网络用户的增多而变得越来越多时,逐一给每一账号设置资源访问权限的工作量显然是巨大的。为了简化权限分配的任务,我们引入了组的概念。组是账号的逻辑集合,我们建立一个组,然后将一些账号加入组中,通过将资源访问权限分配给组,组中的账号也就自动的继承了这些权限,从而简化了权限分配的工作量。左图是计算机管理器中的组列表。
账号和组是多对多的关系,一个组可以包含多个账号,一个账号可以同时属于多个组。一旦一个账号通过多个组继承了多种不同的权限,通常是限制最少的权限实际起作用。除了一个特例:"禁止访问"权限覆盖其他一切权限,也就是说,一旦一个账号直接或者通过某个组继承了"禁止访问"权限,那么即使它还拥有或继承了其他权限,哪怕是最高权限(完全控制),则该账号仍然不对该资源具有如何权限。
记住,组仅是账号的逻辑组合,并不实际的与账号构成包含关系,所以,删除了一个组并不意味着同时删除了它所包含的账号,只不过这些账号通过这个组所继承的资源访问权限不再有效而已。
创建组的步骤与创建账号类似,不再详述。双击计算机管理器中的组列表成员时,可以打开如左图所示的组属性对话框,从中可以编辑组成员。单击【添加】,从【选择用户或组】对话框中指定组的成员,然后单击【确定】返回。
[size=11pt]WWW服务高级配置
NTFS权限设置
NTFS权限是NTFS分区文件格式特有的安全权限,在通常的FAT分区上,我们无法指定一个文件对于不同用户的不同安全权限。例如在windows 98中,我们可以共享一个文件夹,但是仅能够给出诸如"只读口令"、"完全访问口令"之类的有限安全控制方式,并不能给各个用户账号分别配制不同的权限;对于本地登录的用户,甚至不能限制他的如何操作。而随着Microsoft在Windows NT中首次引入了NTFS分区格式,再借助于NT(Windows 2000)的用户账号验证能力,就可以实现针对不同用户的不同安全权限设置。
NTFS权限分为若干种,对于NTFS分区上的目录而言,可以给账号或组指定如下几种权限:
1.完全控制,具有对文件夹的全部操作能力。
2.修改,能够更改、添加、读取文件。
3.读取,仅能够读文件内容。
4.写入,能够向文件中添加内容。
5.读取及运行,同时包括3和4。
6.列出文件夹目录,能够查看文件夹内容,但不能访问。
7.禁止访问,不具有如何权限。
权限的设定是在我的电脑或者Windows资源管理器中完成的,具体方法如下:
1.右击NTFS分区上的文件夹,在弹出菜单上选择【属性】。
2.单击文件夹属性对话框中的【安全】选项卡,如右图。
3.【安全】选项卡上部的账号和组列表中,列出当前具有访问权限的账号和组。
4.从列表中选择需要指定权限的账号或组,在【权限】列表中指定其对该文件夹拥有的访问权限。具体方法是选择欲指定权限对应的【允许】或【拒绝】复选框。例如,需要允许某账号读取但不允许写入时,就分别选择【读取】和【写入】权限所对应的【允许】和【拒绝】复选框。将所有权限都选为【拒绝】时,相当于指定了拒绝访问的权限。
5.当需要指定其他账号或组的访问权限时,应先将其加入账号和组列表中,单击账号户和组列表右侧的【添加】,打开如左图所示的【选择用户、计算机或组】对话框。
6.在【查找范围】下拉列表框中指定账号和组所在的域或计算机。
7.从列表中选择账号或组名,单击【添加】。
8.反复将多个账号或组加入结果列表后,单击【确定】返回。
NTFS权限针对不同的账号设定其对资源的问程度,一般的,应把网站包含的网页文件、应用程序文件、数据库文件等资源存放在NTFS分区上,然后指定其NTFS权限。
由于权限可以在任意文件夹甚至文件的级别上进行设置,所以存在子文件夹与父文件夹发生权限冲突的情况,这就要通过权限继承设置进行调整。在【安全】选项卡上可以选择【将来自父系的客继承权限传播给该对象】复选框,从而使文件夹能够继承其上一级文件夹的权限。
在【安全】选项卡中单击【高级】,打开如右图所示的文件夹访问控制设置对话框,在【权限】选项卡中可以详细设置权限和继承关系。
目录和访应用程序问权限设置
目录和应用程序访问权限是由IIS维护的权限设置,它与上小节中讨论的NTFS权限互相独立的运作,共同限制用户对站点资源的访问。目录和应用程序访问权限并不能对用户身份进行识别,所以它所做出的限制是一般性的,对所有访问者都起作用。
目录和应用程序访问权限分别对网站中的目录(包括实际目录和虚拟目录)以及应用程序文件进行权限限制。前者针对非应用程序文件(包括网页、所数据库文件等),其权限类型具体为:读取和写入;后者则针对使用脚本语言编写的脚本程序文件和可执行应用程序文件,其权限有:无权限、纯脚本、脚本和可执行程序三种类型。
指定目录和应用程序访问权限的工作是在站点WWW属性表单的【主目录】选项卡中进行的,如右图所示。
【主目录】选项卡中部的【读取】和【写入】复选框用于配制目录访问权限。一般意义上的网页浏览和文件下载操作在【读取】权限的许可下就可以进行了。而对于允许用户添加内容的网站(例如搜集用户信息的网站或专门的个人主页空间),就要考虑指定【写入】权限。注意,【写入】权限的指定可能给网站带来安全上的隐患,或者给黑客提供可利用的系统漏洞,所以如果没有特别的需求,仅指定【读取】权限就已经足够了
【主目录】选项卡下部的【执行许可】下拉列表框中,可以为站点应用程序指定执行权限,其中【脚本和可执行程序】权限包含【纯脚本】权限。这里所说的脚本程序和可执行程序的区别在于:由脚本语言(例如Perl、VBScript 、Jscript等)编写的脚本应用程序表现为一些存储在服务器上的代码,客户浏览器将这些代码下载到本地再进行解释执行;而标准的可执行应用程序(.exe .com .dll .bat等文件)则要在服务器端执行,仅将执行结果返回客户浏览器。鉴于后者可能带来安全隐患(尤其对于dll文件),故应慎重使用。
匿名和授权访问控制
首先,我们来看一下匿名和授权访问的基本概念。前面我们已经知道只有拥有合法的Windows 2000用户账号才能对Windows 2000资源进行访问,对于基于Windows 2000系统的IIS也不例外。但是,根据我们上网的经验,在打开网站主页时并没有要求我们输入用户账号和密码。这是因为,在通常情况下,网站是允许匿名访问的,即无需再输入账号,自动使用匿名访问帐号并继承匿名访问权限。在安装IIS时,系统自动生成一个匿名访问用户账号,名为:
IUSR_computername,其中computername是IIS所在服务器的计算机名。所有IUSR_computername账号能够访问的资源,就是匿名用户的授权许可范围。
一旦用户所访问的资源不允许匿名访问,IIS就会要求用户提供合法的用户账号及密码,这就是授权访问。授权访问要求用户拥有合法的Windows 2000账号,且必须具有相应的权限。
匿名和授权访问控制是在站点WWW属性表单的【目录安全性】选项卡中进行的,如右上图所示。
缺省情况下,IIS对任意站点都是允许匿名访问的,如果出于站点安全性等考虑需要禁止匿名访问时,按照如下步骤进行配置:
1.在IIS中右击管理控制树中需要禁止匿名访问的Web站点图标,选择【属性】。
2.单击【目录安全性】选项卡。
3.在【目录安全性】选项卡上部的【匿名访问和验证控制】栏中单击【编辑】。
4.如右图,在【验证方法】对话框中清除【匿名访问】复选框。
5.单击【确定】返回。
当然,对于公共性质的网站而言,并不需要禁止匿名访问,但是某些情况下还需要对匿名访问用户账号进行配置。在【验证方法】对话框中选择【匿名访问】复选框,然后单击右侧的【编辑】,打开如右图所示的【匿名用户账号】配置对话框。
有时网站管理员可能并不满意使用IUSR_computername作为匿名访问账号名,出于安全考虑或管理方便,往往也需要指定另一个账号作为匿名访问账号。这时只需单击【用户名】右侧的【浏览】,并从【选择用户】对话框中指定新的匿名访问账号,并单击【确定】即可。
匿名访问账号IUSR_computername是在安装IIS时自动生成的,由于在IIS中也可对其进行设置,所以这里涉及到一个密码同步的问题。通常情况下,是由IIS自动控制密码同步的。也可以选择手工在IIS和Windows 2000账号管理器之间同步匿名访问账号密码。从IIS中指定匿名访问账号密码的方法是在【匿名用户账号】对话框中清除【允许IIS控制密码】复选框,然后在【密码】栏中输入新密码。注意,这是指定的密码并不一定与Windows 2000中的匿名访问账号所配置的相同,需要管理员手工在Windows 2000中做出更改。
前面讨论的匿名访问能够用于一般的公共网站,然而当网站内容包含敏感的商业数据时,就要根据用户身份(账号)的不同来指定不同的访问权限。
当用户打开一个站点时,通常先尝以匿名访问方式进行连接,一旦匿名方式不能对用户请求的资源进行访问时(通常是因为匿名访问账号部具有相应的权限),IIS系统会要求用户输入合法账号以及密码,如右图。
那么,鉴于账号密码同样属于敏感数据,它们在网络中传送是否安全呢?事实上,IIS为了防止密码信息丢失,提供了密码传输加密手段。用于授权用户验证的方式有三种:基本验证、Windows域服务器的简要验证、集成Windows验证,其中后两种验证方式是加密的。
这三种验证方式是同时可选的,也就是说我们可以同时配置服务器使用其中的一种或几种验证方式。只要在【验证方法】对话框中选择相应的复选框即可。
【基本验证】方式是安全性最低的验证方式,使用这种方式时,用户帐号密码是以明文形式(即不加密报文)的形式在网络中传送的,装备了网络监视工具的计算机可能截获用户名和密码。由于存在安全隐患,所以在选择这种验证方式时,IIS要给出如右图所示的警告对话框,单击【是】继续。

【Windows域服务器的简要验证】和【集成Windows验证】都是属于加密验证的发式。其中简要验证方法是IIS 5.0中新引入的验证方法,它通过网络发送经过混编的密码值而不是密码本身。该方法通过代理服务器和其他防火墙工作。这里的混编密码值通常是利用哈西算法得到的,此方法较基本验证安全得多,但低于集成Windows验证方式(可以通过复杂运算加以破解)。
【集成Windows验证】通过与用户的Internet Explorer Web浏览器进行密码交换以确认用户的身份。这种验证方式是由以前的Challenge/Respones验证方法发展来的。这里的Challenge和Respones可以看作是两种算法,相当于一对钥匙。用户的Internet Explorer Web浏览器(注意,其他浏览器不支持这一验证方式)使用Challenge算法对用户名和密码进行处理,得到一组密文,然后将这组密文发送给服务器,服务器再用Respones算法加以处理(相当于Challenge的逆过程)解出用户名和密码原文,然后再由Windows 2000进行账号验证。
默认情况下,IIS将在IIS服务器所在的域中进行用户验证(域是账号验证的单位)。如果访问站点的用户账号属于其他域,则应在验证方法对话框中的验证访问栏单击【编辑】,打开【基本验证域】对话框指定,如右下图。
IP地址和域名访问控制
IP地址和域名访问控制方式源于对于特定IP地址或域名的不信任,鉴于网站管理员通常会认为来自某些IP地址的用户带有明显的攻击倾向(通过对日志文件的分析可以得到这一结论),或者网站管理员希望仅有来自特定IP地址或域名的用户才能够访问网站(对于仅供内部使用的网站尤其如此)。这些限制能力都倚赖于IP地址和域名访问控制功能。
按照如下步骤配置Web服务器限制来自特定IP地址用户对站点的访问:
1.在IIS中右击需要配置IP地址限制的网站,在弹出菜单中选择【属性】。
2.在站点的WWW属性表单中单击【目录安全性】选项卡,如右上图所示。
3.在【IP地址及域名限制】栏中单击【编辑】,打开如右下图所示的【IP地址及域名限制】对话框。
说明:IP地址限制的方式有两种:授权访问和拒绝访问。如果需要限制来自某些地址的用户对网站进行访问(没有被限制的用户可以进行正常访问),就使用前者;如果希望仅允许来自某些地址的用户能够访问网站内容(其他用户不能访问),则使用后者。以下我们以前一种方式为例进行限制。
4.在【IP地址及域名限制】对话框中选择【授权访问】方式,随后我们可以指定例外地址,这些例为地址就是被限制不能访问站点的IP。
5.单击【添加】打开【拒绝以下访问】对话框指定例外地址,如右上图所示。
6.在类型栏中选择【单机】,指定被限制访问的用户来自某一个IP地址。
7.在IP地址栏中输入受限的IP地址。
8.单击【确定】加入。重复上一步可以添加多个例外地址,它们在【例外】列表中列出。
9.在【拒绝以下访问】对话框选择【一组计算机】,可以指定一组例外地址,如图中所示。
10.一组例外计算机由网络地址和子网掩码共同确定,分别在【网络标识】和【子网掩码】栏中输入其值。
11.单击【确定】加入。重复上一步可以添加多组例外地址。
12.另一种访问控制方式是根据用户来自的域进行控制。如右下图所示。
注意,在使用域名限制方式进行访问控制时,往往需要进行反向DNS解析,将试图访问服务器的用户IP地址送到DNS服务器进行反向查询以得到其域名。这一操作将极大的耗费系统资源,尤其是宝贵的带宽资源,所以,除非万不得已,否则不要使用域名限制方式。
使用权限向导
权限向导是IIS 5.0新引入的权限管理工具。鉴于对站点安全性的配置复杂而无序,较难理出一条简明而准确的主线,IIS 5.0引入了权限向导工具,它提供了一个连续、简单、准确的权限配置流程,可以使管理员迅速对站点进行一般性的权限设定。尤其是对于涉及大量权限继承关系的站点(虚拟)目录配置工作,运用权限向导往往能达到意想不到的效果。
权限向导主要对安全设置和目录权限进行快速指定,并能够以摘要的形式提供安全分析。
1.打开IIS管理界面,右击管理控制树中的站点或目录,指向【所有任务】,单击【权限向导】。
2.在如上图所示的【欢迎使用权限向导】对话框中单击【下一步】。
3.接下来,权限向导进入如右下图所示的【安全设置】对话框,这里可以设置当前对象(站点或目录)是否继承其上一级对象(计算机、站点、父目录)的安全设置。如果选择【继承所有的安全设置】,那么在单击【下一步】之后,向导将自动进入目录权限设置界面(步骤5),与此同时,当前对象的安全设置自动按照其父对象的设置做出调整。为了在普遍意义上说明问题,这里我们选择【从模板选取新的安全设置】,然后单击【下一步】。
+
4.如右上图,在【站点方案】对话框中,可供我们选择的方案有两个:Public Web Site和Secure Web Site,顾名思义,后者的安全性更高一些。一般的Public Web Site方案允许所有用户浏览静态和动态的内容;而Secure Web Site方案则仅允许所有具有 Windows 2000 帐号的用户查看动态和静态的内容。这两种设置是与我们前面讨论过的匿名访问和授权访问站点对应的,它们分别运用于典型的公共站点和专用(内部)站点。单击【下一步】进入【目录和文件权限】对话框,如果在上一步中选择继承权限,则直接进入下一步。
5.如右下图,在【Windows目录及文件权限】对话框中,允许我们对目录和文件权限做出修改,这种修改是以和系统推荐权限进行对照的方式进行的。Windows 2000推荐的权限设置为:管理员账号拥有对站点文件和文件夹的全部访问权限,其他全体用户(包括匿名访问用户)拥有读取的权利。通过与这个推荐权限的比较,向导提供了三种可供选择的的选项。最简单的就是选择【保持目录和文件权限】,不做任何更改;也可以按照推荐方案选择【替换全部目录和文件访问权限】,这样站点文件的权限将按推荐权限做出更改;另外一种方式是选择【原封不动的保持当前目录和文件许可配置,并加入推荐带许可权限】,这实际上是一个折中的的方案,先取当前权限与推荐权限的差集,再将差集附加到单前权限上,即最大限度的保持当前权限并最大限度的执行了推荐方案。单击【下一步】继续。
6.如左下图所示,在【安全摘要】对话框中列出了摘要性的权限报告,包括:验证方法、访问许可、IP地址限制、ACL替换等。这些信息有助于我们清楚的了解站点的安全设置以及我们刚才所作配置的影响。单击【下一步】继续。
7.如右下图,单击【完成】结束权限向导。
综合安全访问控制
前述各种安全设置共同工作时,究竟那种权限设置居于主导地位呢?实际上,各种安全设置是共同发生作用的,也只有依赖于相互独立的若干种安全模式的共同作用,才能保证站点安全的万无一失。当站点接到来自用户浏览器的访问请求时,各种安全模式的应用流程如右图所示。
1.用户浏览器所在计算机的IP地址是否与IIS设置的IP地址限制重合?如果来自受限IP,访问将被拒绝;否则进入下一步验证。
2.用户身份验证是否通过?对于非匿名访问的站点,要对用户进行账号验证,如果使用非法账号,访问将被拒绝;否则进入下一步验证。
3.在IIS中指定的Web权限是否允许用户访问。Web权限包括对雯建的读写权限和队应用程序的执行/脚本权限,他们是对所有用户同时发生作用的。如果用户试图进行未授权的访问,访问将被拒绝;否则进入下一步验证。
4.用户正在进行的操作请求是否符合相应Web文件或文件夹的NTFS许可权限。
NTFS权限与前述Web权限没有相互作用,它是针对各个用户账号的。一旦用户企图进入其账号没有权利进行访问的资源,访问将被拒绝。
5.一旦用户通过上述四步验证就可以访问其请求的资源了。
至此,我们已经明白NTFS权限与Web权限的关系,其实它们没有丝毫的共同点,完全是互相独立进行设置的。但是,对于用户访问权限的验证,他们却是共同工作的。只有同时满足两种权限验证的用户才能最终访问到他所请求的资源。
数据加密与数字验证
我们前面用了大量的篇幅讨论安全问题,遵循上一节的权限设定于身份认证机制,我们已经有可能将非法用户据之门外,即使是合法用户,也不能访问其账号权限所不能及的资源。但是,这样一来,系统资源就真的安全了吗?答案是否定的,原因很简单,合法用户所请求的数据流并未加密,黑客只要利用垂手可得的工具在公共网络上进行数据监听就可以轻易获得网站的安全性数据。因此,数据加密的工作对与一个需要较高安全性的网站而言还是非常重要的。
数据加密原理
笼统的说,数据加密有两种方式:对称式数据加密和非对称式数据加密。不论那种方式都是借助于我们称之为密钥的算法对数据进行
预先处理,从而使在网络上传输的数据是经过处理的密文。我们将逐一介绍其工作原理与特性。
对称式数据加密方式的工作原理如右图所示,所谓对称,知道是采用这种加密方法的双方使用同样的密钥进行加密和解密。我们已经知道,密钥实际上是一种算法,那么这里的通信发送方使用这种算法(密钥)加密数据,接受方再使用同样的算法(密钥)解密数据。
这里还涉及一个问题:数据接收方怎么知道密钥的内容,亦即接受计算机任何得到加密/解密算法。实际上,上述数据传送过程省略了一个密钥交换的步骤,数据发送计算机必须以某种方式(通常也是网上传送)将密钥传送给数据接收计算机。接下来的问题是任何保证密钥的传送是安全的,这个问题看似无解,其实在理论上也并没有什么解决办法。因此对称式加密方式本身不是安全的。
非对称式加密方式可以解决对称式加密的安全性隐患,其工作原理如右图所示。这里,所谓非对称是指数据发送计算机和数据接收计算机使用不同的密钥。例如,发送计算机以密钥A加密数据,接收计算机以密钥B解密数据,密钥A和 B必须配对,否则不能成功解密。密钥对中的两把密钥通常称为公共密钥和私有密钥,简称公钥和私钥,利用公钥和私钥加密数据的方法有数字签名和数字信封,其详细工作方式稍后祥述。
不对称式加密方法避免了直接在网络上传送密钥,从而实现了绝对的安全数据传送。与对称式加密方式相比,不对称加密方式需要更多的计算量,尤其是在数据量巨大时,可能会占用过多CPU时间。
使用公钥和私钥的数据加密方式有数字签名和数字信封,前者用
于数据发送者身份的确认,后者用于传送加密的数据。两者共同运用才能在一个并不安全的网络上建立安全的数据通信。
首先,我们要明确公钥、私钥的概念及其归属问题。网络中的每台计算机(称为主机)都拥有一对自己的密钥,一把是公钥,一把是私钥。其中私钥归自己保留,且需要绝对保密!公钥则可以提供给网络上的任何计算机。例如在一个存在两台计算机的网络中,每台计算机都拥有一对密钥,则共有两对密钥(计两把公钥、两把私钥)。
随后,让我们看看密钥的加密原则。我们规定,凡是用公钥加密的文件,只能用同对的私钥才能解密;凡是用私钥加密的文件必须用同对的公钥才能解密。例如,甲计算机使用甲自己的私钥加密数据,接收计算机只能用甲的公钥才能解密;如果甲使用乙计算机的公钥加密数据,则接收计算机必须使用乙的私钥才能解密数据。
现在,就让我们利用上述规则详细学习数字签名和数字信封的工作方式吧。
数字签名:如右图中上半部分(阴影箭头)所示,数字签名的方式是由发送计算机使用自己的私钥加密信息,接收计算机使用发送计算机的公钥解密信息。前面我们已经提到,私钥保密而公钥公开,则任何计算机(包括接收计算机)都可以得到发送计算机的公钥。也就是说,任何人都可以解密信息,那么数字签名还有何意义呢?注意
只有发送计算机能够拥有自己的私钥,即接收计算机能够根据发送计算机的公钥判断发送计算机的身份是否有假。
因此,数字签名实际上是一种认证发送计算机身份的方法,并不用于实际的数据加密。当然,在网络中计算机身份复杂的情形下,这种认证方式为数据接收计算机提供了可靠的保护。
数字信封:如上图下半部分(白色箭头)所示,数字信封的方式是由发送计算机使用接收计算机的公钥加密信息,接收计算机使用自己的私钥解密信息。正式基于前述的私钥保密、公钥公开的原则,接收计算机的公钥能够被网络中的任何计算机得到,所以任何企图向接收计算机发送信息的计算机都能够进行发送;同时,由于只有接收计算机才能够拥有自己的私钥,这就保证了只有接收计算机才能解密发给自己的信息。
数字认证与SSL
前述基于公钥、私钥的数字加密方式只是在原理的层面上解决了数据加密问题,那么这种数据加密方式是如何在技术上实现的呢,我们在本小节讨论这个问题。
公钥和私钥的产生并不是在网络中每台计算机上独立完成的,因为既然我们无法信任计算机本身,自然无法信任由它自己生成的公钥和私钥。所以,Internet中存在许多专门负责密钥认证的权威机构,这些认证机构称为CA。所有需要密钥对的计算机向CA申请数字证书,数字证书中包含认证信息和一对公钥/私钥,CA负责验证申请者的真实身份,在确认无误之后颁发数字证书。每个数字证书都有自己的有效期限,过期需要重新申请。由于我们信任这些CA(就象现实生活中我们信任公正机构一样),我们也就信任由CA颁发的数字证书及其包含的密钥对。
使用上述密钥对加密/解密的数据安全传送方式又称为安全套接层(SSL),SSL能够确保网络中传送的数据流都是经过加密的。在客户机和服务器之间的SSL工作流程为:
1.客户浏览器与Web服务器之间建立通信连接。
2.Web服务器将自己的公钥发送给客户浏览器,同时发送的还有一组证明的附件,用于客户机验证服务器公钥的有效性。
3.服务器和浏览器之间进行加密等级协商,由于目前流行的加密方式有128位和40位两种,前者的安全等级更高(破译起来更加困难),但是美国政府禁止将128位加密技术用于北美之外的地区,国内的用户更是无缘使用了。因此,服务器和客户机需要就此达成共识,使用双方都认可的最高级别加密方式。
4.客户机的Web浏览器产生一个会话密钥(对称式密钥),使用服务器的公钥将其加密,发送回服务器。
5.服务器使用自己的私钥解密会话密钥,使用它建立安全信道。
6.服务器和浏览器使用对称式会话密钥进行安全通信。
为客户机配置数字总数的工作要再浏览器中完成,步骤如下:
1.在IE中单击【工具】菜单,选择【Internet选项】。
2.单击【内容】选项卡。
3.在【证书】栏中单击【证书】。
4.如右图,在【证书】对话框中对现有证书进行管理。
5.单击【关闭】完成。
客户机在使用SSL与服务器进行通信时,在其浏览器地址栏中的服务器域名应写成"https://"格式而非普通的http://格式。
配置服务器证书
上一小节中提到,有效的数字密钥来自于CA的数字证书,本小节中我们将学习如何利用IIS申请服务器数字证书。申请数字证书的过程可以简单的看作在服务器上生成一个证书请求,然后通过e_mail等方式将申请发送给CA,CA对申请者的真实性进行验证,一旦通过验证,CA就会将一个合法的数字证书文件发送给申情者。得到数字证书的申请者需要将数字证书安装到服务器上。
请求数字证书的步骤如下:
1.打开IIS,右击管理控制树中的站点图标,选择【属性】打开WWW属性表单。
2.单击【目录安全性】选项卡,如图所示。
3.在【安全通信】栏中单击【服务器证书】打开Web服务器证书向导。
4.在服务器证书向导欢迎对话框中单击【下一步】。
5.如右图,在【服务器证书】对话框中选择创建证书工作方式,由于当前没有任何服务器证书存在,所以选择【创建一个新证书】。单击【下一步】。
6.选择【现在准备请求,但稍后发送】,单击【下一步】。如果选择【立即发送请求到一个证书发布机构】,则稍后创建的证书请求将通过在线方式直接发送到CA。
7.如上图,在【命名和安全设置】对话框中指定新证书的名称以及加密长度,注意非北美地区的长度限制。单击【下一步】。
8.在【组织信息】对话框中指定证书申请机构所在的组织(公司)以及部门信息,注意这些信息需要如实填写,单击【下一步】。
9.在【站点公用名称】对话框中输入站点的公用名称,对于Internet上的Web站点,公用名称指的是域名即DNS注册名称;而对于Intranet上的内部站点,公用名称可用NetBIOS名代替。单击【下一步】。
10.如下图,在【地理信息】对话框中输入证书申请组织的地理信息,包括国家、省市、地区等标准名称,注意上述名称不能包括简写名,单击【下一步】。
11.如右图所示,在【证书请求文件名】对话框中的【文件名】栏中指定证书请求文件的存储路径,这个文件包含我们刚刚输入的全部申请信息,以文本文件形式保存在服务器本地。单击【下一步】。
12.如下图,在【请求文件摘要】对话框中列出刚才输入的数字证书请求文件内容,包括名称、地理信息等内容。如果发现存在不妥之处,单击【上一步】返回重新配置。检查无误后单击【下一步】。
13.单击【完成】结束。
14.将申请文件发送到CA,等待答复。
安装服务器证书的步骤与此相似,具体如下:
1.在站点WWW属性表单中单击【目录安全性】选项卡。
2.在【安全通信】栏中单击【服务器证书】打开Web服务器证书先导。
3.在服务器证书向导欢迎对话框中单击【下一步】。
4.选择【处理挂起的请求并安装证书】,单击【下一步】。
5.选择从CA获得(通过e_mail等方式)的证书文件(.cer文件),单击【下一步】。
6.单击【完成】结束配置。
[size=11pt]WWW服务高级配置
远程管理Web站点
远程管理Web站点就是Web管理员通过Internet远程连接到站点服务器主机,并能够使用浏览器执行全部站点配置功能的管理方式。远程管理的优势是灵活和及时。例如,当Web 管理员下班后,或者在休假之中突然意识到忘记了一相则要的管理任务,而赶回服务器主机所在的机房已经来不及了,这种情形应该如何处理呢?其实在IIS的远程管理功能的支持下,远在地球任何地方的管理员只要能够以任意方式连入Internet,就可以远程的对站点做出配置操作,远程管理所实现的功能一般并不比本地管理差。如果我们将本地的IIS管理界面称为MMC形式的ISM(Internet服务管理器),那么IIS的远程管理界面(使用浏览器得到)就被称为HTML形式的ISM。
远程管理功能的实现依赖于服务器端的远程管理Web站点。打开本地IIS的MMC窗口,在左侧的管理控制树中可以看到一个名为"管理
Web站点"的节点,这是一个在安装IIS之后,与"默认Web站点"一道自动生成的缺省站点。所谓的远程管理,实际上就是通过浏览器连到该站点上,由"管理Web站点"提供对服务器的全面配置工作。
在浏览器中请求管理Web站点,得到HTML形式的IIS管理界面。左图就是一个典型的HTML形式的ISM界面,与本地的MMC形式的IIS非常相似。如图,左侧窗格包括各种功能键,右侧窗格则包含全部的IIS管理控制树,缺省列出各个站点节点。选择管理控制树中的对象,通过右击或单击左侧管理图标按钮的方式对其进行配置。
由于需要在Internet上(我们通常认为开放的网络是不安全的)传送管理数据流,因此远程管理方式的安全性应该是管理员在规划系统时首要考虑的问题。
即使"管理Web站点"是缺省存在的,并不需要我们额外进行安装,但是要使之正常工作,必要的配置还是不可缺少的。首先是"管理Web站点"的IP的地址和TCP端口号,前者比较好理解,后者就需要我们进行一番解释。首先,"管理Web站点"通常是与默认Web站点共用同一IP地址;其次,"管理Web站点"的TCP端口号是一个四位的数字,这是在IIS安装时系统随机指定的。之所以采用上述设置,完全是因为安全性的需要,因为"管理Web站点"的IP地址时公开的(与默认Web站点相同),即使可以使用口令和SSL方式进行管理员身份验证,但是也有必要为其指定一个只有管理员自己知道的端口号,从而进一步将试图破坏者据之门外。
指定"管理Web站点"的IP地址与端口号的工作是在"管理Web站点"的WWW属性表单中进行的,如在右上图,在IIS中打开"管理Web站点"的属性表单,从【Web站点】选项卡的【IP地址】和【TCP端口】栏中修改或指定数值。注意,端口号可以由管理员进行更改,最好还保留四位。
同样出于安全性考虑,"管理Web站点"的IP限制属性在缺省情况下仅允许本地计算机进行访问(相当于禁止远程管理功能),如右下图所示。为了使"管理Web站点"能够工作,必须修改这一属性。在"管理Web站点"的WWW属性表单中单击选择【目录安全性】选项卡中单击【IP地址与域名限制】栏中的【编辑】,在如图所示的权限设置对话框中选择【授权访问】模式,或者将远程管理员所在的主机IP加入拒绝访问模式的例外中。当然,大多数管理员经常使用拨号方式进行远程管理,故无法判断其IP地址,因此还是要采用授权访问模式。
出于安全考虑最好对"管理Web站点"实施SSL 加密。此外,使用SSL加密的站点对于用户身份的验证方式的要求较低,只使用基本的验证方式(账号和密码不加密)就足够了。这是因为在SSL情形下,所有数据都是加密的,当然包括用户账号和密码信息。
为了给大家一个远程管理的感性认识,我们在此举两个例子进行说明。
远程创建网站:
1.通过IE浏览器连接到管理Web站点。
2.在住管理界面的左侧窗格中单击【新建】。
3.在【新建】向导窗口中单击【下一步】。
4.如右图,选择站点类型为【Web站点】,单击【下一步】。
5.其余内容与在IIS本地MMC窗口中进行配置的方法无异,按照向导提示进行即可。
6.最后单击【完成】结束创建工作。
7.在浏览器管理界面中选择新建站点并单击【启动】使之生效。
管理站点属性:
1.在浏览器管理界面中选择须要管理的站点,单击左侧窗格中的【属性】图标。
2.如右图所示,在此时的管理界面左侧,列出站点属性表单链接列表,相当于本地管理界面(MMC窗口)中的站点属性表单选项卡,单击之,可在右侧的内容窗格中进行相应配置工作。
3.配置完成后单击【后退】返回主管理界面。
 
 
我们一直在努力!
级别: 光盘初级
发帖
842
飞翔币
384
威望
218
飞扬币
910
信誉值
0
只看该作者 1 发表于: 2007-05-05
非常不错学习中