Inventario de máquinas mediante GPO's

Una politica de dominio muy util que hemos implantado en varias empresas es la de inventariar las maquinas cliente del dominio.
Añadimos una GPO nueva a la OU donde se encuentran las maquinas y definimos la siguiente configuración:


Para los scripts de inicio de maquina (startup) y de inicio de sesion (logon) usamos distintos lenguajes:
  • VBS para todas las queries WMI de hardware y software
  • KiXtart para recuperar la informacion referente al usuario y la sesion.

En la parte de equipo tenemos las siguientes configuraciones:
script infoC.vbs

script infoS.vbs

Loopback Processing Mode: Merge
Para que aplique la configuracion de usuario ademas de la de maquina a los equipos que cuelgan de la OU donde hemos aplicado la politica.

En la parte de usuario necesitamos el ejecutable de KiXtart, el script de KiXtart y un batch que lanzara ese script:
lanza_imac.cmd

infoB.scr

Por ultimo el batch enviara los txt's resultantes de infoB.scr, infoC.vbs e infoS.vbs a un recurso compartido de un servidor para centralizar todos los logs. Y de ahi los cargaremos a una base de datos.

Descargar los scripts

Comentarios

  1. Madre mia, esto era en 2011, hace mucho que me pasé a Powershell. Aqui estan aquellos scripts aunque ahora me dan un poco de risa.

    https://drive.google.com/file/d/0B_LwZiKE6NiHamhtNG1uc0hTajA/view?usp=sharing

    Te recomiendo echar un vistazo al post de Deploy, tiene unos scripts en powershell para sacar inventario de equipos bajo demanda que podrías aprovechar

    ResponderEliminar
  2. XD , si, me fijé en la fecha del post despues de preguntar , gracias por compartir, utilizo otras herramientas para inventario pero esa opción me pareció bastante "creativa".

    Aun no los he visto, pero por que dices que dan risa? Entiendo que ahora mismo PS tiene cmdlts mas "modernos".

    ResponderEliminar
  3. ver ahora mis scripts en vbs y kiXtart me ha remontado a la epoca de los dinosaurios. Yo mantendría la GPO igual, pero cambiando esos scripts por otros en pwsh.
    por ejemplo ahora tengo un bat que guarda el logon y logoff de los usuarios en una GPO de usuario en loginscript:

    powershell -noprofile -executionpolicy unrestricted -command "& {('{0}\{1};{2};{3:yyyy/MM/dd HH:mm:ss};{4};inicio' -f $env:userdomain,$env:username, $env:computername,(get-date).touniversaltime(),$env:logonserver.substring(2))|out-file \\server\LOG-ON-OFF$\maquinas\$env:computername.csv -append}"
    powershell -noprofile -executionpolicy unrestricted -command "& {('{0}\{1};{2};{3:yyyy/MM/dd HH:mm:ss};{4};inicio' -f $env:userdomain,$env:username, $env:computername,(get-date).touniversaltime(),$env:logonserver.substring(2))|out-file \\server\LOG-ON-OFF$\usuarios\$env:username.csv -append}"

    ResponderEliminar

Publicar un comentario