Недавно столкнулись с проблемой: на многих машинах в локальной сети для локального администратора стояли разные пароли, задача была в приведении всех к общему знаменателю (паролю). Проблема решалась "в лоб", с помощью Hyena... Я предполагаю, что с помощью скрипта проще, быстрее и удобнее, проблема в том, что писать скрипты пока не умею... Может кто-нибудь сталкивался с подобным?
» Удалённая смена паролей локальных администраторов
Alex3163
net user [имя_пользователя [пароль] [параметры]] [/domain]
В батник это всё с помощью psexec'a
net user [имя_пользователя [пароль] [параметры]] [/domain]
В батник это всё с помощью psexec'a
Сменить всем пароль локального админа, можно прогой BuiltIn.exe, прописываешь ее в сценарий запуска в конфиге компа и все, пароль поменял.
_http://www.optimumx.com/download/BuiltIn.zip
_http://www.optimumx.com/download/BuiltIn.zip
Тебе сюда Автоматизация администрирования
Спасибо, BuiltIn - то, что надо... А к скрипту я обязательно вернусь, но позже, поднабравшись знаний
Кстати в номере 6 "Системного Администратора" очень хороший скрипт віложен по єтой теме ...
http://www.samag.ru/source/s063032.zip
http://www.samag.ru/source/s063032.zip
Jovanotti спасибо за ссылку, это даже мощнее, чем я себе представлял...
как запустить этот скрипт http://www.samag.ru/source/s063032.zip для смены паролей
тут есть тоже описание:
http://www.osp.ru/win2000/2006/07/3691437
http://www.osp.ru/win2000/2006/07/3691437
Set user = GetObject (_
"WinNT://ws903b/la, user")
user. SetPassword "tw1nkl3"
user. SetInfo
эт где писать в командной строке чтоль и почему имя компа там pc903 а в скрипте ws903b? мож имя компа просто 903, на xp эт робит? вдомене машина иль локально стоит играет роль иль нет
"WinNT://ws903b/la, user")
user. SetPassword "tw1nkl3"
user. SetInfo
эт где писать в командной строке чтоль и почему имя компа там pc903 а в скрипте ws903b? мож имя компа просто 903, на xp эт робит? вдомене машина иль локально стоит играет роль иль нет
sername ну видимо опи сались.. а вообще нужно писать в vbs скрипт. На локальной машине точно работает...удалённо у меня почему-то не работает...
' VBScript Source File -- Created with SAPIEN Technologies PrimalScript 4.0
'
' NAME: Change_Admin_Scrip.VBS
'
' AUTHOR: Коробко Иван
' DATE : 20.04.2006
'
' COMMENT:
' Сценарий меняет пароль администратора локальной учетной записи
' администратора
'==========================================================================
Dim temp,i, pwd
PWD = "987654321"
i=1
on Error Resume Next
en=Chr(13)+Chr(10)
Set objArgs=Wscript.Arguments
If Wscript.Arguments.Count=1 Then
If strcomp(ucase(objArgs(0)),UCase("-Domain"))=0 Then
mode=1
End If
If strcomp(ucase(objArgs(0)),UCase("-Group"))=0 Then
mode=2
End If
If strcomp(ucase(objArgs(0)),UCase("-PC"))=0 Then
mode=3
End If
Else
mode=0
End If
Select Case mode
Case 0
txt="ОПИСАНИЕ СКРИПТА:"+en+en+ _
" Скрипт предназначен для изменения пароля локальной учетной записи "+Chr(34)+"ADMINISTRATOR"+Chr(34)+ en+ _
"и переименования русской учетной записи "+Chr(34)+"АДМИНИСТРАТОР"+Chr(34)+ "в латинскую. Осуществляется пере-"+en+ _
"именование группы АДМИНИСТРАТОРЫ в ADMINSTRATORS. В зависимости от режима работы скрипт"+en+ _
"срабатывает на указанной рабочей станции или на всех компьютерах в текущем домене."+en+en+ _
"ПАРАМЕТРЫ КОМАНДНОЙ СТРОКИ:"+en+en+ _
" "+Chr(34)+"-PC"+Chr(34)+ " - изменение на всех включенных рабочих станциях" + en + _
" "+Chr(34)+"-Group"+Chr(34)+ " - изменение на рабочих станциях в группе" + en + _
" "+Chr(34)+"-Domain"+Chr(34)+ " - изменение на указанной рабочих станциях" + en +en + _
"ЗАМЕЧАНИЕ:"+en+en+_
" 1. Скрипт необходимо запускать с правами системного администратора"+en+ _
" 2. Группа должна иметь префикс PC$_"
WScript.Echo txt
Case 1
PWD=CStr(inputbox("Введите новый пароль локального администратора",,PWD))
Set objSysInfo = CreateObject("ADSystemInfo")
domain=cstr(objSysInfo.DomainShortName)
Set obj_comp = getobject("WinNT://" & domain)
obj_comp.filter = Array("Computer")
For Each Computer in obj_comp
pcname=cstr(Computer.Name)
make pcname
Next
Set obj_comp= Nothing
'WScript.Echo "Смена паролей в домене завершена"
Case 2
pwd=CStr(inputbox("Введите новый пароль локального администратора",,PWD))
GROUPNAME = "PC$_group"
GROUPNAME=CStr(inputbox("Введите имя группы, включая префикс",,GROUPNAME))
Set objSysInfo = CreateObject("ADSystemInfo")
domain=cstr(objSysInfo.DomainShortName)
Set obj_group= getobject("WinNT://" & domain &"/"&GROUPNAME)
For Each pc in obj_group.members
p=cstr(pc.name)
pcname=Left(p,Len(p)-1)
make pcname
Next
Set obj_group= Nothing
HTML_Report
'WScript.Echo "Смена пароля на рабочей станциях группы " +ucase(GROUPNAME)+" завершена."+en
Case 3
PWD=CStr(inputbox("Введите новый пароль локального администратора",,PWD))
PCNAME = "1230PC"
PCNAME=CStr(inputbox("Введите имя рабочей станции",,PCNAME))
make pcname
HTML_Report
' WScript.Echo "Смена пароля на рабочей станции " +ucase(pcname)+" завершена."+en+ _
End Select
WScript.Echo "END"
Function make(pcname)
Set obj_user= getobject("WinNT://" & pcname)
obj_user.filter = Array("user")
For Each user in obj_user
user_name=cstr(user.Name)
t=t+user_name+Chr(13)+Chr(10)
Next
' Rename USER (*)Администратор(*) RUS*-->*LAT
If StrComp (UCase(user_name), UCase("Администратор"))=0 Then
Set obj_user2= getobject("WinNT://" & pcname&"/Администратор,User")
Set obj_user3= getobject("WinNT://" & pcname)
Set q=obj_user3.movehere(obj_user2.adspath,"Administrator")
Set obj_user2 = Nothing
Set obj_user3 = Nothing
' Rename GROUP(*)Администраторы(*) RUS*-->*LAT
Set obj_group2= getobject("WinNT://" & pcname&"/Администраторы,Group")
Set obj_group3= getobject("WinNT://" & pcname)
Set q=obj_group3.movehere(obj_group2.adspath,"Administrators")
Set obj_group2 = Nothing
Set obj_group3 = Nothing
End If
Set obj_user4= getobject("WinNT://" & pcname&"/Administrator,User")
Call obj_user4.setpassword(PWD)
Set obj_user4 = Nothing
Set obj_user = Nothing
temp=temp+"<tr><td>"+cstr(i)+"</td><td>"+CStr(pcname)+"</td><td>"
Set obj_group4= getobject("WinNT://" & pcname&"/Administrators,Group")
For Each pc in obj_group4.members
temp=temp+CStr(pc.name)+"<br>"
Next
If Len(CStr(pc.name))>0 Then
temp=temp+"</td>"
Else
temp=temp+"<b>OFFLINE</td>"
End If
i=i+1
Set obj_group4= Nothing
End Function
Sub HTML_Report
Set FSO=CreateObject("Scripting.FileSystemObject")
html_header="<Html><Title> Членство в локальной группе "+ group_anylize+" </Title><Body>"
html_fooder="</Html>"
table_header="<Center ><Table border=1 width=60%> "+ _
"<tr><td width=50 align=center><b>№</td>"+_
"<td width=300 align=center><b>Номер РС</td>"+_
"<td width=300 align=center><b>Объект</td></tr>"
table_fooder="</Table>"
report="report"
data=html_header+table_header+title_page+temp+table_fooder+html_fooder
Set MyFile1 = fso.CreateTextFile("c:\"+report+".htm", True, TRUE)
MyFile1.WriteLine(data)
MyFile1.Close
set oIE=CreateObject("InternetExplorer.Application")
With oIE
.Left=100
.Top=100
.Height=400
.Width=800
.MenuBar=0
.Toolbar=0
.Statusbar=0
.Resizable=1
End With
oIE.Navigate "c:\"+report+".htm"
oIE.Visible=1
set oIE=Nothing
End Sub
- есть ещё такой скрипт без бутылки фиг разобратся, и как запустить и что поменять для смены пароля на одной чёт не допетрил пока
'
' NAME: Change_Admin_Scrip.VBS
'
' AUTHOR: Коробко Иван
' DATE : 20.04.2006
'
' COMMENT:
' Сценарий меняет пароль администратора локальной учетной записи
' администратора
'==========================================================================
Dim temp,i, pwd
PWD = "987654321"
i=1
on Error Resume Next
en=Chr(13)+Chr(10)
Set objArgs=Wscript.Arguments
If Wscript.Arguments.Count=1 Then
If strcomp(ucase(objArgs(0)),UCase("-Domain"))=0 Then
mode=1
End If
If strcomp(ucase(objArgs(0)),UCase("-Group"))=0 Then
mode=2
End If
If strcomp(ucase(objArgs(0)),UCase("-PC"))=0 Then
mode=3
End If
Else
mode=0
End If
Select Case mode
Case 0
txt="ОПИСАНИЕ СКРИПТА:"+en+en+ _
" Скрипт предназначен для изменения пароля локальной учетной записи "+Chr(34)+"ADMINISTRATOR"+Chr(34)+ en+ _
"и переименования русской учетной записи "+Chr(34)+"АДМИНИСТРАТОР"+Chr(34)+ "в латинскую. Осуществляется пере-"+en+ _
"именование группы АДМИНИСТРАТОРЫ в ADMINSTRATORS. В зависимости от режима работы скрипт"+en+ _
"срабатывает на указанной рабочей станции или на всех компьютерах в текущем домене."+en+en+ _
"ПАРАМЕТРЫ КОМАНДНОЙ СТРОКИ:"+en+en+ _
" "+Chr(34)+"-PC"+Chr(34)+ " - изменение на всех включенных рабочих станциях" + en + _
" "+Chr(34)+"-Group"+Chr(34)+ " - изменение на рабочих станциях в группе" + en + _
" "+Chr(34)+"-Domain"+Chr(34)+ " - изменение на указанной рабочих станциях" + en +en + _
"ЗАМЕЧАНИЕ:"+en+en+_
" 1. Скрипт необходимо запускать с правами системного администратора"+en+ _
" 2. Группа должна иметь префикс PC$_"
WScript.Echo txt
Case 1
PWD=CStr(inputbox("Введите новый пароль локального администратора",,PWD))
Set objSysInfo = CreateObject("ADSystemInfo")
domain=cstr(objSysInfo.DomainShortName)
Set obj_comp = getobject("WinNT://" & domain)
obj_comp.filter = Array("Computer")
For Each Computer in obj_comp
pcname=cstr(Computer.Name)
make pcname
Next
Set obj_comp= Nothing
'WScript.Echo "Смена паролей в домене завершена"
Case 2
pwd=CStr(inputbox("Введите новый пароль локального администратора",,PWD))
GROUPNAME = "PC$_group"
GROUPNAME=CStr(inputbox("Введите имя группы, включая префикс",,GROUPNAME))
Set objSysInfo = CreateObject("ADSystemInfo")
domain=cstr(objSysInfo.DomainShortName)
Set obj_group= getobject("WinNT://" & domain &"/"&GROUPNAME)
For Each pc in obj_group.members
p=cstr(pc.name)
pcname=Left(p,Len(p)-1)
make pcname
Next
Set obj_group= Nothing
HTML_Report
'WScript.Echo "Смена пароля на рабочей станциях группы " +ucase(GROUPNAME)+" завершена."+en
Case 3
PWD=CStr(inputbox("Введите новый пароль локального администратора",,PWD))
PCNAME = "1230PC"
PCNAME=CStr(inputbox("Введите имя рабочей станции",,PCNAME))
make pcname
HTML_Report
' WScript.Echo "Смена пароля на рабочей станции " +ucase(pcname)+" завершена."+en+ _
End Select
WScript.Echo "END"
Function make(pcname)
Set obj_user= getobject("WinNT://" & pcname)
obj_user.filter = Array("user")
For Each user in obj_user
user_name=cstr(user.Name)
t=t+user_name+Chr(13)+Chr(10)
Next
' Rename USER (*)Администратор(*) RUS*-->*LAT
If StrComp (UCase(user_name), UCase("Администратор"))=0 Then
Set obj_user2= getobject("WinNT://" & pcname&"/Администратор,User")
Set obj_user3= getobject("WinNT://" & pcname)
Set q=obj_user3.movehere(obj_user2.adspath,"Administrator")
Set obj_user2 = Nothing
Set obj_user3 = Nothing
' Rename GROUP(*)Администраторы(*) RUS*-->*LAT
Set obj_group2= getobject("WinNT://" & pcname&"/Администраторы,Group")
Set obj_group3= getobject("WinNT://" & pcname)
Set q=obj_group3.movehere(obj_group2.adspath,"Administrators")
Set obj_group2 = Nothing
Set obj_group3 = Nothing
End If
Set obj_user4= getobject("WinNT://" & pcname&"/Administrator,User")
Call obj_user4.setpassword(PWD)
Set obj_user4 = Nothing
Set obj_user = Nothing
temp=temp+"<tr><td>"+cstr(i)+"</td><td>"+CStr(pcname)+"</td><td>"
Set obj_group4= getobject("WinNT://" & pcname&"/Administrators,Group")
For Each pc in obj_group4.members
temp=temp+CStr(pc.name)+"<br>"
Next
If Len(CStr(pc.name))>0 Then
temp=temp+"</td>"
Else
temp=temp+"<b>OFFLINE</td>"
End If
i=i+1
Set obj_group4= Nothing
End Function
Sub HTML_Report
Set FSO=CreateObject("Scripting.FileSystemObject")
html_header="<Html><Title> Членство в локальной группе "+ group_anylize+" </Title><Body>"
html_fooder="</Html>"
table_header="<Center ><Table border=1 width=60%> "+ _
"<tr><td width=50 align=center><b>№</td>"+_
"<td width=300 align=center><b>Номер РС</td>"+_
"<td width=300 align=center><b>Объект</td></tr>"
table_fooder="</Table>"
report="report"
data=html_header+table_header+title_page+temp+table_fooder+html_fooder
Set MyFile1 = fso.CreateTextFile("c:\"+report+".htm", True, TRUE)
MyFile1.WriteLine(data)
MyFile1.Close
set oIE=CreateObject("InternetExplorer.Application")
With oIE
.Left=100
.Top=100
.Height=400
.Width=800
.MenuBar=0
.Toolbar=0
.Statusbar=0
.Resizable=1
End With
oIE.Navigate "c:\"+report+".htm"
oIE.Visible=1
set oIE=Nothing
End Sub
- есть ещё такой скрипт без бутылки фиг разобратся, и как запустить и что поменять для смены пароля на одной чёт не допетрил пока
есть ещё одна идея: создать на удалённой машине задай в планировщике, задача сменит пароль, и сама себя убьёт, создавать задачу тожеможно скриптом... ну ес-но при запущеном планировщике, но и тут (если он отключён) можно выкрутиться: запустить планировщик, сделать чё надо, отключить планировщик... всё удалённо....
Страницы: 1
Предыдущая тема: Callisto 821+
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.