Skip to main content

PsExec v1.94

Por Mark Russinovich

Publicado: enero 4, 2008

 

Introducción

Las utilidades como telnet y los programas de control remoto, como PC Anywhere de Symantec, permiten ejecutar programas en sistemas remotos, aunque su configuración puede constituir todo un problema y requieren que instale software de cliente en sistemas remotos a los que desee tener acceso. PsExec es una sustitución ligera de Telnet que permite ejecutar procesos en otros sistemas, junto con una interactividad completa para aplicaciones de consola, sin tener que instalar manualmente software de cliente. Entre los usos más eficaces de PsExec se incluyen el inicio de símbolos del sistema interactivos en sistemas remotos y la habilitación remota de herramientas como IpConfig que, de otro modo, no tienen la capacidad de mostrar información sobre sistemas remotos.

Nota: algunos exploradores antivirus notifican que alguna o todas las herramientas están infectadas con un virus de "administración remota". Ninguna de las herramientas de PsTools contiene virus, pero éstos las han usado en ocasiones, lo que activa dichas notificaciones.

 

Instalación

Sólo tiene que copiar PsExec en la ruta de acceso del ejecutable. Al escribir "psexec", se muestra la sintaxis.

PsExec funciona en Windows Server 2008, Vista, NT 4.0, Win2K, Windows XP y Server 2003 incluidas las versiones x64 de Windows.


Uso

Busque en el número de julio de 2004 de la revista Windows IT Pro, el artículo de Mark que trata la sintaxis avanzada de PsExec..

uso: psexec [\\equipo[,equipo2[,...] | @archivo][-u usuario [-p contraseña]][-n s][-l][-s|-e][-x][-i [sesión]][-c [-f|-v]][-w directorio][-d][-<prioridad>][-a n,n,... ] cmd [argumentos]

equipoDirige PsExec para que ejecute la aplicación en el equipo o equipos especificados. Si omite el nombre de equipo, PsExec ejecuta la aplicación en el sistema local y si escribe un nombre de equipo "\\*", PsExec ejecuta las aplicaciones en todos los equipos del dominio actual.
@fileIndica a PsExec que ejecute el comando en cada equipo incluido en el archivo de texto especificado.
-aSepare los procesadores en los que la aplicación se puede ejecutar con comas, donde 1 es la CPU de número inferior. Por ejemplo, para ejecutar la aplicación en la CPU 2 y la CPU 4, escriba: "-a 2,4"
-cCopia el programa especificado en el sistema remoto para su ejecución. Si omite esta opción, la aplicación debe estar en la ruta de acceso de sistema del sistema remoto.
-dNo espere a que la aplicación termine. Use esta opción sólo para aplicaciones no interactivas.
-eNo carga el perfil de cuenta especificado.
-fEjecute el programa para que interactúe con el escritorio de la sesión especificada en el sistema remoto. Si no hay ninguna sesión especificada, el proceso se ejecuta en la sesión de consola.
-iEjecute el programa para que interactúe con el escritorio de la sesión especificada en el sistema remoto. Si no hay ninguna sesión especificada, el proceso se ejecuta en la sesión de consola.
-lEjecuta el proceso como usuario limitado (desmonta el grupo Administradores y permite sólo privilegios asignados al grupo Usuarios). En Windows Vista, el proceso se ejecuta con integridad baja.
-nEspecifica el tiempo de espera en segundos al conectar a equipos remotos.
-pEspecifica la contraseña opcional del nombre de usuario. Si omite este valor, se le pedirá que introduzca una contraseña oculta.
-sEjecuta el proceso remoto en la cuenta del sistema.
-uEspecifica el nombre de usuario opcional para iniciar sesión en el equipo remoto.
-vCopia el archivo especificado sólo si tiene un número de versión superior o es más nuevo que el del sistema remoto.
-wEstablece el directorio de trabajo del proceso (con respecto al equipo remoto).
-xMuestra la UI en el escritorio de Winlogon (sólo sistema local).
-priorityEspecifica -low, -belownormal, -abovenormal, -high o -realtime para ejecutar el proceso con una prioridad distinta.
programaNombre del programa que se va a ejecutar.
argumentosArgumentos que transferir (tenga en cuenta que rutas de acceso de archivo deben ser rutas de acceso absolutas en el sistema de destino).

 

Puede encerrar las aplicaciones que tengan espacios en el nombre entre comillas, por ejemplo, "psexec \\marklap "c:\long name\app.exe". La entrada sólo se transfiere al sistema remoto al pulsar la tecla Entrar; con Ctrl-C, termina el proceso remoto.

Si omite un nombre de usuario, el proceso remoto se ejecuta en la misma cuenta en la que se ejecuta PsExec, aunque, puesto que el proceso remoto lleva a cabo una suplantación, no tendrá acceso hacer a ningún recurso de red del sistema remoto. Si especifica un nombre de usuario, el proceso remoto se ejecuta en la cuenta especificada y tendrá acceso a cualquier recurso de red al que tenga acceso la cuenta. Recuerde que la contraseña se transmite en texto no cifrado al sistema remoto.

Puede usar la versión actual de PsExec como sustitución de Runas cuando el destino sea el sistema local, ya que PsExec no requiere que sea administrador.

 

Ejemplos

Este artículo, del que soy autor, describe cómo funciona PsExec y ofrece sugerencias de uso:

http://www.winnetmag.com/Windows/Issues/IssueID/714/Index.html

El comando siguiente inicia un símbolo del sistema interactivo en \\marklap:

psexec \\marklap cmd

Este comando ejecuta IpConfig en el sistema remoto con el conmutador /all, y muestra la salida resultante de forma local:

psexec \\marklap ipconfig /all

Este comando copia el programa test.exe en el sistema remoto y lo ejecuta interactivamente:

psexec \\marklap -c test.exe

Especifica la ruta de acceso completa a un programa que ya está instalado en un sistema remoto si no está en la ruta de acceso del sistema:

psexec \\marklap c:\bin\test.exe

Ejecuta Regedit interactivamente en la cuenta del sistema para ver el contenido de las claves SAM y SEGURIDAD:

psexec -i -d -s c:\windows\regedit.exe

Para ejecutar Internet Explorer con privilegios de usuario limitados, use este comando:

psexec -l -d "c:\archivos de programa\internet explorer\iexplore.exe"

 


Descargar PsTools
(1 MB)

 

 

 Inicio de página Inicio de página

PsTools

PsExec forma parte de un conjunto de herramientas de línea de comandos de Sysinternals que facilitan la administración de sistemas locales y remotos de Windows. Dicho conjunto está en constante crecimiento y se denomina PsTools.


Descargar PsTools
(1 MB)

Microsoft está realizando una encuesta en línea para comprender su opinión del sitio web de. Si decide participar, se le presentará la encuesta en línea cuando abandone el sitio web de.

¿Desea participar?