在Windows活动目录中的主机依据合规的要求,至少每年都应当按照密码规则进行一次本地管理员的密码变更。
以下脚本是使用有域管理员权限的域账号进行批量执行来修改主机管理员密码。
$VMList = @( 'server1', 'server2', 'server3', 'server4' )
function ChangeAdminPwd( $VMName ){ $LocalPwd = '#' + ( (cmd /c "PassGen.exe -g $VMName billgate -l 20 -e 2" ) -split " " )[4] Write-Output $VMName $LocalPwd | Out-File -Append .\localpasswd.txt $Job = { net user Administrator "$( $args[0] )" } Invoke-Command -ComputerName $VMName -ScriptBlock $Job -ArgumentList $LocalPwd Write-Output $VMName is $? | Out-File -Append .\checkhost.txt }
ForEach ( $VMName in $VMlist ){ ChangeAdminPwd( $VMName ) }
|