Prepara tus PC con Windows para el inventario sin agente
Prepara los PC con Windows para que NetBlade los lea sin instalar nada: cuenta de administrador, WMI, SMB, firewall, UAC remoto, script y un PC piloto.
NetBlade lee un PC con Windows a través de la red, con las propias interfaces de administración de Windows, y no instala nada en él. A cambio, cada PC debe aceptar un inicio de sesión de administrador desde el PC que ejecuta NetBlade y dejar pasar ese tráfico por su firewall. Este artículo explica exactamente qué hace falta, en qué se diferencia un dominio de un grupo de trabajo, qué cambia el script de habilitación de NetBlade y cómo deshacerlo, y cómo comprobarlo todo en un PC antes de tocar el resto.
Antes de empezar
- NetBlade instalado y un primer escaneo hecho, para que los PC estén en Dispositivos (Primeros pasos).
- Una cuenta de administrador para los PC que quieres leer: una cuenta de dominio que sea administrador local, o una cuenta de administrador local en cada PC.
- Acceso físico o remoto a un PC que usarás como piloto, donde puedas ejecutar algo como administrador.
- La dirección IP del PC que ejecuta NetBlade. No debería cambiar: si viene de DHCP, dale una reserva en tu servidor DHCP (el paso 7 explica por qué).
1. Qué usa una lectura
Una lectura de un PC con Windows (Escaneo a fondo en la ficha de un dispositivo, o Inventario a fondo en la lista de dispositivos) pasa por la administración de Windows, y NetBlade pide además que el uso compartido de archivos esté abierto hacia él:
| Qué | Puerto | Para qué sirve |
|---|---|---|
| Administración de Windows (WMI) | TCP 135 más los puertos RPC dinámicos del servicio WMI | La lectura en sí: hardware, sistema, actualizaciones, servicios, defensas |
| Uso compartido de archivos (SMB) | TCP 445 | Se abre junto con WMI; es también la vía de entrada de PsExec |
| WinRM | TCP 5985 | Solo acciones remotas, no la lectura |
También necesita una credencial de administrador de Windows para ese PC. BitLocker y TPM en particular solo los puede leer un administrador; sin una, la ficha indica que hace falta un administrador.
Con eso, NetBlade lee nombre, dominio, sistema operativo y compilación, fabricante, modelo y número de serie, procesador, memoria, usuario con sesión iniciada, unidades y discos físicos, adaptadores de red, monitores, impresoras, batería, dispositivos con errores y USB, actualizaciones instaladas, servicios de inicio automático, programas que se inician con Windows, características opcionales, perfiles, administradores y cuentas locales, sesiones abiertas, carpetas compartidas y quién puede escribir en ellas, programas instalados, y las defensas: antivirus, firewall por perfil, BitLocker, TPM, Arranque seguro, UAC, Escritorio remoto, SMBv1 y reinicio pendiente.
Nota: El PC que ejecuta NetBlade se lee a sí mismo sin ninguna credencial ni preparación.
2. Dominio o grupo de trabajo: qué cambia
| En un dominio | En un grupo de trabajo | |
|---|---|---|
| Cuenta | Una cuenta de dominio que sea administrador local de los PC | Una cuenta de administrador local en cada PC |
| UAC remoto | No es un problema para las cuentas de dominio | Hay que relajarlo para las cuentas locales (paso 5) |
| WinRM para acciones remotas | Kerberos, nada extra en este PC | Este PC debe incluir el destino en TrustedHosts |
En un dominio hay una comodidad más: cuando ninguna credencial guardada consigue entrar, NetBlade prueba la cuenta de Windows con la que se está ejecutando. Si inicias sesión en el PC de NetBlade con una cuenta de dominio que es administrador local de los PC, esos PC se pueden leer sin ninguna credencial registrada. Para una configuración limpia, registra de todos modos una cuenta dedicada (consulta Credenciales como es debido).
3. Elige y registra la cuenta
- Decide qué cuenta usará NetBlade. En un dominio, lo habitual es una cuenta de TI dedicada que sea miembro del grupo local Administradores de las estaciones de trabajo. En un grupo de trabajo, la cuenta de administrador local de cada PC.
- En NetBlade, abre Credenciales y pulsa Agregar….
- Pon Protocolo en Windows (WMI) y escribe el Usuario con el formato que muestra la aplicación:
DOMAIN\userpara una cuenta de dominio, o.\Administratorpara una local. - Escribe la contraseña, elige Dónde se aplica (por ahora, Un sitio o Un dispositivo para el PC piloto) y añade una etiqueta.
- Pulsa Registrar.
4. Prueba con un PC piloto
No prepares veinte PC para descubrir después que la cuenta no era la correcta. Elige uno.
- En la página Credenciales, escribe la dirección del PC piloto en Máquina en la que probar y pulsa Probar. La columna ÚLTIMA PRUEBA dice «Funciona» o «Fallida».
- Abre la ficha del PC piloto desde Dispositivos y pulsa Escaneo a fondo.
- Mira el estado de lectura justo debajo del nombre del dispositivo. «Leído el … mediante …» significa que ha funcionado. «Nunca leído» o «Lectura fallida» abre un panel con el motivo y lo que hay que hacer.
Si ha funcionado, salta al paso 7. Si el panel dice que el firewall bloquea la lectura, por ejemplo «Es un PC con Windows, pero su firewall bloquea la lectura: solo responde en los puertos …», continúa con el paso 5.
5. Abre el PC con el script de habilitación
Cuando un PC con Windows no se puede leer, su ficha ofrece un script que abre exactamente lo que NetBlade necesita, y solo hacia el PC que ejecuta NetBlade.
- En la ficha del PC piloto, haz clic en el estado de lectura (Nunca leído o Lectura fallida).
- Pulsa Descargar el script de habilitación y guarda el archivo.
- En el mismo panel, guarda también ahora el Script para deshacer los cambios, y guárdalo junto al otro.
- Copia el script de habilitación al PC piloto y haz doble clic en él. Es un archivo
.cmd: pide permisos de administrador por sí mismo y dice lo que hace, línea por línea. - De vuelta en NetBlade, pulsa Volver a leer ahora.
Atención: Los botones de habilitar y deshacer aparecen en la ficha solo mientras el PC no se ha leído correctamente. En cuanto la lectura funciona desaparecen, así que guarda el script para deshacer al mismo tiempo que el de habilitación.
Lo que el script cambia en ese PC:
- Añade reglas de firewall, permitidas solo desde la dirección IPv4 del PC de NetBlade, llamadas
NetBlade - WMI (135),NetBlade - WMI (RPC),NetBlade - Services (RPC),NetBlade - SMB (445)yNetBlade - WinRM (5985). La regla Services abre la administración remota de servicios, para que PsExec arranque enseguida en lugar de esperar. - Configura el servicio WMI para que se inicie automáticamente y lo inicia.
- Activa WinRM con
Enable-PSRemoting -Force -SkipNetworkProfileCheck, para las acciones remotas. - Solo si el PC no está en un dominio, pone
LocalAccountTokenFilterPolicya 1 (el paso 6 explica por qué).
Ejecutarlo dos veces no hace daño: primero elimina sus propias reglas, así que al final queda un solo conjunto.
6. Entiende el UAC remoto y LocalAccountTokenFilterPolicy
De forma predeterminada, cuando un administrador local se conecta a un PC a través de la red, Windows le quita los derechos de administrador a ese inicio de sesión. Es la restricción remota del Control de cuentas de usuario. El resultado despista: los puertos están abiertos, la contraseña es correcta y aun así la lectura se rechaza con «WMI: acceso denegado (0x80070005)».
El valor del Registro LocalAccountTokenFilterPolicy, puesto a 1 en HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System, levanta esa restricción para que un administrador local conserve sus derechos en remoto. El script de habilitación lo configura solo en los PC fuera de un dominio, porque las cuentas de dominio no se filtran de esta forma.
Si en cambio preparas un PC a mano, la guía de acciones remotas de la aplicación da este comando, para ejecutarlo en PowerShell como administrador en ese PC:
New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name LocalAccountTokenFilterPolicy -Value 1 -PropertyType DWord -Force
Atención: Esto reduce un poco la protección de ese PC: cualquier cuenta de administrador local puede usarse ahora a través de la red. Úsalo solo donde lo necesites, con una contraseña de administrador local fuerte y distinta en cada PC. El script para deshacer lo elimina, y también la acción remota «Restaurar las restricciones remotas de UAC».
7. Extiéndelo a los demás PC
Cuando el piloto se lee correctamente, repite con los demás.
- PC por PC, con el script. Descarga el script de habilitación desde la ficha de cada PC y ejecútalo allí. El script se genera para la dirección IP actual del PC de NetBlade. Por eso esa dirección no debe cambiar: si cambia, las reglas de firewall dejan de coincidir y las lecturas se detienen hasta que ejecutes un script nuevo.
- En un dominio, con directiva de grupo. NetBlade no genera directivas, pero el mismo resultado se puede obtener de forma centralizada. Para WinRM, la propia aplicación indica: Configuración del equipo › Plantillas administrativas › Componentes de Windows › Administración remota de Windows › Servicio WinRM › «Permitir la administración remota de servidores a través de WinRM». Para WMI y SMB, lo habitual son reglas de firewall de entrada para TCP 135, los puertos RPC del servicio WMI y TCP 445, restringidas a la dirección del PC de NetBlade. Esto es administración general de Windows, así que pruébalo primero en un PC.
- Amplía la credencial. Cuando el piloto funcione, abre Credenciales, pulsa Dónde se aplica… en la credencial y extiéndela a Un sitio o En todas partes.
Después léelos todos: Dispositivos, Inventario a fondo, o Sitios, Leer todos los dispositivos. El sitio indica cuántos se han leído y cuántos no tenían ninguna credencial aplicable.
8. Prepara también las acciones remotas (opcional)
La lectura no usa WinRM, pero las acciones remotas sí. Si piensas usarlas, abre Acciones remotas en una ficha y despliega Lo que necesita la máquina remota. La aplicación enumera, en el orden en que suelen faltar:
- Una cuenta de administrador en esa máquina, guardada en Credenciales.
- WinRM activado en la máquina remota:
Enable-PSRemoting -Force -SkipNetworkProfileCheck. - Una red privada o de dominio, no una pública. En la máquina remota, como administrador:
Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private
- Fuera de un dominio, confía en la máquina desde este PC (pon su IP en lugar de la del ejemplo):
Set-Item WSMan:\localhost\Client\TrustedHosts -Value '192.168.1.50' -Concatenate -Force
- Fuera de un dominio con una cuenta local, la clave
LocalAccountTokenFilterPolicydel paso 6. - PsExec, cuando no hay WinRM: el puerto 445 abierto en la máquina remota y el recurso compartido ADMIN$ activado. Para abrir el 445:
Enable-NetFirewallRule -Name 'FPS-SMB-In-TCP'
Los detalles están en Acciones remotas, con seguridad.
9. Cómo deshacerlo todo
En cualquier PC que hayas preparado con el script, ejecuta el Script para deshacer los cambios que guardaste. Elimina las reglas de firewall de NetBlade y el acceso administrativo remoto para las cuentas locales. Deja WinRM activado; si no lo necesitas, desactívalo en PowerShell como administrador:
Disable-PSRemoting
Si no guardaste el script para deshacer, los mismos resultados están disponibles como acciones remotas desde un NetBlade que funcione: «Restaurar las restricciones remotas de UAC», «Eliminar una regla de firewall» para cada una de las reglas NetBlade - … enumeradas en el paso 5, y «Deshabilitar WinRM». Viajan por el mismo acceso que estás quitando, así que deja «Restaurar las restricciones remotas de UAC» para el final. Guardar el script para deshacer es más sencillo.
Comprueba que ha funcionado
- El estado de lectura de la ficha dice «Leído el … mediante …», y las pestañas Hardware, Software, Sistema y Seguridad tienen datos.
- La pestaña Seguridad muestra los estados de BitLocker y TPM en lugar de «requiere administrador».
- En el Panel, Máquinas leídas sube y la línea de cobertura dice cuántos dispositivos se han leído a fondo.
Si algo sale mal
- «WMI: acceso denegado (0x80070005)». La cuenta no está autorizada. Con una cuenta local o de Microsoft,
LocalAccountTokenFilterPolicytiene que estar activado (lo hace el script de habilitación). En un dominio, comprueba que la cuenta esté en el grupo local Administradores del PC. - «WMI: error de inicio de sesión (0x8007052E)». Nombre de usuario o contraseña incorrectos. Comprueba el formato:
DOMAIN\usero.\Administrator. - «WMI: acceso denegado (0x80041003)». La cuenta no tiene derechos sobre el espacio de nombres de WMI. Usa una cuenta de administrador.
- «WMI: tipo de inicio de sesión no concedido (0x80070569)». Una directiva de seguridad local de ese PC deniega el tipo de inicio de sesión. Revisa la directiva de seguridad local de ese PC.
- «sin respuesta de WMI (firewall, o no es Windows)». El firewall bloquea WMI o el dispositivo no es Windows. Ejecuta el script de habilitación.
- «ninguna credencial se aplica a este dispositivo». Ninguna credencial de Windows lo cubre. Registra una para el dispositivo, el sitio o para todas partes.
- «la contraseña guardada no se puede leer con esta cuenta». La credencial la registró otro usuario de Windows en este PC. Vuelve a registrarla con la sesión iniciada como el usuario que ejecuta NetBlade.
- Funcionaba y dejó de funcionar en todos los PC a la vez. Probablemente ha cambiado la dirección IP del PC de NetBlade, así que las reglas ya no coinciden. Reserva su dirección y ejecuta scripts nuevos.
- Una acción remota tardó más de medio minuto. El firewall de ese PC bloquea la administración remota de servicios y PsExec espera antes de recurrir a otra vía. Vuelve a descargar el script de habilitación y ejecútalo: la versión actual abre también eso, siempre solo para este PC.
Siguiente
Con los PC ya legibles, configura bien tus cuentas: Credenciales como es debido. Después lee tus equipos de red con SNMP.
← Todos los tutoriales Guía de funciones → El producto: NetBlade Windows →