![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/96609d5f49310761b34dc8361a831c38.jpg)
接下来在其他计算机或更改本机访问地址为自身IP后(例如58.129.1.80/1.htm)却出现了一个要求输入用户名和密码的对话框,这就是上文网友遇到的问题。(如图2)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/ce96f617ee173fa29c454f83a4e17343.jpg)
实 际上对于一个站点我们访问他应该不需要输入用户名和密码的,站点访问都应该是匿名的。就算我们在对话框中输入了相关的用户名和密码也无法通过验证,页面 会显示——“您未被授权查看该页,您不具备查看该目录或页面的权限,因为访问控制列表ACL对WEB服务器上的该资源进行了配置”。(如图3)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/e4544a83208fde0c8da61f4cdb0a1088.jpg)
(2)故障分析:众所周知在我们安装IIS组件服务后系统中会自动添加两个帐户,一个是IUSER_计算机名(internet来宾帐户),另外一个是IWAM_计算机名(启动IIS进程帐户)。(如图4)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/e9dfe31dd8c4f908b1f4650274f9df60.jpg)
平 时访问页面的权限和帐户分配都是由IUSER_计算机名(internet来宾帐户)来完成的。如果我们访问时要求输入用户名和密码的话很可能是该帐户 信息被改,例如密码被一些软件或病毒所修改,这时我们能做的就是重新卸载并再次安装IIS组件,毕竟IUSER_计算机名(internet来宾帐户)用 户密码是在安装组件过程中由系统自动生成的,我们不可能通过手工设置的方法重置。(如图5)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/c40cf39e0215da7bb71d591ea43700f3.jpg)
(3) 故障排查:如果重新安装IIS依旧不能解决问题的话,故障根源就不在于IUSER_计算机名(internet来宾帐户)了,我们应该从目录权限下 手解决问题。找到 我们要发布的页面所在文件夹(网站目录),然后在其上点右键选择“属性”,在打开的属性窗口中找到“安全”标签,如果这里没有IUSER_计算机名 (internet来宾帐户)访问权限的存在,那么问题就在于此。(如图6)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/289997a4f6589baae9295d918cc5adf9.jpg)
我们通过“添加”按钮选择用户列表中的IUSER_计算机名(internet来宾帐户),将其添加到目录权限访问设置窗口中。(如图7)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/bd32ad5d6e590075abb7aec254707f98.jpg)
接下来根据实际需要针对IUSER_计算机名(internet来宾帐户)帐户对该目录的访问权限进行设置,一般就给予读取权限即可,切忌给予太高的权限,否则访问网站用户很可能会删除页面文件或者直接上传木马程序。(如图8)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/7bee3d6f0c9591ca9099a47c86d9ef03.jpg)
除了以上几个容易设置错误造成访问IIS发布的WWW站点出现用户名与密码提示外,在IIS设置中如果配置不当也会出现上述问题。例如在IIS中“网站”上点右键选择“属性”,然后找到“目录安全性”标签,接下来点“身份验证和访问控制”。(如图9)
在身份验证方法窗口中启用匿名访问,这样才能够开启在访问WWW站点时使用IUSER_计算机名(internet来宾帐户)帐户来浏览页面信息。另外记得不要点下面的“集成Windows 身份验证”。(如图10)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/2a40c82fd8850480b6d4574d271171f7.jpg)
还 有一点要注意的就是在网站属性窗口中有一个“主目录”标签,在该标签下我们可以查看发布目录对应的权限,记得一定要合理分配好,如果不小心给予了写入和 目录浏览权限,那么你发布的站点很容易被攻击,当然这里如果没有添加读取权限,那么你的站点在别人访问时同样会出现不具备相关权限的错误提示。(如图 11)
![IIS 访问需要用户名和密码 - 【ASKD】 - 我心飞翔](http://www.tengsu.com/d/file/p/200903/b91dce26cf9145c942ee264d3797478a.jpg)
笔者同事所用机器的IIS最近出了问题,访问本地ASP文件时用“http://localhost”或“http://计算机名”可以正常访问,但如果用“http://127.0.0.1”访问,就会弹出一个对话框要求输入密码。
因为只是用IP地址不能正常进行访问,所以感觉不会是大问题,根据以往的经验,首先查看用户组中的“IUSR_计算机名”、“IWAM_计算机名”两个账号是否被禁用了,结果发现状态正常。
接下来怀疑是IIS默认网站属性中“匿名访问和身份验证控制”(在“目录安全性”选项卡中)一项被不小心禁用了,打开相应对话框后发现并未禁用。难道是匿名访问账号(IUSR_计算机名)的密码与用户组中的密码不同步了?手工进行同步设置后,发现问题依旧。
IIS出现类似问题的原因不外乎这几种啊,还能是什么原因呢?没有办法,干脆重装 IIS!几分钟后,IIS安装完毕,但一试却发现,刚才还只是用IP地址不能访问,结果现在用计算机名也不能访问了,总是提示DCOM+错误。查看系统日 志,显示为“DCOM遇到错误。登录失败: 未知的用户名或错误密码”。
为了避免重新安装系统,笔者决定查找并修复这个DCOM错误。进入控制面板的“组 件服务”中,发现“DCOM配置”上有红箭头标志,不能正常打开,看来问题就出在这儿。但是怎么处理呢?在经过多次无效的尝试后,笔者终于找到了解决的办 法:查看系统的本地服务,发现DCOM正常;然后查看其依存关系,发现依存于“Remote Procedure Call (RPC)”服务;进一步查看RPC的状态,发现状态正常;再看RPC的依存关系,现在与其相关的“Distributed Transaction Coordinator”服务是禁止的,其描述为“协调跨多个数据库、消息队列、文件系统等资源管理器的事务”。将其开启后,发现IIS马上就可以用多种 方式进行访问了。
事后得知,原来同事曾经在网上看到一篇关闭Windows不常用服务的文章,于是 就把系统中的一些服务关闭了,其中就包括“Distributed Transaction Coordinator”服务。今后大家如果想关闭不常用服务以优化系统时,可千万要小心,拿不准的还是不要关为好。
小编提示:DCOM 是Microsoft的分布式COM技术,扩展了组件对象模型(COM)技术,使其能够支持在局域网、广域网甚至Internet上不同计算机对象之间的通讯。
RPC是“远程协助”(Remote Procesdure Call)的英文简称,是微软在Windows XP系统中新增的功能,允许远程用户对本地PC进行控制,帮助本地用户解决问题。去年大名鼎鼎的冲击波病毒就是利用Windows XP的RPC漏洞进行攻击的。
另有一情况,当C盘为NTFS分区时,发布目录放在C盘也会出现这样的情况