欢迎来到天天文库
浏览记录
ID:55561375
大小:761.00 KB
页数:20页
时间:2020-05-17
《关于AD帐户批量解锁.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、转载:关于AD帐户批量解锁,文件内容来敌人于网络AD帐户批量解锁一、测试环境:VMwareWorkstation7.1Server2003EnterpriseEditionSP1(简体中文版)AD帐户1000个(命令添加方法:for/l%iin(1,1,1000)donetusertest%iabc@123/add)(批处理添加方法:for/l%%iin(1,1,1000)donetusertest%%iabc@123/add),单百分号(%)变双百分号(%%)。二、帐户被锁的原因在AD里面都有着它的安全设置,比如说密码策略和帐户锁定策略而帐户锁
2、定策略可以设置锁定的阈值和锁定时间,多少次无效登陆后,帐户将会被锁定多久。而帐户一旦被锁,则在被锁定的时间里很多网络资源无法访问,甚至让用户无法登陆电脑。有时候人为的原因,忘记密码或键盘出错致使密码输错超过阈值后导致用户被锁,这种人为的原因引起的用户被锁数量不多,可以手动处理。另一种由病毒引起的则可能在非常短的时间里导致多个用户被锁,手动一个个解锁,很麻烦,不知道谁被锁了,下一个被锁的帐户又是谁,要一个一个的找,并且可能刚解锁不久的帐户等你解锁到一半时又被锁了,处理起来很麻烦。你流了汗水也得不到别人的认同,甚至会被哪些锁了又锁的帐户极度埋怨。因此
3、不得不把AD的安全阈值降低。三、解锁的方法有两种:1、AD用户管理界面里解锁。2、命令行解锁:netuserusername/active/active后面还有参数,yes或no,默认的参数是yes,完整的命令是:netuserusername/active:yes,注意它不但会解锁被锁的帐户,还会启用被禁用的用户,这就是后面要查找“已锁定”的原因。为了找到一种更快的方法解锁所有被锁的域用户,得先做一些测试。而AD里一个帐户有三种状态:被锁定、正常、被禁用。先把这三种信息都取下来,做一个对比。1、一个被锁的帐户信息(test10)2、正常的帐户信
4、息(test99):3、被禁用的帐户:这些信息不同之处都在netuserusername命令后的“帐户启用”一行:被锁的帐户---à已锁定正常的帐户---àYes被禁用的帐户--àNo因此只要使用netuserusername命令找出所有“已锁定”的帐户再对其解锁即可。如果一个一个用户名来输入,netuserusernamenetusertest1netusertest2netusertest3……netusertestN……netusertest1000如果帐户不多只有十来个或几十来个的时候还可以让手指头多锻炼锻炼,而当AD里面的帐户很多,几百
5、甚至上千的时候这种方法显然是不可取的。这时应该使用for命令。(for的用法很多,可以for/?来参照使用)下面来一组逐层递进的假设:1、有规则的用户名:test1、test2、test3…testN…test1000第一个假设是有规律的用户名,因为用户都有test,后面的是随着数字的增加而增加可使用这条命令:for/l%iin(1,1,1000)donetusertest%i(命令行)for/l%%iin(1,1,1000)donetusertest%%i(批处理)2、没有规则的用户名,根据名字的拼音来编定:zhangsan、lishi、…wa
6、ngwu…这里还是以test1到test1000来操作,这时不能再用for/l的参数了。而for里面有一个参数/f是对文件操作的,只要把这些用户名都放到一个文件里,就可以通过for命令来操作。而这些文件名可以使用netuser来获得。因用户较多,这里用netuser
7、more来查看。可以看到这些用户名就是除去前面的4行后(包括空白的),它分成三列,每列中间是多个空格的分隔符。For的命令非常强大,它还有另外的skip和tokens参数,可以使用这些参数把用户名都提取到一个user.txt的文件里。提取用户名的批处理(user.bat):Rem关闭
8、回显@echooffRem跳过前面4行;以空格为分隔符,提取netuser命令获得的第一列、第二列、第三列用户名for/f"skip=4tokens=1-3"%%iin('netuser')do(rem第一列用户名列表输出到user.txt文件,(>>为文件追加,如果为>则为文件覆盖)echo%%i>>user.txtrem第二列用户名列表输出到user.txt文件echo%%j>>user.txtrem第三列用户名列表输出到user.txt文件echo%%k>>user.txt)至此所有用户名输出到user.txt的文件中.用户名提取出来了,使
9、用for/f 文件操作参数.For/f%%iin(user.txt)donetuser%%i&&pause这时每个用户的信息均可显示出来
此文档下载收益归作者所有