Prepare seus PCs Windows para o inventário sem agente
Deixe os PCs Windows prontos para o NetBlade sem instalar nada: conta de admin, WMI, SMB, firewall, UAC remoto, script de habilitação e um PC piloto.
O NetBlade lê um PC Windows pela rede, com as próprias interfaces de gerenciamento do Windows, e não instala nada nele. Em troca, cada PC precisa aceitar um logon de administrador vindo do PC que executa o NetBlade e deixar esse tráfego passar pelo firewall. Este artigo explica exatamente o que é necessário, o que muda entre um domínio e um grupo de trabalho, o que o script de habilitação do NetBlade altera e como desfazer, e como comprovar tudo em um PC antes de mexer nos outros.
Antes de começar
- O NetBlade instalado e uma primeira varredura feita, para que os PCs estejam em Dispositivos (Primeiros passos).
- Uma conta de administrador para os PCs que você quer ler: uma conta de domínio que seja administradora local, ou uma conta de administrador local em cada PC.
- Acesso físico ou remoto a um PC para usar como piloto, onde você possa executar algo como administrador.
- O endereço IP do PC que executa o NetBlade. Ele não deve mudar: se vier do DHCP, crie uma reserva no seu servidor DHCP (veja no passo 7 o porquê).
1. Saiba o que uma leitura usa
Uma leitura de um PC Windows (Varredura detalhada na ficha de um dispositivo, ou Inventário detalhado na lista de dispositivos) passa pelo gerenciamento do Windows, e o NetBlade pede que o compartilhamento de arquivos também esteja aberto para ele:
| O quê | Porta | Para que serve |
|---|---|---|
| Gerenciamento do Windows (WMI) | TCP 135 mais as portas RPC dinâmicas do serviço WMI | A leitura em si: hardware, sistema, atualizações, serviços, defesas |
| Compartilhamento de arquivos (SMB) | TCP 445 | Aberto junto com o WMI; também é a porta de entrada do PsExec |
| WinRM | TCP 5985 | Só para as ações remotas, não para a leitura |
Ela também precisa de uma credencial de administrador do Windows para esse PC. O BitLocker e o TPM, em especial, só podem ser lidos por um administrador; sem um, a ficha diz que é necessário um administrador.
Com isso, o NetBlade lê nome, domínio, sistema operacional e build, fabricante, modelo e número de série, processador, memória, usuário conectado, unidades e discos físicos, adaptadores de rede, monitores, impressoras, bateria, dispositivos com defeito e USB, atualizações instaladas, serviços iniciados automaticamente, programas que iniciam com o Windows, recursos opcionais, perfis, administradores e contas locais, sessões abertas, pastas compartilhadas e quem pode gravar nelas, programas instalados, e as defesas: antivírus, firewall por perfil, BitLocker, TPM, Inicialização Segura, UAC, Área de Trabalho Remota, SMBv1 e reinicialização pendente.
Observação: O PC que executa o NetBlade lê a si mesmo sem nenhuma credencial nem preparação.
2. Domínio ou grupo de trabalho: o que muda
| Em um domínio | Em um grupo de trabalho | |
|---|---|---|
| Conta | Uma conta de domínio que seja administradora local dos PCs | Uma conta de administrador local em cada PC |
| UAC remoto | Não é problema para contas de domínio | Precisa ser flexibilizado para contas locais (passo 5) |
| WinRM para as ações remotas | Kerberos, nada a mais neste PC | Este PC precisa listar o destino em TrustedHosts |
Em um domínio há mais uma comodidade: quando nenhuma credencial registrada consegue entrar, o NetBlade tenta a conta do Windows sob a qual está sendo executado. Se você entra no PC do NetBlade com uma conta de domínio que é administradora local dos PCs, esses PCs podem ser lidos sem nenhuma credencial registrada. Para uma configuração limpa, registre mesmo assim uma conta dedicada (veja Credenciais do jeito certo).
3. Escolha e registre a conta
- Decida qual conta o NetBlade vai usar. Em um domínio, a escolha habitual é uma conta de TI dedicada que seja membro do grupo local Administradores das estações de trabalho. Em um grupo de trabalho, a conta de administrador local de cada PC.
- No NetBlade, abra Credenciais e clique em Adicionar….
- Defina Protocolo como Windows (WMI) e digite o Usuário no formato que o aplicativo mostra:
DOMAIN\userpara uma conta de domínio, ou.\Administratorpara uma local. - Digite a senha, escolha Onde vale (por enquanto, Um site ou Um dispositivo para o PC piloto) e adicione um rótulo.
- Clique em Registrar.
4. Teste em um PC piloto
Não prepare vinte PCs para depois descobrir que a conta estava errada. Escolha um.
- Na página Credenciais, digite o endereço do PC piloto em Máquina para testar e clique em Testar. A coluna ÚLTIMO TESTE diz «Funciona» ou «Falhou».
- Abra a ficha do PC piloto em Dispositivos e clique em Varredura detalhada.
- Veja o estado de leitura logo abaixo do nome do dispositivo. «Lido em … via …» significa que funcionou. «Nunca lido» ou «A leitura falhou» abre um painel com o motivo e o que fazer.
Se funcionou, pule para o passo 7. Se o painel disser que o firewall bloqueia a leitura, por exemplo «É um PC Windows, mas o firewall dele bloqueia a leitura: ele só responde nas portas …», continue com o passo 5.
5. Abra o PC com o script de habilitação
Quando um PC Windows não pode ser lido, a ficha dele oferece um script que abre exatamente o que o NetBlade precisa, e só para o PC que executa o NetBlade.
- Na ficha do PC piloto, clique no estado de leitura (Nunca lido ou A leitura falhou).
- Clique em Baixar o script de habilitação e salve o arquivo.
- No mesmo painel, salve agora também o Script para desfazer as alterações e guarde-o junto com o outro.
- Copie o script de habilitação para o PC piloto e clique duas vezes nele. É um arquivo
.cmd: ele pede direitos de administrador sozinho e diz o que faz, linha por linha. - De volta ao NetBlade, clique em Ler de novo agora.
Atenção: Os botões de habilitação e de desfazer só aparecem na ficha enquanto o PC não tiver sido lido com sucesso. Quando a leitura funciona, eles desaparecem; por isso salve o script de desfazer junto com o de habilitação.
O que o script altera nesse PC:
- Adiciona regras de firewall, permitidas só a partir do endereço IPv4 do PC do NetBlade, chamadas
NetBlade - WMI (135),NetBlade - WMI (RPC),NetBlade - Services (RPC),NetBlade - SMB (445)eNetBlade - WinRM (5985). A regra Services abre o gerenciamento remoto de serviços, para que o PsExec inicie na hora em vez de ficar esperando. - Configura o serviço WMI para iniciar automaticamente e o inicia.
- Ativa o WinRM com
Enable-PSRemoting -Force -SkipNetworkProfileCheck, para as ações remotas. - Só se o PC não estiver em um domínio, define
LocalAccountTokenFilterPolicycomo 1 (o passo 6 explica o porquê).
Executá-lo duas vezes não faz mal: ele remove primeiro as próprias regras, e você fica com um único conjunto.
6. Entenda o UAC remoto e o LocalAccountTokenFilterPolicy
Por padrão, quando um administrador local se conecta a um PC pela rede, o Windows tira os direitos de administrador desse logon. É a restrição remota do Controle de Conta de Usuário. O resultado confunde: as portas estão abertas, a senha está certa, e a leitura mesmo assim é recusada com «WMI: acesso negado (0x80070005)».
O valor do Registro LocalAccountTokenFilterPolicy, definido como 1 em HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System, suspende essa restrição, de modo que um administrador local mantém os direitos remotamente. O script de habilitação só o define em PCs fora de domínio, porque as contas de domínio não são filtradas dessa forma.
Se você preferir preparar um PC manualmente, o guia de ações remotas do aplicativo dá este comando, a executar no PowerShell como administrador nesse PC:
New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name LocalAccountTokenFilterPolicy -Value 1 -PropertyType DWord -Force
Atenção: Isso reduz um pouco a proteção desse PC: qualquer conta de administrador local passa a poder ser usada pela rede. Use só onde precisar, com uma senha de administrador local forte e exclusiva em cada PC. O script de desfazer remove essa configuração, assim como a ação remota «Restaurar as restrições remotas do UAC».
7. Estenda aos outros PCs
Quando o piloto for lido corretamente, repita para os outros.
- PC por PC, com o script. Baixe o script de habilitação da ficha de cada PC e execute-o lá. O script é gerado para o endereço IP atual do PC do NetBlade. É por isso que esse endereço não pode mudar: se mudar, as regras de firewall deixam de corresponder e as leituras param até você executar um script novo.
- Em um domínio, com Política de Grupo. O NetBlade não gera políticas, mas o mesmo resultado pode ser obtido de forma centralizada. Para o WinRM, o próprio aplicativo indica: Configuração do Computador › Modelos Administrativos › Componentes do Windows › Gerenciamento Remoto do Windows › Serviço WinRM › «Permitir gerenciamento remoto de servidor por meio do WinRM». Para WMI e SMB, a abordagem habitual são regras de firewall de entrada para TCP 135, as portas RPC do serviço WMI e TCP 445, restritas ao endereço do PC do NetBlade. Isso é administração genérica do Windows, então teste primeiro em um PC.
- Amplie a credencial. Quando o piloto funcionar, abra Credenciais, clique em Onde vale… na credencial e estenda-a para Um site ou Em todo lugar.
Depois leia todos: Dispositivos, Inventário detalhado, ou Sites, Ler todos os dispositivos. O site informa quantos foram lidos e quantos não tinham nenhuma credencial aplicável.
8. Prepare também as ações remotas (opcional)
A leitura não usa o WinRM, mas as ações remotas usam. Se você pretende usá-las, abra Ações remotas em uma ficha e expanda O que a máquina remota precisa. O aplicativo lista, na ordem em que costumam faltar:
- Uma conta de administrador naquela máquina, salva em Credenciais.
- WinRM ativado na máquina remota:
Enable-PSRemoting -Force -SkipNetworkProfileCheck. - Uma rede privada ou de domínio, não pública. Na máquina remota, como administrador:
Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private
- Fora de um domínio, confiar na máquina a partir deste PC (coloque o IP dela no lugar do exemplo):
Set-Item WSMan:\localhost\Client\TrustedHosts -Value '192.168.1.50' -Concatenate -Force
- Fora de um domínio com uma conta local, a chave
LocalAccountTokenFilterPolicydo passo 6. - PsExec, quando não há WinRM: porta 445 aberta na máquina remota e o compartilhamento ADMIN$ ativo. Para abrir a 445:
Enable-NetFirewallRule -Name 'FPS-SMB-In-TCP'
Os detalhes estão em Ações remotas com segurança.
9. Como desfazer tudo
Em qualquer PC que você preparou com o script, execute o Script para desfazer as alterações que você salvou. Ele remove as regras de firewall do NetBlade e o acesso administrativo remoto para contas locais. Ele deixa o WinRM ativado; se você não precisar dele, desative-o no PowerShell como administrador:
Disable-PSRemoting
Se você não guardou o script de desfazer, os mesmos resultados estão disponíveis como ações remotas a partir de um NetBlade que funcione: «Restaurar as restrições remotas do UAC», «Excluir uma regra de firewall» para cada uma das regras NetBlade - … listadas no passo 5, e «Desabilitar o WinRM». Elas passam justamente pelo acesso que você está removendo, então deixe «Restaurar as restrições remotas do UAC» por último. Guardar o script de desfazer é mais simples.
Verifique se funcionou
- O estado de leitura da ficha diz «Lido em … via …», e as abas Hardware, Software, Sistema e Segurança estão preenchidas.
- A aba Segurança mostra os estados do BitLocker e do TPM em vez de «requer administrador».
- No Painel, Máquinas lidas aumenta e a linha de cobertura diz quantos dispositivos foram lidos a fundo.
Se algo der errado
- «WMI: acesso negado (0x80070005)». A conta não está autorizada. Com uma conta local ou Microsoft,
LocalAccountTokenFilterPolicyprecisa estar ativado (o script de habilitação faz isso). Em um domínio, confira se a conta está no grupo local Administradores do PC. - «WMI: falha de logon (0x8007052E)». Nome de usuário ou senha incorretos. Confira o formato:
DOMAIN\userou.\Administrator. - «WMI: acesso negado (0x80041003)». A conta não tem direitos no namespace WMI. Use uma conta de administrador.
- «WMI: tipo de logon não concedido (0x80070569)». Uma política de segurança local desse PC nega o tipo de logon. Verifique a política de segurança local daquele PC.
- «sem resposta do WMI (firewall, ou não é Windows)». O firewall bloqueia o WMI ou o dispositivo não é Windows. Execute o script de habilitação.
- «nenhuma credencial vale para este dispositivo». Nenhuma credencial Windows o cobre. Registre uma para o dispositivo, para o site ou para todo lugar.
- «a senha salva não pode ser lida nesta conta». A credencial foi registrada por outro usuário do Windows neste PC. Registre-a de novo conectado como o usuário que executa o NetBlade.
- Funcionava e parou em todos os PCs ao mesmo tempo. O endereço IP do PC do NetBlade provavelmente mudou, então as regras deixaram de corresponder. Reserve o endereço dele e execute scripts novos.
- Uma ação remota levou mais de meio minuto. O firewall desse PC bloqueia o gerenciamento remoto de serviços e o PsExec espera antes de recorrer à alternativa. Baixe de novo o script de habilitação e execute-o: a versão atual também abre isso, sempre só para este PC.
Próximo passo
Com os PCs legíveis, configure suas contas direito: Credenciais do jeito certo. Depois leia seus equipamentos de rede com SNMP.
← Todos os guias práticos Guia de recursos → O produto: NetBlade Windows →