Estou tentando desabilitar o NetBIOS e preciso fazer isso pelo SCCM para vários clientes.
Estou tentando fazer isso por meio de configurações de conformidade e implemento o seguinte (e elas funcionam quando executadas localmente)
Script de descoberta
$adapter=(gwmi win32_networkadapterconfiguration | where {$_.ipenabled -eq "1"})
Foreach ($nic in $adapter) {if ($adapter.TcpIPNetBiosOptions -ne "2") {[System.Environment]::Exit(1)}} [System.Environment]::Exit(0)
Script de correção
$adapter=(gwmi win32_networkadapterconfiguration | where {$_.ipenabled -eq "1"})
Foreach ($nic in $adapter) {
$adapter.settcpipnetbios(2)
}
Portanto, a execução do script funciona localmente em cada máquina e, se já estiver em conformidade, o SCCM fornecerá a resposta correta
MAS
Se os valores do registro retornarem como $adapter.TcpIPNetBiosOptions -ne "2", a conformidade da configuração mostrará "erro" quando avaliada no Configuration Manager e a correção não será acionada automaticamente. Se eu mesmo executar o script, a configuração retornará como compatível.
Há algo que estou faltando?
EditarVejo o seguinte erro sendo relatado
Erro de descoberta de configuração 0x80070001 Função incorreta. janelas
Responder1
$adapter.settcpipnetbios(2)
deveria estar
$nic.settcpipnetbios(2)
Caso contrário, não haveria razão para o foreach
loop.