Hoje deixo à vocês uma dica bem legal em como podemos atualizar as políticas de grupo usando o software PsExec e o comando gpupdate.
Para quem não conhece, o PsExec faz parte do Windows Sysinternals, que é um conjunto de poderosas ferramentas disponibilizadas pela Microsoft para gerenciarmos nosso ambiente Windows.
Dentre essas várias ferramentas, existe uma chamada PsExec que nos permite executar comandos em máquinas remotas.
Bom, vamos por a mão a passa:
Antes de mais nada, precisamos efetuar o download do PsExec e, descompacta-lo em uma pasta do computador. No exemplo abaixo, deixarei o executável do PsExec direto na unidade C.
Como podemos observar, a sintaxe do software é simples:
PsExec.exe computador -u USUARIO -p SENHA ARGUMENTOS
Nesse caso específico das GPOs, utilizarei este comando:
Ou seja, estarei executando um comando presente na máquina destino. Neste caso, estou efetuando o gpupdate com os argumentos:
/force = Faz com que o Windows reaplique todas as políticas de grupo. Lembrando que sem este comando, o Windows apenas aplicará as politicas de grupo que foram alteradas;
/boot = Faz com que o Windows seja reiniciado após a execução deste comando.
A saída final pode apresentar o seguinte:
Como não tive erros, me foi retornado o error code = 0.
Algumas considerações:
- Não foi necessário especificar o usuário/senha pois estava executando o prompt com privilégios elevados (Administrador);
- PsExec usa o protocolo SMB, portando é necessário ter a porta TCP 445 aberta (Isso é possível através de GPO);
- Falando em segurança, não é viável abrirmos a porta 445 em ambientes de produção, já que essa porta pode ser usada para diversos ataques;
- PsExec é um comando relativamente lento… para contar isso, também temos o comando Invoke-GPUpdate (PowerShell).
Bom, é isso… obrigado pessoal!