none
Alterar senha de administrador RRS feed

  • Pergunta

  • Boa tarde estou precisando de uma solução via gpo para alterar a senha de administrador local de umas 800 máquinas, eu coloquei na gpo o script abaixo, e funcionou beleza, porém o usuário tem que ser administrador local da máquina para funcionar, o problema é esse, eu preciso de uma solução para esse script que não precise do usuário ser administrador.

     

    strComputer = "."

    Set colAccounts = GetObject("WinNT://" & strComputer & ",computer")

    Set objUser = GetObject("WinNT://" & strComputer & "/Administrador, user")

    objUser.SetPassword "senha de administrador"

    objUser.SetInfo

    sexta-feira, 22 de julho de 2011 17:37

Respostas

  • Mas o usuário tem permissão de leitura neste seu arquivo?

    Não deveria e nem precisa (o usuário ter acesso a este arquivo), dê permissão para "Domain Computers"

     

    Mas vai o script modificado:

    strComputer = "."
    
    strSenha = wscript.arguments(0)
     
    Set colAccounts = GetObject("WinNT://" & strComputer & ",computer")
     
    Set objUser = GetObject("WinNT://" & strComputer & "/administrador")
     
    objUser.SetPassword strSenha
     
    objUser.SetInfo
    

    E coloque a senha no parametro da GPO do seu script

     

    Não testei.


    Fábio de Paula Junior

    • Editado Fábio JrModerator quinta-feira, 25 de agosto de 2011 15:59 adicionada imagem
    • Sugerido como Resposta Fábio JrModerator quinta-feira, 25 de agosto de 2011 16:00
    • Marcado como Resposta Ricardotbm sexta-feira, 26 de agosto de 2011 19:38
    quinta-feira, 25 de agosto de 2011 15:55
    Moderador
  • Ricardo...
    Depois de muitos testes acho que eu consegui encontrar uma solução para o seu problema... :)
    .
    @echo off
    cd c:\windows\system32
    runas /user:edson.fagundes@leonardi.local "net user Administrador Xnc08" | sanur P@ssw0rd
    exit
    


    Ai todo mundo vai se perguntar mas oque é esse sanur é um arquivinho de 9k que deve ser copiado para todas as maquinas em c:\windows\system32

    Acho que irei utilizar essa solução aqui na minha empresa tambem, veja se funciona por favor.
    Abraços.
     

    Edson Matias Fagundes Junior (Nioks)




    terça-feira, 9 de agosto de 2011 20:51

Todas as Respostas

  • Ao invés de colocar no script de Login coloque no script de startup (inicialização) assim ele vai roda com a conta SYSTEM e vai alterar a senha, o problema é que roda só quando Liga\reinicia a estação.

    Observe também que a GPO deve estar linkada em um OU acima de onde estão as contas de máquina.


    Fábio de Paula Junior

    sexta-feira, 22 de julho de 2011 18:04
    Moderador
  • você não teria alguma solução para esse script para ser colocar no script de Login ?

    quarta-feira, 27 de julho de 2011 13:13
  • Soluções existem algumas mas vai da sua disposição para aplica-las...

    1 - Pode utilizar uma ferramenta chamada PsExec e rodar pontualmente nas maquinas por exemplo uma vez ao mes, essa voce gera a lista de maquinas no AD e manda rodar seu script com Administrado...

    Você deve baixar o PsExec em:

    http://technet.microsoft.com/en-us/sysinternals/bb897553

    O comando é algo assim
    Abra o prompt na pasta onde esta o PsExec.exe

    psexec @lista_pc.txt -u woodgrovebank\administrador -p Pa$$w0rd -c -d \\servidor\sys\inv.bat

     

    2- Pode utilizar o Runas e rodar e cada maquina individualmente... nao indico da muito trabalho.

     

    3 -  A OU dos Computadores eu colocaria no Startup como o amigo Fabio Jr indicou}
          -  Computer Configuration, Windows Settings, Scripts (Startup/Shutdown)

    Abraços

    Jr


    EFagundes
    quarta-feira, 27 de julho de 2011 13:47
  • eu ja cheguei a fazer um teste com ele a um tempo atraz não gostei é interessante para poucas máquina.  Eu gostei desse script que te passei mas não consigo colocar ele para rodar com runas, não entendo muito de scripts mas o que você puder me ajudar agradesso, vou te passar o script que coloquei se tem algo errado. Obrigado

     

     

     


    User = "ipasgo\usuario_do Runas"
    Pass = "senha_do_ruas"

    set WshShell = CreateObject("WScript.Shell")
    WshShell.Run "runas /user:" & User & " " & CHR(34) & Path & CHR(34),7
    WScript.Sleep 2000
    WshShell.AppActivate "C:\WINDOWS\System32\runas.exe"
    WScript.Sleep 1000
    WshShell.SendKeys Pass
    WScript.Sleep 1000
    WshShell.SendKeys "{ENTER}"
    WScript.Sleep 3000
    WshShell.SendKeys "Exit~"

    strComputer = "."
    Set colAccounts = GetObject("WinNT://" & strComputer & ",computer")
    Set objUser = GetObject("WinNT://" & strComputer & "/Administrador, user")
    objUser.SetPassword "senha de admin local"
    objUser.SetInfo



    quarta-feira, 27 de julho de 2011 18:15
  • Ricardo Boa tarde, eu nunca utilizei o RunAs em VBS...

    eu normalmente crio um atalho do runas que esta dentro da system32 no desktop

    depois altero o atalho da seguinte forma

    C:\Windows\System32\runas.exe /profile /savecred /user:mydomain\admin "mmc %windir%\system32\dsa.msc"

    Por isso falei que nao era viavel...

    Quanto ao seu script vou fazer alguns testes depois.

    Abraços


    EFagundes
    quarta-feira, 27 de julho de 2011 18:56
  • Cara encontrei uma solução!!!

    Não sei se é a melhor mas ai vai... crie uma arquivo alterarsenha.bat com o codigo a seguir

    net user Administrador Pa$$w0rd
    

    E depois crie um arquivo runas.vbs esse ira ficar no logon do usuário ou onde voce quiser mas é ruim pois a senha fica dentro do arquivo isso nao é bom

    mas é solução.

    User = "woodgrouvebank\administrador"
     Pass = "MinhaSENHA"
     Path = "CAminho do BAT\alterasenha.bat"
    set WshShell = CreateObject("WScript.Shell")
     WshShell.Run "runas /user:" & User & " " & CHR(34) & Path & CHR(34),7
     WScript.Sleep 2000
     WScript.echo "insertGroup: ok "
     WshShell.AppActivate "C:\WINDOWS\System32\runas.exe"
     WScript.Sleep 1000
     WshShell.SendKeys Pass
     WScript.Sleep 1000
     WshShell.SendKeys "{ENTER}"
     WScript.Sleep 3000
     WshShell.SendKeys "Exit~"

    Abraços espero ter ajudado.

     


    EFagundes
    sexta-feira, 29 de julho de 2011 17:47
  • eu estava vendo no forum uma maneira de criptografar, tem alguns que transforma vbs em.exe essa pra mim não sesrve e tem também uma solução da microsoft que transforma vsb em vbe mas me parece que ja tem como discriptografar facilmente, aí também não resolve não sei mais o que fazer com isso eu tenho um problema na minha rede, meus scrips fica em pasta no servidor compartilhada contendo os meus scripts, se o usuário descobrir o caminho ele acesso todos eles, somente de leitura mas tem.
    sexta-feira, 29 de julho de 2011 19:25
  • Você tem que atualizar toda fez que fizer logon ou pode ser sob demanda
    EFagundes
    sábado, 30 de julho de 2011 00:59
  • Bom Dia, quando o usuário loga na rede aparecer a tela de prompt mostrando o  script sendo executado você sabe de algum esquema pra não deixar o usuário maximizar e  fechar essa tela, Obrigado

    quinta-feira, 4 de agosto de 2011 14:51
  • O meu é o 2003 server e os clientes são Xp   eu achei essa configuração que você disse mas foi em outro caminho "user configuration/administrative templates/system/scripts e clica em Run legacy logon scripts hidden" essa opção fala que se você ativar essa configuração, o Windows 2000 não exibe logon scrips escritos para o Windows NT4.0 e anteriores  eu ativei e não funcionou, você sabe me dizer se funciona no XP? Obrigado


    quinta-feira, 4 de agosto de 2011 18:54
  • Ricardo mandei errado nao é Enable e sim Disable...
    Desculpe
    e isso mesmo é dentro de Scripts...

    Esta assim no meu server olhe o seu ai...

    Em computer  - Executar Script de Inicialização Visivel -  Esta assim no meu 2003 pt-br - (DISABLE) 

    Scripts de inicialização são arquivos em lotes de instruções que são executados antes de o usuário ser convidado a fazer logon. Por padrão, o sistema não exibe as instruções no script de inicialização.

    Se você ativar esta configuração, o sistema exibe cada instrução no script de inicialização à medida que ele é executado. As instruções aparecem em uma janela de comando. Esta configuração destina-se a usuários avançados.

    Se você desativar esta configuração ou não a definir, as instruções são suprimidas.

    Em user é executar script de logon visiveis - (DISABLE)

    Exibe as instruções em scripts de logoff à medida que eles são executados.

    Scripts de logoff são arquivos de instruções em lotes que são executados quando o usuário faz logoff. Por padrão, o sistema não exibe as instruções no script de logoff.

    Se você ativar esta configuração, o sistema exibe cada instrução no script de logoff à medida que ele é executado. As instruções aparecem em uma janela de comando. Esta configuração destina-se a usuários avançados.

    Se você desativar esta configuração ou não a definir, as instruções são suprimidas.


    Edson Matias Fagundes Junior (Nioks)
    quinta-feira, 4 de agosto de 2011 19:28
  • Rs, pois é  o meu está "Not Configured" que é a mesma coisa de desabled  mas mesmo assim eu coloquei desabled e ainda está aparecendo,rs.

    Eu estou colocando os scripts em script de logon, e não de startup, eu quero ocutar os scripts de logon os que aparecem depois que o cliente loga




    quinta-feira, 4 de agosto de 2011 20:13
  • Tente criar um VBS com esse script chamando seu bat

     

    Dim objShell

    Set objShell = CreateObject("WScript.Shell")
    objShell.Run "\\server\share\arquivo.bat", 0, True

    Abraços


    Edson Matias Fagundes Junior (Nioks)
    quinta-feira, 4 de agosto de 2011 20:24
  • Ricardo estive fazendo alguns testes pelo que entendi o problema é que esse codigo

    User = "woodgrouvebank\administrador"
     Pass = "MinhaSENHA"
     Path = "CAminho do BAT\alterasenha.bat"
    set WshShell = CreateObject("WScript.Shell")
     WshShell.Run "runas /user:" & User & " " & CHR(34) & Path & CHR(34),7
     WScript.Sleep 2000
     WScript.echo "insertGroup: ok "
     WshShell.AppActivate "C:\WINDOWS\System32\runas.exe"
     WScript.Sleep 1000
     WshShell.SendKeys Pass
     WScript.Sleep 1000
     WshShell.SendKeys "{ENTER}"
     WScript.Sleep 3000
     WshShell.SendKeys "Exit~"
    Abraços espero ter ajudado. 
    

    ele abre uma janela e nao da para ocultar mesmo voce definindo no AD...

    Agora a questão é como montar esse script para ele nao abrir a janela... acho dificil pois ele meio que simula os passos e os clicks...
    Vou ver se consigo algo aqui mas pelo que percebi é isso...

    Abraços


    Edson Matias Fagundes Junior (Nioks)
    domingo, 7 de agosto de 2011 19:36
  • Edson se você conseguir eu agradeço,  muito obrigado

    segunda-feira, 8 de agosto de 2011 15:11
  • Ricardo,

    Acredito que não é necessario atualizar a senha do admin local cada vez que sua maquina é ligada...

    Você já pensou que isso pode trazer lentidão no start da maquinas, eu realmente nao sei como resolver a questão de aparecer a janela ela aparece devido a funçao do runas via Vbscript tentei algumas coisas aqui e nada funcionou.

    Acredito que voce pode rodar por demanda utilizando o psexec, ou outra ferramenta do tipo.

    Ou deixar apenas em um script o comando de alterar a senha assim ele ira abrir e fechar de forma bem rapida...
    Colocando os outros comando de forma paralela em um outro script.

     

    Abraços

     


    Edson Matias Fagundes Junior (Nioks)
    segunda-feira, 8 de agosto de 2011 21:22
  • ja usei ele não gostei acho muito lento e ainda tem o problema se a máquina estiver desligada, pode deixar, vou pesquizar mais um pouco. Agradeço
    terça-feira, 9 de agosto de 2011 18:40
  • Ricardo...
    Depois de muitos testes acho que eu consegui encontrar uma solução para o seu problema... :)
    .
    @echo off
    cd c:\windows\system32
    runas /user:edson.fagundes@leonardi.local "net user Administrador Xnc08" | sanur P@ssw0rd
    exit
    


    Ai todo mundo vai se perguntar mas oque é esse sanur é um arquivinho de 9k que deve ser copiado para todas as maquinas em c:\windows\system32

    Acho que irei utilizar essa solução aqui na minha empresa tambem, veja se funciona por favor.
    Abraços.
     

    Edson Matias Fagundes Junior (Nioks)




    terça-feira, 9 de agosto de 2011 20:51
  • ok, Vou testar. Valeu pela força, Obrigado
    quarta-feira, 10 de agosto de 2011 12:39
  •  Bom Dia é eu novamente, eu tenho um script para alterar a senha de administrador de umas 500 máquinas com o script abaixo

     

    strComputer = "."

    Set colAccounts = GetObject("WinNT://" & strComputer & ",computer")

    Set objUser = GetObject("WinNT://" & strComputer & "/administrador")

    objUser.SetPassword "senha"

    objUser.SetInfo

     

    estou colocando ele via gpo no startup como você disse, quando iniciar o Windows ele altera a senha. Até aí tudo bem, funcionou beleza, o problema é que se o usuário for  esperto ele acha meu arquivo e abre ele e ver a senha, por que ele está em uma pasta compartilhada, já verifiquei sobre criptografar esse vbs e também não tive interesse por que existe programas para quebrar essa criptografia e ler a senha. O que estou querendo é executar ele passando os parâmetros no "script parameters" do startup um amigo meu disse que tem como passar esses parametros para que a senha não fique esposta no arquivo. Agradeço.

     

    quinta-feira, 25 de agosto de 2011 13:31
  • Mas o usuário tem permissão de leitura neste seu arquivo?

    Não deveria e nem precisa (o usuário ter acesso a este arquivo), dê permissão para "Domain Computers"

     

    Mas vai o script modificado:

    strComputer = "."
    
    strSenha = wscript.arguments(0)
     
    Set colAccounts = GetObject("WinNT://" & strComputer & ",computer")
     
    Set objUser = GetObject("WinNT://" & strComputer & "/administrador")
     
    objUser.SetPassword strSenha
     
    objUser.SetInfo
    

    E coloque a senha no parametro da GPO do seu script

     

    Não testei.


    Fábio de Paula Junior

    • Editado Fábio JrModerator quinta-feira, 25 de agosto de 2011 15:59 adicionada imagem
    • Sugerido como Resposta Fábio JrModerator quinta-feira, 25 de agosto de 2011 16:00
    • Marcado como Resposta Ricardotbm sexta-feira, 26 de agosto de 2011 19:38
    quinta-feira, 25 de agosto de 2011 15:55
    Moderador
  • Ricardo, no sanur você pode referenciar um arquivo...

    Como você esta executando com um usuário que possui acessos deixe apenas esse usuário com acesso ao arquivo alterei um pouco o script veja se lhe atende.

     

    @echo Off
    cd c:\windows\system32
    runas /u:edson.fagundes@leonardi.local "net user Administrador Xbc04" | sanur /i h:\servidor\pass.txt
    exit

    Veja se isso lhe atende...
    * Cara eu estive testando e nada feito... o user tem que ter acesso de leitura ao arquivo. 

    Já o comando script parameters:

    Em Parâmetros de Script, digite qualquer parâmetro desejado, da mesma maneira que faria na linha de comando. Por exemplo, se o script incluir os parâmetros //logo (exibir faixa) e //I (modo interativo), digite //logo //I.

    Abraços

     


    Edson Matias Fagundes Junior - (Nioks)
    MCP, MCTS: 2008, MCTS:MBS
    Se a resposta for valida por favor vote como útil.

    quinta-feira, 25 de agosto de 2011 19:14
  • Ola Ricardo,

    Andando pelos foruns a procura de uma forma de lhe ajudar, encontrei a seguinte frase "Toda vez que encontro alguem querendo usar o sanur ou algo do tipo, em 99,9% das vezes esta tentando fazer algo ou no local errado ou com o metodo errado."

    Quando li achei besteira mas pesquisando mais um pouco, a MS tem a solução para o seu problema, o win200 já vinha com essa solução, no Startup.

    http://technet.microsoft.com/pt-br/library/bb742536(en-us).aspx

    Amigo realemte acho perigoso você deixar a senha em um arquivo, por isso pesquisei mais.

    Já no 2008 você tem a parte de preferencias lá você tambem pode definir a senha:

    Start the Group Policy snap-in, expand Computer Configuration, expand Preferences, click Control Panel, and then right-click Local Users and Groups. From the menu select New - Local User. Select Update as the action, type Administrator into the User name text box, then type the new password into the Password text box, confirming the password in Confirm Password text box. Press OK.

    E voce tambem pode fazer via script criptografado usando o Microsoft script encrypter.

    O script é igual ao que você já possui.

    O melhor local para colocar esse script é no startup e não no login, como o nosso amigo Fabio descreveu acima.

    Start the Group Policy snap-in, expand Computer Configuration, expand Windows Settings, click Scripts (Startup/Shutdown), and then in the right pane, add a script.

    Ricardo espero siceramente que você tenha entendido que não é por má vontade mas sim por limitações do sistema.

    Por que fazer a roda se ela já existe!!!

    Abraços 


    Edson Matias Fagundes Junior - (Nioks)
    MCP, MCTS: 2008, MCTS:MBS
    Se a resposta for valida por favor vote como útil.
    sexta-feira, 26 de agosto de 2011 12:09
  • funcionou blz, Muito Obrigado.
    sexta-feira, 26 de agosto de 2011 14:18
  • Ricardo Qual das Soluções lhe ajudaram, por favor pontue para ajudar no sistema de busca.

     

    Grato


    Edson Matias Fagundes Junior - (Nioks)
    MCP, MCTS: 2008, MCTS:MBS
    Se a resposta for valida por favor vote como útil.
    sexta-feira, 26 de agosto de 2011 16:44
  • Eu usava esses script nas minhas máquinas com windows 7, e funcionava 100%. Agora depois que coloquei win10 nas máquinas, o script não consegue mais alterar a senha. ele está  rodando, mas não altera nas máquinas.
    quarta-feira, 18 de setembro de 2019 18:49
  • Bom dia.

    Seguinte, aleta que lhe dou cara, nunca deixa o usuário administrador local habilitado e com a mesma senha em todos os computadores. Se você pegar um vírus, o mesmo vai sair infetando todos os seus computadores por ter o usuário administrador habilitado é com a mesma senha.

    Recomendo fazer isso https://www.youtube.com/watch?v=b2lyw5GtuOU


    Att. Gabriel Luiz - Conhecimento só é valido quando compartilhado! - www.gabrielluiz.com

    quinta-feira, 19 de setembro de 2019 13:05