Usando runas para ejecutar netsh como administrador

Usando runas para ejecutar netsh como administrador

Estoy intentando realizar algunas depuraciones para un proveedor en una máquina con Windows 7. Necesito ejecutar netshpara establecer un parámetro. Intenté ejecutarlo desde una ventana de cygwin/shell pero aparece el error "Ejecutar como administrador".

Buscando en Google, veo que hay un runascomando que parece funcionar así sudo. Dado que mi cuenta de usuario ( me) es de administrador, intento runas /user:me "netsh ..." recibir un mensaje para mela contraseña de ; Entro en él; netsh(presumiblemente ejecutándose en una nueva cmdventana) parpadea para abrirse y cerrarse; y obtengo un retorno exitoso del comando (es decir, $? == 0).

Pero aparentemente eso no es lo suficientemente bueno ya que el parámetro no se modificó. Finalmente solucioné este problema haciendo "ejecutar como administrador" en un acceso directo al shell (y luego ejecuté netshnormalmente).

¿Cuál es el truco para que Windows runasse dé cuenta de que merealmente es un administrador?

Respuesta1

Existe una diferencia entre iniciar sesión en una cuenta que forma parte del grupo de administradores y ejecutar (a) una cuenta elevada o (b) como cuenta de administrador integrada.

Cada vez que lo ejecuta como administrador, siempre tiene un nivel elevado, por definición. Entonces, si run /user:administratoresa ventana estará elevada cuando se abra, NO recibirá un mensaje de UAC y el netshcomando debería ejecutarse.

Pero debido a que la cuenta de administrador incorporada siempre se ejecuta de forma elevada y no genera mensajes de UAC runas, es un riesgo para la seguridad, especialmente si no tiene una contraseña. Es por esoMicrosoft desactiva la cuenta de Administrador de forma predeterminaday requiere que lo habilites primero:

En Windows® 7, la cuenta de administrador integrada está deshabilitada de forma predeterminada. En versiones anteriores de Windows, se creaba automáticamente una cuenta de administrador durante la experiencia inmediata (OOBE) con una contraseña en blanco.

Una cuenta de administrador con una contraseña en blanco es un riesgo para la seguridad. Para proteger mejor el sistema, la cuenta de administrador integrada está deshabilitada de forma predeterminada en todas las instalaciones limpias y actualizaciones de Windows 7.

Así es como lo habilitas. (Puede abrir MMC escribiendo "mmc" en el cuadro "Ejecutar..." en el menú Inicio).

Cambie las propiedades de la cuenta de administrador mediante Usuarios y grupos locales Microsoft Management Console (MMC).

  1. Abra la consola MMC y seleccione Usuarios y grupos locales.
  2. Haga clic derecho en la cuenta de Administrador y seleccione Propiedades.
  3. Aparece la ventana Propiedades del administrador.
  4. En la pestaña General, desmarque la casilla La cuenta está deshabilitada.
  5. Cierre la consola MMC.

Además, tenga en cuenta que runasNO le permite pasar argumentos al programa que ejecuta:

RUNAS USAGE:

RUNAS [ [/noprofile | /profile] [/env] [/savecred | /netonly] ]
        /user:<UserName> program

RUNAS [ [/noprofile | /profile] [/env] [/savecred] ]
        /smartcard [/user:<UserName>] program

RUNAS /trustlevel:<TrustLevel> program

Si desea ejecutar un comando elevado bajo su propio ID de usuario o si desea pasar argumentos, necesita un genuino sudoo su(comoÉste, parte de mi propiaCarcasa Hamilton C:) con un interludiomarcado en el manifiesto de la aplicacióncomo que requiere elevación. Si lo hace de esa manera, verá un mensaje de UAC.

información relacionada