IIS发布站点访问时要密码的故障

时间:2016-04-05
随Windows Server 2008一同发布的IIS 7.0比其上一代版本IIS 6要强大不少,但其中也存在着各种各样的改进。这些改进有的是对安全方面做出规定,有的是对原有的操作习惯进行某种更替。我们发现很多时候网友们会遇到一些奇怪的问题,例如IIS发布站点在访问的时候要密码的故障。下面我们列举这样一个常见例子来进行讲解。

网友提问:

    我是一个小公司的网络管理员,刚刚接触这个职位,最近公司要建立自己的企业网站,我们有自己的服务器,使用的操作系统是windows 2003,但是我用IIS发布后却发现一个问题,那就是当我发布站点后用IE浏览器访问时总是出现一个要我输入用户名和密码的对话窗口,即使输入正确的Windows帐户也无法访问,而且我希望实现的是任何一个计算机都可以随意通过IP地址来访问站点,访问时不用输入密码。通过网络也搜索到一些解决方案,照着设置后问题还是没有解决。希望IT168的专家能够帮助我,急切等待回复。

IT168解答:

    在Windows 2003下的IIS确实存在这个问题,这是因为Windows 2003在目录安全方面进行了改进。首先我们来分析下这位网友遇到的问题。

    (1)故障描述:
    在IIS下发布了某个站点某些页面文件,我们姑且设定为1.htm,通过IIS里面的浏览功能查看页面能够顺利访问里面的内容。同时我们从访问地址处看到信息为http://localhost/1.htm。(如图1)

    接下来在其他计算机或更改本机访问地址为自身IP后(例如58.129.1.80/1.htm)却出现了一个要求输入用户名和密码的对话框,这就是上文网友遇到的问题。(如图2)

    实际上对于一个站点我们访问他应该不需要输入用户名和密码的,站点访问都应该是匿名的。就算我们在对话框中输入了相关的用户名和密码也无法通过验证,页面会显示——“您未被授权查看该页,您不具备查看该目录或页面的权限,因为访问控制列表ACL对WEB服务器上的该资源进行了配置”。(如图3)

#p#副标题#e#

(2)故障分析:
    众所周知在我们安装IIS组件服务后系统中会自动添加两个帐户,一个是IUSER_计算机名(internet来宾帐户),另外一个是IWAM_计算机名(启动IIS进程帐户)。(如图4)

 

    平时访问页面的权限和帐户分配都是由IUSER_计算机名(internet来宾帐户)来完成的。如果我们访问时要求输入用户名和密码的话很可能是该帐户信息被改,例如密码被一些软件或病毒所修改,这时我们能做的就是重新卸载并再次安装IIS组件,毕竟IUSER_计算机名(internet来宾帐户)用户密码是在安装组件过程中由系统自动生成的,我们不可能通过手工设置的方法重置。(如图5)

     

    (3)故障排查:
    如果重新安装IIS依旧不能解决问题的话,故障根源就不在于IUSER_计算机名(internet来宾帐户)了,我们应该从目录权限下手解决问题。找到我们要发布的页面所在文件夹(网站目录),然后在其上点右键选择“属性”,在打开的属性窗口中找到“安全”标签,如果这里没有IUSER_计算机名(internet来宾帐户)访问权限的存在,那么问题就在于此。(如图6)

    我们通过“添加”按钮选择用户列表中的IUSER_计算机名(internet来宾帐户),将其添加到目录权限访问设置窗口中。(如图7)

    接下来根据实际需要针对IUSER_计算机名(internet来宾帐户)帐户对该目录的访问权限进行设置,一般就给予读取权限即可,切忌给予太高的权限,否则访问网站用户很可能会删除页面文件或者直接上传木马程序。(如图8)

    添加相应权限后就可以有效的解决访问IIS发布站点总是弹出用户名和密码验证窗口的故障。总的来说就是在我们要发布的站点目录上设置相应的访问权限,其NTFS权限中对应的IUSR_计算机名为读取权限。如果默认站点目录在c:\inetpub\wwwroot下则不会涉及到此问题,这也是为什么大部分使用默认站点对外发布不会出现此问题的原因。

#p#副标题#e#

(4)几点补充:
    除了以上几个容易设置错误造成访问IIS发布的WWW站点出现用户名与密码提示外,在IIS设置中如果配置不当也会出现上述问题。例如在IIS中“网站”上点右键选择“属性”,然后找到“目录安全性”标签,接下来点“身份验证和访问控制”。(如图9)

    在身份验证方法窗口中启用匿名访问,这样才能够开启在访问WWW站点时使用IUSER_计算机名(internet来宾帐户)帐户来浏览页面信息。另外记得不要点下面的“集成Windows 身份验证”。(如图10)

    还有一点要注意的就是在网站属性窗口中有一个“主目录”标签,在该标签下我们可以查看发布目录对应的权限,记得一定要合理分配好,如果不小心给予了写入和目录浏览权限,那么你发布的站点很容易被攻击,当然这里如果没有添加读取权限,那么你的站点在别人访问时同样会出现不具备相关权限的错误提示。(如图11)

上一条:用WampServer搭建php运行环境教程 下一条:Microsoft JET Database Engine 错误 '80004005' 错误解决办法

相关文章

最新文章