Nagios verifica se há o wuauserv no Windows Server 2008+

3

No Windows Server 2008+, o wuauserv não é mais um serviço executado todo o tempo e, em vez disso, é executado como uma tarefa agendada. Não tenho certeza do comportamento exato de como a tarefa agendada é criada, pois parece que a agenda é gerada e editada por outro serviço. Antes disso, nós configuramos nagios para apenas verificar o serviço em execução para garantir que ele estava aceitando as atualizações.

A minha pergunta é: como é que um utiliza o nagios para rastrear a execução / execução adequada do serviço wuauserv no Windows Server 2008+ para garantir que está a aceitar atualizações?

    
por Mechaflash 07.06.2014 / 09:00

1 resposta

4

Parece que há um número de plugins no Nagios Exchange para verificar as atualizações disponíveis - por exemplo, este . Eu usei este no passado, eu acredito . Isso não é exatamente o que você está perguntando; Esses são se existem atualizações, e você está perguntando se o sistema está ou não verificando atualizações.

O que pode estar mais perto do que você está procurando é algo como este script do PowerShell:

$lastcheck = Get-ItemProperty -Path Registry::"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\Results\Detect" 

$lastdate=[datetime]$lastcheck.LastSuccessTime
$currdate = (Get-Date)
$status = new-timespan -start $lastdate -end $currdate


If ($status.days -eq 0 -and $lastcheck.LastError -eq 0) {
    Write-Host "OK:  Wuauserv last ran $lastdate."
    $exitcode = $status.Days
}
elseif ($status.days -eq 1 -and $lastcheck.LastError -eq 0) {
    Write-Host "WARNING:  Wuauserv last ran $lastdate."
    $exitcode = $status.Days
} else {
    Write-Host "CRITICAL:  Wuauserv last ran $lastdate."
    $exitcode = 2
}
exit $exitcode

(Você gostaria de verificar se a data estava nas últimas 24 horas (o intervalo padrão é 22 horas) e se o último erro foi 0.)

    
por 24.06.2014 / 21:03