Como controlar um serviço do sistema com 2 GPOs?

1

SETUP - Estou executando uma pequena rede com o Windows Server 2008 R2. Eu tenho 2 GPOs executando configurações de segurança exigidas pela minha empresa. Na seguinte Hierachy:

  • GPO A (Ativado periodicamente)
  • GPO B (constantemente ligado)

O GPO A é usado para corrigir nosso sistema para que o serviço do Windows Update seja definido como Automático quando estiver definido como "Link Ativado". O GPO B está definindo as configurações de segurança exigidas pela empresa para que o Serviço do Windows Update seja desativado.

PROBLEMA - Quando o GPO é ativado e imposto, o serviço Windows Update é definido como Desabilitado. De acordo com o RSOP, ele deve ser definido como Automático, mas não é realmente iniciado ou automático, está desativado. O GPO A deve ter precedência e defini-lo como Automático.

PERGUNTA  - 2 GPOs não podem controlar 1 serviço? Pelo que entendi, o GPO é gerenciado por precedência, portanto, o GPO A deve manter o serviço automaticamente quando os GPOs são processados. Existe uma maneira de manter essas configurações iguais ou um dos GPOs precisa ter o servidor do Windows Update reconfigurado?

EDIT 1: Se eu escrevesse um script de inicialização que iniciou o serviço no Powershell, o GPO desativaria o serviço depois que ele fosse reaplicado a cada hora de qualquer maneira. Mesmo com o GPO imposto, ele também desativa o serviço também.

    
por JukEboX 13.03.2017 / 20:13

2 respostas

0

Depois de fazer alguns testes iniciais entre os serviços do sistema no GPO

Computer Configurations > Policies > Windows Settings > System Services

Descobri que essas configurações são melhores para definir preferências e configurações de segurança com os serviços baseados no Windows. Eu tenho um número de serviços do sistema com deficiência que não são serviços baseados no Windows e é aí que encontrei a resposta. A localização é

Computer Configurations > Preferences > Control Panel Settings > Services enter image description here

Lá você pode adicionar o serviço que você deseja controlar o status de.

NomeuGPOdesegurança,eutenhooStartupdefinidocomoDisabledeaAçãodoserviçodefinidacomoStopService.Issogarantiráque,seoserviçoestiversendoexecutadoforadoshoráriosdepatch,elepararáoserviçoeodesativará.

NomeuGPOdeatualização,eutenhooStartupdefinidocomoAutomaticeaAçãodoserviçodefinidacomoStartService.

Emseguida,coloqueimeuGPOdecorreçãoemumahierarquiasuperiornaDiretivadeGrupo.QuandoapolíticaAtualizarGPOéhabilitada,esseGPOsobrescreveaspolíticasaplicadasnoGPOdesegurança.

Sevocêconfigurá-lodestamaneira,poderáfazerumgpupdate/forcesimplesemqualquermáquinaeissoalteraráocontroledoserviço,dependendoseoGPOestáativadoequalémaiornahierarquia.Issoeraexatamenteoqueeuestavaprocurando.

Esteartigofoimuitoútileesperoquepossaajudarosoutros: Como usar a diretiva de grupo para controlar os serviços por Alan Burchill

    
por 23.03.2017 / 15:07
1

JukEboX,

Geralmente não escrevemos scripts para outras pessoas, mas neste caso, acho que o script é uma resposta melhor do que usar apenas a Diretiva de Grupo, estou disposto a escrever o PowerShell para qualquer outra pessoa que esteja tentando fazer a mesma coisa. / p>

Na Diretiva de Grupo, crie um novo GPO e, no GPO, tenha um novo arquivo gravado em cada computador (diretiva de computador). O arquivo do PowerShell pode estar em qualquer lugar, mas anote o local, porque você precisará dele mais tarde. No exemplo abaixo, usei o local \\ server \ share \ status.txt. Se você alterar o local ou o nome do arquivo, precisará atualizar o código.

$WindowsServiceName = "wuauserv"
$NewStatus = Get-Content "\server\share\status.txt"

function EnableWindowsService
{
    Set-Service $WindowsServiceName -StartupType Automatic
    Start-Service $WindowsServiceName
}

function DisableWindowsService
{
    Stop-Service $WindowsServiceName
    Set-Service $WindowsServiceName -StartupType Disabled
}

If ($NewStatus -like 'enabled' )
{
    EnableWindowsService
}
If ($NewStatus -like 'disabled' )
{
    DisableWindowsService
}

Depois de fazer isso, você deve criar um GPO que execute o script do PowerShell como script de logon ou script de logoff (ou você pode criar uma tarefa agendada para executar o script do PowerShell quando o evento de gatilho especificado ocorrer).

No status.txt, você deve escrever enabled ou desativado .

Quando o acionador ocorrer, o arquivo do PowerShell lerá o conteúdo do status.txt e, com base no conteúdo desse arquivo, ativará e iniciará o Serviço do Windows Update ou interromperá e desativará o Serviço do Windows Update.

Como isso é feito com o PowerShell, você também pode usar o PowerShell para executar remotamente o arquivo sob demanda. Se você usar esse método, precisará remover os dois GPOs. Você não precisará deles se usar isso, porque isso faz a mesma coisa. A única diferença é que você pode executar isso com mais freqüência do que a cada 60 minutos, pode executá-lo sob demanda e não tem GPOs conflitantes. Isso atende aos requisitos de segurança conforme você os escreveu e funciona melhor.

    
por 14.03.2017 / 17:59