22Aug

8 formas de ajustar y configurar Sudo en Ubuntu

click fraud protection

Como la mayoría de las cosas en Linux, el comando sudo es muy configurable. Puede hacer que sudo ejecute comandos específicos sin pedir una contraseña, restringir usuarios específicos a solo comandos aprobados, comandos de registro ejecutados con sudo y más.

El comportamiento del comando sudo está controlado por el archivo sudoers /etc/ en su sistema. Este comando debe editarse con el comando visudo, que realiza la verificación de la sintaxis para garantizar que no se rompa accidentalmente el archivo.

Especifique usuarios con permisos de sudo

La cuenta de usuario que crea al instalar Ubuntu está marcada como una cuenta de administrador, lo que significa que puede usar sudo. Cualquier cuenta de usuario adicional que cree después de la instalación puede ser de cuentas de usuario Administrador o Estándar. Las cuentas de usuario estándar no tienen permisos sudo.

Puede controlar los tipos de cuentas de usuario gráficamente desde la herramienta Cuentas de usuario de Ubuntu. Para abrirlo, haga clic en su nombre de usuario en el panel y seleccione Cuentas de usuario o busque Cuentas de usuario en el tablero.

instagram viewer

Make Sudo Olvídese de su contraseña

De forma predeterminada, sudo recuerda su contraseña durante 15 minutos después de que la haya escrito. Es por eso que solo debe ingresar su contraseña una vez cuando ejecute varios comandos con sudo en sucesión rápida. Si está por dejar que otra persona use su computadora y desea que sudo solicite la contraseña cuando se ejecute a continuación, ejecute el siguiente comando y sudo olvidará su contraseña:

sudo -k

Siempre solicite una contraseña

SiMás bien se le preguntará cada vez que use sudo, por ejemplo, si otras personas tienen acceso regularmente a su computadora, puede desactivar por completo el comportamiento de recordar contraseña.

Esta configuración, al igual que otras configuraciones de sudo, está contenida en el archivo sudoers /etc/.Ejecute el comando visudo en un terminal para abrir el archivo y edítelo:

sudo visudo

A pesar de su nombre, este comando se configura por defecto como el nuevo editor nano fácil de usar en lugar del editor tradicional vi en Ubuntu.

Agregue la siguiente línea debajo de las otras líneas predeterminadas en el archivo:

Predeterminado timestamp_timeout = 0

Presione Ctrl + O para guardar el archivo, y luego presione Ctrl + X para cerrar Nano. Sudo ahora siempre le pedirá una contraseña.

Cambiar el tiempo de espera de contraseña

Para establecer un tiempo de espera de contraseña diferente, ya sea uno más largo, como 30 minutos o uno más corto, como 5 minutos, siga los pasos anteriores pero use un valor diferente para timestamp_timeout. El número corresponde a la cantidad de minutos que sudo recordará su contraseña. Para tener sudo recuerde su contraseña durante 5 minutos, agregue la siguiente línea:

Valor predeterminado timestamp_timeout = 5

Nunca pida una contraseña

También puede tener sudo Nunca pida una contraseña - siempre que inicie sesión, cada comando queel prefijo con sudo se ejecutará con permisos de root. Para ello, agregue la siguiente línea a su archivo sudoers, donde nombre de usuario es su nombre de usuario:

nombre de usuario ALL =( ALL) NOPASSWD: ALL

También puede cambiar la línea% sudo, es decir, la línea que permite a todos los usuariossudo group( también conocido como usuarios de administrador) para usar sudo - para que todos los usuarios de administrador no requieran contraseñas:

% sudo ALL =( ALL: ALL) NOPASSWD: ALL

Ejecute comandos específicos sin una contraseña

También puede especificar comandos específicos quenunca requerirá una contraseña cuando se ejecute con sudo. En lugar de usar "ALL" después de NOPASSWD arriba, especifique la ubicación de los comandos. Por ejemplo, la siguiente línea permitirá que su cuenta de usuario ejecute los comandos apt-get y shutdown sin una contraseña.

nombre de usuario ALL =( ALL) NOPASSWD: /usr/bin/ apt-get, /sbin/ shutdown

Esto puede ser particularmente útil al ejecutar comandos específicos con sudo en un script.

Permitir que un usuario ejecute solo comandos específicos

Aunque puede enlistar comandos específicos e impedir que los usuarios los ejecuten con sudo, esto no es muy efectivo. Por ejemplo, puede especificar que una cuenta de usuario no pueda ejecutar el comando shutdown con sudo. Pero esa cuenta de usuario podría ejecutar el comando cp con sudo, crear una copia del comando shutdown y apagar el sistema utilizando la copia.

Una forma más efectiva es incluir en la lista blanca comandos específicos. Por ejemplo, podría otorgar a una cuenta de usuario estándar permiso para usar los comandos apt-get y shutdown, pero no más. Para hacerlo, agregue la siguiente línea, donde el usuario estándar es el nombre de usuario del usuario:

standarduser ALL = /usr/bin/ apt-get, /sbin/ shutdown

El siguiente comando nos dirá qué comandos puede ejecutar el usuario con sudo:

sudo -U standarduser -l

Logging Sudo Access

Puede registrar todos los accesos de sudo agregando la siguiente línea. /var/log/ sudo es solo un ejemplo;puede usar cualquier ubicación de archivo de registro que desee.

Valor predeterminado archivo de registro = /var/log/ sudo

Vea el contenido del archivo de registro con un comando como este:

sudo cat /var/log/ sudo

Tenga en cuenta que, si un usuario tiene acceso sudo no restringido, ese usuario tiene la capacidad de eliminar o modificar elcontenido de este archivo. Un usuario también podría acceder a un indicador raíz con los comandos sudo y run que no se registrarían. La función de registro es más útil cuando se combina con cuentas de usuario que tienen acceso restringido a un subconjunto de comandos del sistema.