Sudo para Windows
Sudo para Windows es una nueva forma de que los usuarios ejecuten comandos elevados (como administrador) directamente desde una sesión de consola no elevada en Windows.
Lea el anuncio, que incluye un video de demostración y profundizar en cómo funciona Sudo para Windows.
El comando Sudo para Windows está disponible en Windows 11, versión 24H2 o posterior. (Buscar actualizaciones de Windows).
Nota
Sudo para Windows aún no está disponible para Windows 10, pero es posible que lo esté en el futuro.
Para habilitar Sudo para Windows, abra Settings > For Developers
y establezca Habilitar sudo como Activado.
Advertencia
Sudo para Windows puede ser utilizado como un vector potencial de escalada de privilegios cuando está habilitado en ciertas configuraciones. Debe asegurarse de tener en cuenta las consideraciones de seguridad al habilitar el comando sudo en el equipo.
Sudo para Windows admite actualmente tres opciones de configuración diferentes. La configuración se puede establecer desde el Settings > For Developers
menú o mediante programación mediante la línea de comandos. Las opciones de configuración incluyen:
En una nueva ventana (
forceNewWindow
): laforceNewWindow
opción de configuración es la opción de configuración predeterminada para Sudo para Windows. Utilícelosudo
en esta configuración para ejecutar el comando en una nueva ventana. Esto es similar al comportamiento delrunas /user:admin
comando.La opción de configuración Entrada cerrada (
disableInput
): ladisableInput
ejecutará el proceso con privilegios elevados en la ventana actual, pero con el identificador de entrada cerrado. Esto significa que el proceso elevado no podrá recibir entradas de la ventana de consola actual. Esto es útil para situaciones en las que desea ejecutar un comando como administrador, pero no desea permitir que el comando reciba entradas desde la ventana de la consola actual. Esta opción de configuración proporciona parte de la comodidad de lainline
opción de configuración a la vez que mitiga algunos de los riesgos de seguridad asociados.En línea (
normal
): lanormal
opción de configuración es más similar a cómo se comporta sudo en otros sistemas operativos. Esta configuración ejecutará el proceso con privilegios elevados en la ventana actual y el proceso podrá recibir la entrada de la sesión de consola actual. Esto es útil para situaciones en las que desea ejecutar un comando como administrador y desea permitir que el comando reciba entradas desde la ventana de la consola actual. Esta opción de configuración proporciona la mayor comodidad, pero solo debe elegir esta opción si está familiarizado con los riesgos de seguridad asociados.
Puede seleccionar entre estas configuraciones en el Settings > For Developers
menú o cambiar la configuración mediante programación, en una línea de comandos con privilegios elevados (consola de administración), mediante:
sudo config --enable <configuration_option>
Actualice <configuration_option>
a forceNewWindow
, disableInput
o normal
.
Para usar Sudo para Windows, basta con anteponer sudo
al comando que desea ejecutar como administrador. Por ejemplo, para ejecutar netstat -ab
como administrador, ejecutaría sudo netstat -ab
en la ventana de la consola.
Dado que sudo
eleva el proceso de destino para que se ejecute con el permiso de nivel de administrador, se abrirá un mensaje que le pedirá que compruebe que desea continuar.
Existen riesgos asociados a la ejecución de sudo en las configuraciones De entrada cerrada (inputClosed
) o Inline (normal
). Es posible que procesos maliciosos intenten manejar el proceso elevado utilizando la conexión establecida por el proceso sudo.exe no elevado y el proceso sudo.exe elevado.
La opción de configuración inputClosed
mitiga el riesgo cerrando el identificador de entrada. Desconectar el controlador de entrada de la ventana de consola actual significa que los procesos no elevados no pueden enviar entradas al proceso elevado.
La opción de configuración inline
ejecuta el proceso con privilegios elevados en la ventana actual y el proceso puede recibir la entrada de la sesión de consola actual. Un proceso no elevado puede enviar entrada al proceso elevado dentro de las mismas ventanas de la consola u obtener información de la salida en las ventanas actuales en esta configuración.
El comando sudo
ofrece una manera de elevar rápidamente un comando como administrador desde el contexto actual de la línea de comandos sin elevar y es familiar para algunos usuarios procedentes de otros sistemas operativos. El comando runas
ofrece una manera de ejecutar programas como cualquier usuario, incluido el administrador si lo desea. En este momento, el comando sudo
en Windows no admite la ejecución de programas como otros usuarios. Otras diferencias clave entre sudo
y runas
incluyen:
runas
permite ejecutar programas como otros usuarios, incluidos, entre otros, como administrador. Esta funcionalidad está en el plan de desarrollo del comando sudo, pero aún no existe.sudo
permite elevar rápidamente un proceso (como administrador):- Puede optar por hacerlo en una nueva ventana, que se parece al flujo de administrador
runas
. - Puede optar por conectar el proceso con privilegios elevados a la ventana de consola actual con las opciones de configuración
disableInput
ynormal
. Esto no es compatible conrunas
.
- Puede optar por hacerlo en una nueva ventana, que se parece al flujo de administrador
runas
puede solicitar a los usuarios una contraseña en la línea de comandos.sudo
solo se puede elevar a través de la característica de seguridad Control de cuentas de usuario (UAC) diseñada para proteger el sistema operativo frente a cambios no autorizados mediante la solicitud de comprobación.
Debe tener en cuenta su caso de uso particular y planificar el uso del comando que mejor se adapte a sus necesidades. También debe tener en cuenta las implicaciones de seguridad de ejecutar sudo en los modos inputClosed
y normal
. Se recomienda la opción de configuración predeterminada forceNewWindow
a menos que esté familiarizado y cómodo con los riesgos asociados a las otras configuraciones sudo
.
Sudo para Windows es de código abierto y agradece tus contribuciones y comentarios. Puede encontrar el código fuente de Sudo para Windows en GitHub.
Si busca funciones adicionales que Sudo para Windows no ofrece, consulte gsudo de Gerardo Grignoli, que tiene una serie de características y opciones de configuración adicionales o echa un vistazo a otras soluciones de la comunidad.
Comentarios de Windows developer
Windows developer es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios: