首页 > 代码库 > Windows Server 2008R2使用web方式修改域账户密码
Windows Server 2008R2使用web方式修改域账户密码
Windows Server 2008R2使用web方式修改域账户密码
1. 前言
Windows2003IIS中自带修改域用户密码的ASP网页文件iisadmpwd模块,可以启用该模块通过Web方式修改密码,但是IIS7也即2008系统中不在自带iisadmpwd功能模块,所以需要移植2003的iisadmpwd模块到2008中使用;
2. Iisadmpwd文件准备
1、 首先找一台Server2003系统,确认已安装好Internet信息服务(IIs)。
2、 然后进入Server2003系统C:\WINDOWS\system32\inetsrv\iisadmpwd目录,复制 iisadmpwd该目录及子文件到需要安装iisadmpwd功能的Server2008系统中C:\Windows\SysWOW64\inetsrv目录下;
3. Web服务器(IIS)/ActiveDirectory证书服务安装
注:此处以AD服务器为例演示,经测试必须在ad上执行,否则一直报错 错误:缺少对象;
1、 以管理员身份登录服务器,依次单击“开始>管理工具>服务器管理器>角色>添加角色>勾选Web服务器(iis)>勾选ActiveDirectory证书服务”
2、 安装证书服务,勾选“证书颁发机构、证书颁发机构Web注册、联机相应程序”;
3、 安装Web(iis)服务,并确认勾选了asp、IIS6脚本工具;
4. 注册Iisadmpwd目录下的IISpwchg.dll文件:
1、 以管理员身份运行命令提示符,输入下面的命令,然后回车;
regsvr32 C:\Windows\SysWOW64\inetsrv\iisadmpwd\iispwchg.dll
5. 配置PasswordChangeFlags属性
1、 以管理员身份运行命令提示符,切换到C:\Inetpub\Adminscripts目录,输入下面命令,然后回车;
{
注:设置PasswordChangeFlags属性的值,你可以组合使用
0:默认值,表示用ssl连接来更改密码
1:允许无安全的端口来更改密码(针对于ssl功能被禁用时使用);
2:禁止更改密码
4:禁止密码过期提示
6. 配置HTTPS
注:若在Exchange服务器上操作可以忽略此步骤;
1、 单击“开始>管理工具>Internet信息服务(iis)管理器”打开iis管理器;
2、 点击服务器名,在右侧双击“服务器证书”;
3、 点击右侧“”,在弹出的“创建自签名证书页面”输入自定义名称然后点击“确定”;
4、 切换到默认网站“DefaultWebSite”点击右侧“绑定”在弹出的“网站绑定”页面,打击“添加”,在“添加网站绑定”对话框中类型选择https,ssl证书选择刚创建好的iisadmpwd,后单击“确定”应用;
7. 发布IISadmpwd
1、 右键默认网站“DefaultWebSite”选择“添加应用程序”;
2、 在添加应用程序对话框中,别名填写“iisadmpwd”物理路径填写“C:\Windows\SysWOW64\inetsrv\iisadmpwd
”完成后单击确定;
3、 在iis管理器中切换到刚创建的应用程序“iisadmpwd”,右侧双击“默认文档”;
4、 单击右侧“添加”输入“aexp2.asp”单击确定;
5、 返回到应用程序“iisadmpwd”双击右侧“SSL设置”;
6、 勾选“要求ssl”单击右侧“应用”;
8. WEB页面修改密码
1、 在浏览其中输入https://127.0.0.1/iisadmpwd/回车,并输入用户名密码及新密码测试修改密码;
2、 若有如下提示“密码太短,或不满足密码唯一性限制”,则为不满足域策略中的相关要,重新输入满足要求的密码,或者修改组策略配额,修改方法如下:打开组策略管理器更改默认域策略的密码策略(如下修改);
3、 修改完成后,在命令行中执行“gpupdate /force”刷新组策略使其立即生效;
4、 重新在浏览器中输入https://127.0.0.1/iisadmpwd回车,并输入测试用户的旧密码及新密码,单击确定;
5、 修改成功;
9. 附:通过80端口修改密码
以上步骤略显繁琐,因为需要安装证书服务,通过绑定证书并启用https访问,个人认为没有该必要,因为启用https后客户端没有做相应是证书设置还是达不到安全性,如果仅在内网使用,可以修改aexp2.asp中的代码“<form method="POST" action="https:”将https为http, 配置PasswordChangeFlags的属性为cscript.exe adsutil.vbs set w3svc/passwordchangeflags 1,则可以不需安装证书服务,不需要启用https;直接通过“http://127.0.0.1/iisadmpwd”;
10. 附:通过8080端口访问web页面修改密码
在网络环境中,可能由于为了实现web修改密码页面的隐蔽性,或者防火墙、路由器做外网端口的映射需求,需要实现非80或者443访问页面,比如实现使用http协议的8080端口访问页面(https协议修改端口与此雷同);
登录web页面所在服务器,打开iis管理器,选择默认网站,单击右侧的“绑定”,选择需要修改的端口,例如80,单击右侧“编辑”按钮,在弹出的对话框中输入目标端口比如“8080”单击“确定”退出;
使用记事本或者代码编辑工具,打开C:\Windows\SysWOW64\inetsrv\iisadmpwd\aexp2.asp,将代码“("SERVER_NAME"))%>/iisadmpwd/achg.asp?”修改为“("SERVER_NAME"))%>:8080/iisadmpwd/achg.asp?”;
参考文档:
http://www.educity.cn/linux/1150277.html
http://de.cel.blog.163.com/blog/static/51451236201312205443960/
http://support.microsoft.com/kb/894825/zh-cn
http://support.microsoft.com/kb/315579/zh-cn
http://blog.csdn.net/wyfde123/article/details/6036975
http://blog.csdn.net/iyu/article/details/257003
http://hi.baidu.com/dknxbcxbxxbkowd/item/c7b77ed72abc3450d63aae80