6 votos

PsExec y Windows 2008 R2: 'Acceso Denegado'

Esta es mi situación:

Estoy intentando de forma remota start & stop de IIS 7.0 sitios en mi servidor desde mi máquina local, el uso de PsExec.

Algunos puntos importantes:

  • Local de la máquina ejecuta Windows Vista.
  • Ejecuta servidor de Windows 2008 R2.
  • Cada máquina ejecuta en diferentes dominios.
  • Hay una confianza unidireccional de mi máquina local del dominio a mi servidor de dominio.
  • PsExec es el uso de una cuenta de administrador de dominio, que es autenticado como administrador local en el servidor de la máquina.
  • El equipo local hace referencia al servidor a través de un alias; no utilizar el servidor de nombre real.

Estoy utilizando el comando:

"C:\Program Files\PSTools\psexec.exe" \\(server-alias) -u (server-domain)\(domain-admin) -p (password) C:\Windows\System32\inetsrv\appcmd.exe stop site "Default Web Site"

Esto devuelve el error:

PsExec v1.94 - Execute processes remotely
Copyright (C) 2001-2008 Mark Russinovich
Sysinternals - www.sysinternals.com
Could not start PsExec service on (server-alias):
Access is denied.

Y algunos de los más importantes problemas notas:

  • Este comando funciona cuando se ejecuta desde otra máquina (Windows 2003 R2) en el dominio del servidor. (Intra-dominio)
  • Este comando también funciona cuando se ejecuta en contra de otro equipo que ejecuta Windows 2003 R2 de mi máquina local, dos de los cuales están en dominios diferentes. (Inter-dominio)
  • Utilizando el mismo PsExec comando salvo con ping en lugar de appcmd.exe se produce un error.
  • El comando se ha ejecutado desde la línea de comandos utilizando la opción "Ejecutar como Administrador".
  • Clave de registro DisableStrictNameChecking ha sido configurado en el servidor para permitir alias para ser utilizado.
  • Clave de registro LocalAccountTokenFilterPolicy = 1 se ha configurado en el servidor y el equipo local.
  • Firewall de Windows no se está ejecutando en el servidor.
  • UAC deshabilitado en el equipo local.
  • UAC está activo en el servidor.
  • UAC tiene "modo de Aprobación de Administrador" deshabilitado en el servidor; esto permitió que el comando funcione dentro del dominio (en contraposición a la inter-domain).

Parece una señal de que este es un problema específico de Windows 2008 R2 que es la configuración de seguridad relacionados, probablemente, a lo largo de las líneas de dominio o permisos administrativos. Sin embargo, estoy sin ideas. Cualquier sugerencia sería muy apreciada!

3voto

Me tomó horas para encontrar un modo de trabajo a PsExec entre 2 Equipos con Windows 7 con un usuario que no es Administrador de partida PsExec ... Deshabilitar UAC (EnableLUA=0, ConsentPromptBehaviorAdmin=0, LocalAccountTokenFilterPolicy=1) no funciona, desactivar el Cortafuegos no trabajo...

Aquí he encontrado el modo de trabajo - gracias JelmerS: (Información de PSexec no se conecta a la máquina usando nombre de usuario y contraseña)

Esto es debido a que psexec aún intenta tener acceso al recurso compartido ADMIN$ con sus credenciales locales, antes de ejecutar el comando como otro usuario. De acuerdo a este hilo, puede almacenar en caché las credenciales antes de ejecutar psexec: cmdkey.exe /agregar:MACHINE_NAME_HERE /usuario:MACHINE_NAME_HERE\Administrador /pass:PASSWORD_HERE psexec.exe \MACHINE_NAME_HERE-me bloc de notas cmdkey.exe /eliminar:MACHINE_NAME_HERE

Saludos, Pedro

1voto

Jim B Puntos 18849

Estás ejecutando PSEXEC desde un símbolo del sistema elevado en su vista de la estación de trabajo? Te has fijado LocalAccountTokenFilterPolicy=1? Ver preguntas frecuentes: Común PSTools Problemas

0voto

gWaldo Puntos 9177

No tengo un entorno similar a la prueba, pero lo que te puedo recomendar es este: En el dominio del cliente, configurar archivos de proceso por lotes (.bat), uno para cada sitio web que usted desea reiniciar. (Yo se los llama "restart_site-sitename.bat".) Crear una para cada dominio y guardarlos todos en un directorio en un servidor de administración en ese dominio (donde pongo mi sysad herramientas, donde pueden gestionar todo en el caso de que algo le pasa a mi ordenador portátil), incluyendo PSExec en ese directorio.

psexec.exe \\(server-alias) C:\Windows\System32\inetsrv\appcmd.exe stop site "WebsiteName"

Ahora intente ejecutar psexec para que el servidor de administración, llamando a uno de los archivos de proceso por lotes en lugar.

"C:\Program Files\PSTools\psexec.exe" \\(server-alias) -u (server-domain)\(domain-admin) -p (password) C:path\to\psexec_and_scripts\restart_site-sitename.bat"

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: