您好,登錄后才能下訂單哦!
日常運維多臺服務器,每季度要修改一次密碼,非常麻煩,現做一個VBS腳本,計劃任務設置每季度第一天三點定時運行,則可解決該問題,具體實現腳本如下:
autochg_pwd.vbs
ystr=year(Now)
mstr=Month(Now)
if len(mstr)<2 then mstr="0"&mstr
dstr=day(Now)
if mstr="01" then mstr="!"
if mstr="02" then mstr="!"
if mstr="03" then mstr="!"
if mstr="04" then mstr="@"
if mstr="05" then mstr="@"
if mstr="06" then mstr="@"
if mstr="07" then mstr="#"
if mstr="08" then mstr="#"
if mstr="09" then mstr="#"
if mstr="10" then mstr="$"
if mstr="11" then mstr="$"
if mstr="12" then mstr="$"
pwdstr="testpwd"&ystr&mstr
strComputer="."
Set objUser=GetObject("WinNT://" & strComputer & "/Administrator")
objUser.SetPassword pwdstr
objUser.SetInfo
Dim OperationReGIStry
Set OperationRegistry=WScript.CreateObject("WScript.Shell")
Default=OperationRegistry.RegRead("HKLM\")
OperationRegistry.RegWrite "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\DefaultPassword",pwdstr
具體部分腳本需要根據實際情況修改,以上是在windows2012上測試通過(2012修改密碼不影響計劃任務),實際在windows2003上要注意,由于自動修改密碼會導致計劃任務異常,不一定適用。
不過以上方法存在一定安全隱患,密碼不能手工設置,如需手工設置,可參考如下腳本:
newchg_pwd.vbs:
Set objArgs = WScript. Arguments
For x = 0 to objArgs.Count - 1
WScript.Echo objArgs(x)
Next
strComputer="."
Set objUser=GetObject("WinNT://" & strComputer & "/Administrator")
objUser.SetPassword objArgs(0)
objUser.SetInfo
Dim OperationReGIStry
Set OperationRegistry=WScript.CreateObject("WScript.Shell")
Default=OperationRegistry.RegRead("HKLM\")
OperationRegistry.RegWrite "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\DefaultPassword",objArgs(0)
執行時候只需運行命令:cscript newchg_pwd.vbs newpasswd。此方法較為安全,手工操作,配合自動化代理執行,就可以做到自由設置密碼。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。