Páginas

04 septiembre, 2014

Administrar impresoras de Windows instaladas en equipos locales o remotos por linea de comandos o de modo gráfico

En esta entrada veremos que comandos utilizar para poder administrar impresoras desde lineas de comandos, ya sean para equipos locales o equipos remotos de un red.

Administración de impresoras por: Scripts (.vbs)

Nos situamos bajo la ruta "%systemroot%\System32\Printing_Admin_Scripts\..."  dentro de esa carpeta veremos de una carpeta local específica de cada idioma encontraremos lo siguientes scripts.
  • Prnmngr.vbs: Agrega, elimina y enumera impresoras o conexiones de impresora, además de establecer y mostrar la impresora predeterminada.
  • Prncnfg.vbs: Configura o muestra información acerca de una impresora.
  • Prndrvr.vbs: Agrega, elimina y enumera los controladores de impresora.
  • Prnjobs.vbs: Hace una pausa, reanuda, cancela y enumera los trabajos de impresión.
  • Prnport.vbs: Crea, elimina y enumera los puertos de impresora TCP/IP estándar, además de mostrar y cambiar la configuración de puerto.
  • Prnqctl.vbs: Imprime una página de prueba, pausa o reanuda una impresora y borra una cola de impresión.
  • Pubprn.vbs: Publica una impresora para los servicios de dominio de Active Directory.
Si es la primera vez que usamos scripts VBS (Visual Basic Script) desde linea de comandos, podría mostrarse el siguiente mensaje.

WSH_modo Cscript para ejcutar vbs
Figura 1: Mensaje de "Windows Script Host", pasos para cambiar al modo cscript y ejeuctar ficheros .vbs

Lo primero será configurar wscript (Windows-based Script) para para que cscript (Command-line Script) sea el entorno de ejecución por defecto para poder ejecutar ficheros de scripts .vbs.
Para ello basta con ejecutar en una consola de Windows:
cscript //h:cscript //s
Donde //h:cscript cambia el host de secuencias de comandos predeterminado y //s guarda los cambios para el usuario actual.
Si no estamos seguros de si el entorno donde lo vamos a ejecutar está ya configurado de este modo, también podemos incluir esta línea dentro de nuestro script .vbs.

Para poder administrar de forma remota impresoras de otros equipos de un red/dominio, después de añadir los parámetros necesarios para lo que queramos realizar cambios, añadimos los siguientes argumentos, un ejemplo para un cambio de nombre de una impresora instalada en un equipo remoto de un red de dominio en este caso sería:
prncnfg -x -p Brother -z "Brother_Despacho2" -s NombreEquipoRemoto -u UserAdmin -w PasswordUserAdmin
 Donde UserAdmin y PasswordUserAdmin, sería un usuario local con privilegios administrativos del equipo remoto, en caso de estar en un dominio se debería especificar el nombre de equipo para que autentifique como usuario administrador local y no usuario administrador de dominio: NombreEquipoLocal\UserAdminLocal.

En la siguiente captura se puede ver en un caso real del ejemplo anterior, bajo un equipo remoto que forma parte de un dominio (click en la imagen para ampliar).

Ejemplo prncng cambiar nombre impresora instalada en un equipo remoto
Figura 2: Ejemplo de un "cambio de nombre" de una impresora instalada en un equipo remoto de un red de dominio.

Administración de impresoras por: printbrm.exe

Otra herramienta interesante es printbrm.exe, ubicada en la ruta: "%SystemRoot%\System32\Spool\Tools".

Con Printbrm podemos entre otras cosas:
  • Listar información sobre configuraciones de impresoras.
  • Backup y restore de la configuración de un servidor de impresión.
  • Convertir puertos LPR a puertos TCP/IP en un proceso de restauración.
  • Migrar impresoras y colas de impresión de un servidor a otro.
  • Publicar impresoras en Active Directory.
Si se está ejecutando Printbrm a través de la red a hosts remotos, el recurso compartido Print$ debe existir en los hosts de origen y destino y debe estar iniciado el servicio de Windows de "Registro remoto".

Más información sobre el uso de Printbrm en:
http://ss64.com/nt/printbrm.html
http://technet.microsoft.com/en-us/library/jj134237.aspx

Administración de impresoras por: printmanagement.msc (GUI)

La forma más sencilla de hacer las mismas operaciones de prácticamente todo lo que se podría hacer mendiante linea de comandos con los Scripts .vbs y la herramienta Printbrm.exe, es usar un modo gráfico mucho más intuitivo y ágil de usar para el usuario-administrador, el modo gráfico es gracias a una MicroSoft Console (MSC): printmanagement.msc (La consola de Microsoft de "Administración de impresión").

Para poder abrir la consola de Microsoft "Administración de impresión" se puede hacer de varias formas y todas serían válidas:

- Escribimos en una ventana Ejecutar (Tecla Windows+R): printmanagement.msc

- Abriendo una MMC (Microsoft Management Console). Escribimos en una ventana Ejcutar: MMC > Archivo > Agregar o quitar complemento... > Administración de impresión > Escribimos el nombre de host remoto.

- Inicio > Panel de Control > Sistema y Seguridad > Herramientas administrativas > Administración de impresión.

Una vez abierta la Administración de impresión, podremos configurar nuestras propias impresoras instaladas en nuestro host local o conectarnos a otros hosts remotos en los que podremos incluso llegar a instalar impresoras con sus drivers correspondientes.

Unos ejemplos de acciones que se podrían llevar a cabo serían:

- Colocados en la parte de "Servidores de impresión", para conectarnos a un host remoto:
Botón derecho o Acción en la barra de herramientas > Agregar o quitar servidores...

- Para instalar un impresora en un equipo remoto, nos situamos sobre el equipo remoto una vez agregado:
Botón derecho o Acción en la barra de herramientas > Agregar Impresora...

Agregando Host remoto para la administración por printmanagement.msc
Figura 3: Agregando un host remoto para la administración de impresoras por printmanagement.msc

En la captura anterior se puede ver como en mi equipo local tengo agregado a mi propio equipo al servidor administración de impresión y a su vez tengo otros dos equipos de una red de dominio agregados.

En los que de este modo voy poder configurar todo de la misma forma que como lo haría si estuviese sentado físicamente en esos equipos remotos. La gran diferencia es que esto se hace de forma subyacente al usuario y ya con privilegios administrativos.

Más información sobre la MSC "Administración de impresión" http://technet.microsoft.com/es-es/library/cc664683.aspx

Ya sean por comandos de scripts, por una tool de comandos o de forma gráfica, la gran ventaja que esto supone es que nos ayuda a administrar y gestionar impresoras en equipos remotos de forma transparente al usuario final.

Saludos!

02 septiembre, 2014

USBDeview y Ghostbuster: Analiza información de dispositivos USB y otros

USBDeview es una pequeña aplicación de nirsoft.net que nos muestra información muy detallada de los dispositivos USB conectados actuales o que en un pasado estuvieron conectados en un equipos.

Figura 1: Analizando dispositivos USB USBDeview.

Este tipo de información nos puede ser útil para análisis forenses mostrándonos información de dispositivos conectados en un pasado.

Aprovecho para comentar que la rama del registro de Windows donde podremos ver el ID y demás información de cada dispositivo USB conectado.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR
Otra informacion similar se guarda en fichero log de Windows, se encuentra en el path:
c:\windows\inf\setupapi.dev.log
Ghostbuster es un software que nos proporcionará información detalle de todos los dispositivos conectados en el equipo. Podremos encontrar la clave de registro de Windows correspondiente.

Eliminar esos "dispositivos fantasmas" que la propia herramienta le llama, refiriéndose a dispositivos que estuvieron conectados en un pasado y ya no se utilizan y aquellos dispositivos que permanecen ocultos a simple vista para el usuario, siendo estes de más bajo nivel.

Figura 2: Analizando información del dispositovo interface de red con Ghostbuster.

Saludos!

Entradas Populares