Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Удалённая смена паролей локальных администраторов

Автор: Alex3163
Дата сообщения: 05.09.2006 09:46
Недавно столкнулись с проблемой: на многих машинах в локальной сети для локального администратора стояли разные пароли, задача была в приведении всех к общему знаменателю (паролю). Проблема решалась "в лоб", с помощью Hyena... Я предполагаю, что с помощью скрипта проще, быстрее и удобнее, проблема в том, что писать скрипты пока не умею... Может кто-нибудь сталкивался с подобным?
Автор: Young_Admin
Дата сообщения: 05.09.2006 09:52
Alex3163

net user [имя_пользователя [пароль] [параметры]] [/domain]
В батник это всё с помощью psexec'a


Автор: Clavik
Дата сообщения: 05.09.2006 09:59
Сменить всем пароль локального админа, можно прогой BuiltIn.exe, прописываешь ее в сценарий запуска в конфиге компа и все, пароль поменял.

_http://www.optimumx.com/download/BuiltIn.zip
Автор: The Bug
Дата сообщения: 05.09.2006 10:08
Тебе сюда Автоматизация администрирования
Автор: Alex3163
Дата сообщения: 05.09.2006 10:47
Спасибо, BuiltIn - то, что надо... А к скрипту я обязательно вернусь, но позже, поднабравшись знаний
Автор: Jovanotti
Дата сообщения: 05.09.2006 12:38
Кстати в номере 6 "Системного Администратора" очень хороший скрипт віложен по єтой теме ...
http://www.samag.ru/source/s063032.zip
Автор: Alex3163
Дата сообщения: 06.09.2006 10:25
Jovanotti спасибо за ссылку, это даже мощнее, чем я себе представлял...
Автор: sername
Дата сообщения: 28.05.2007 14:23
как запустить этот скрипт http://www.samag.ru/source/s063032.zip для смены паролей
Автор: VovaMozg
Дата сообщения: 29.05.2007 06:40
тут есть тоже описание:
http://www.osp.ru/win2000/2006/07/3691437
Автор: sername
Дата сообщения: 29.05.2007 10:58
Set user = GetObject (_
"WinNT://ws903b/la, user")
user. SetPassword "tw1nkl3"
user. SetInfo
эт где писать в командной строке чтоль и почему имя компа там pc903 а в скрипте ws903b? мож имя компа просто 903, на xp эт робит? вдомене машина иль локально стоит играет роль иль нет
Автор: VovaMozg
Дата сообщения: 29.05.2007 11:41
sername ну видимо опи сались.. а вообще нужно писать в vbs скрипт. На локальной машине точно работает...удалённо у меня почему-то не работает...
Автор: sername
Дата сообщения: 29.05.2007 13:11
' 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
- есть ещё такой скрипт без бутылки фиг разобратся, и как запустить и что поменять для смены пароля на одной чёт не допетрил пока
Автор: VovaMozg
Дата сообщения: 30.05.2007 09:27
есть ещё одна идея: создать на удалённой машине задай в планировщике, задача сменит пароль, и сама себя убьёт, создавать задачу тожеможно скриптом... ну ес-но при запущеном планировщике, но и тут (если он отключён) можно выкрутиться: запустить планировщик, сделать чё надо, отключить планировщик... всё удалённо....

Страницы: 1

Предыдущая тема: Callisto 821+


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.