
Este tutorial explica cómo agregar, eliminar y otorgar Sudo privilegios a los usuarios en el sistema operativo Ubuntu Linux. La guía se prueba oficialmente en las ediciones Ubuntu 22.04 y 20.04 LTS. Sin embargo, los pasos que se proporcionan a continuación son los mismos para otras distribuciones basadas en Ubuntu, como Pop!_OS.
Antes de entrar en materia, veamos qué es sudo y sus beneficios.
1. ¿Qué es Sudo?
En los sistemas operativos Linux y Unix, hay un usuario especial llamado: raíz. Él root
el usuario puede hacer cualquier cosa en un sistema tipo Unix.
Usar un usuario root para las actividades del día a día puede ser peligroso y no se recomienda. ¡Un comando incorrecto puede destruir todo el sistema! Aquí es donde el «sudo» viene en ayuda.
Sudo permite a los usuarios autorizados realizar tareas con privilegios de nivel raíz, incluso si no conocen la contraseña del usuario raíz.
Por eso es importante crear un usuario regular y agregarlo al grupo de usuarios sudo para realizar tareas administrativas. Por lo tanto, este usuario puede actuar como usuario normal y usuario administrativo al ejecutar comandos con el prefijo sudo.
2. Beneficios de ser Sudo
- No tiene que compartir la contraseña de root con otros usuarios.
- Los usuarios no necesitan conocer la contraseña de usuario root para realizar tareas administrativas.
- Al realizar una tarea administrativa, se solicitará a los usuarios la contraseña de sudo antes de que se produzcan cambios en el sistema. Debe hacer que los usuarios piensen en las consecuencias de lo que están haciendo.
- Los derechos de administrador se pueden otorgar fácilmente a los usuarios y revocar en cualquier momento si ya no los necesitan.
- Algunas distribuciones de Linux, por ejemplo Ubuntu, deshabilitan al usuario root por defecto. Por lo tanto, no hay forma de lanzar ataques de fuerza bruta contra el usuario raíz. Incluso si alguien lo intentara, sería inútil. Porque no hay una contraseña de root que descifrar.
- Más importante aún, la sesión de Sudo se agotará después de un breve período. En caso de que haya dejado la terminal abierta después de ejecutar algunos comandos con permiso sudo, la autenticación caduca automáticamente. Por lo tanto, los otros usuarios no pueden realizar más tareas administrativas. De forma predeterminada, la contraseña de sudo se recuerda durante 15 minutos en la sesión actual. Después de eso, debe ingresar la contraseña nuevamente.
- Puede monitorear la actividad de la línea de comandos de los usuarios de sudo. sudo agrega una entrada de registro de los comandos ejecutados por los usuarios en Archivo /var/log/auth.log. Si hay un problema, puede examinar esos comandos e intentar averiguar qué salió mal.
Estas son algunas de las ventajas de ser un usuario de Sudo. Ahora, avancemos y veamos cómo agregar, eliminar y otorgar privilegios de Sudo a los usuarios en Ubuntu Linux.
Primero, crearemos un usuario normal.
3. Agregar nuevo usuario en Ubuntu Linux
Primero, vamos a crear un usuario regular, por ejemplo «centinela».
Para hacerlo, ejecuta:
$ sudo adduser senthil
Reemplace «senthil» con su propio nombre de usuario.
Salida de muestra:
Adding user `senthil' ... Adding new group `senthil' (1001) ... Adding new user `senthil' (1001) with group `senthil' ... Creating home directory `/home/senthil' ... Copying files from `/etc/skel' ... New password: BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: password updated successfully Changing the user information for senthil Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y
Acabamos de crear un nuevo usuario llamado «senthil». A este usuario aún no se le ha dado acceso a sudo. Por lo tanto, no puede realizar ninguna tarea administrativa.
Puede verificar si un usuario tiene acceso a Sudo o no, como se muestra a continuación.
$ sudo -l -U senthil
Salida de muestra:
User senthil is not allowed to run sudo on ubuntu2204.

4. Otorgue privilegios de Sudo a los usuarios en Ubuntu Linux
Agregue el usuario recién creado a grupo sudo usando el siguiente comando:
$ sudo adduser senthil sudo
Salida de muestra:
Adding user `senthil' to group `sudo' ... Adding user senthil to group sudo Done.

Otorgamos permiso de sudo al usuario «senthil».
También puede usar el siguiente comando para agregar un usuario al grupo Sudo.
$ sudo usermod -aG sudo senthil
Para verificar si el usuario está agregado en el grupo sudo, ejecute:
$ sudo -l -U senthil
Salida de muestra:
Matching Defaults entries for senthil on ubuntu2204: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin, use_pty User senthil may run the following commands on ubuntu2204: (ALL : ALL) ALL

Aquí el «(TODOS: TODOS) TODOS» line significa que el usuario tiene privilegios ilimitados y puede ejecutar cualquier comando en el sistema. En nuestro caso, el «centinela» el usuario ha sido añadido a la grupo de usuarios sudo . A partir de ahora, puede realizar todo tipo de tareas administrativas.
Si abre el contenido del sudoers expediente;
$ sudo cat /etc/sudoers
Vería algunas líneas como a continuación.
# User privilege specification root ALL=(ALL:ALL) ALL # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "@include" directives: @includedir /etc/sudoers.d
Como puede ver en el resultado anterior, todos los miembros del grupo sudo pueden ejecutar cualquier comando.
- El primer TODO son los usuarios permitidos.
- El segundo TODO son los anfitriones. Si distribuye el mismo archivo «sudoers» a muchas computadoras host, el usuario puede ejecutar comandos administrativos en todos los hosts.
- El tercero es el usuario mientras ejecuta el comando.
- El último son los comandos permitidos.
Nota: En algunos sistemas Linux, por ejemplo Arch Linux, necesita instalar «sudo» paquete antes de crear un nuevo usuario sudo.
# pacman -S sudo
En Debian:
# apt install sudo
En las ediciones de escritorio y servidor de Ubuntu, «sudo» está instalado de forma predeterminada.
5. Verificar usuarios de Sudo
Para verificar si el usuario puede realizar tareas administrativas, cierre la sesión y vuelva a iniciar sesión como el nuevo usuario.
Alternativamente, puede cambiar instantáneamente a otro usuario, sin tener que cerrar sesión en la sesión actual, como se muestra a continuación.
$ sudo -i -u
Ejemplo:
$ sudo -i -u senthil
Cambiamos al usuario «senthil».
Ahora, ejecute cualquier comando con el prefijo «sudo» como se muestra a continuación.
$ sudo apt update

Sí, el usuario «senthil puede ejecutar comandos administrativos con privilegios sudo.
6. Eliminar el acceso a Sudo de los usuarios
Puede eliminar los permisos de sudo de un usuario sin tener que eliminarlo por completo.
Precaución: Debe tener cuidado al hacer esto en sistemas Ubuntu. No elimine al administrador real del grupo «sudo». Allá debe haber al menos un usuario sudo en el sistema.
Primero, asegúrese de haber cerrado la sesión del usuario «senthil» y haber iniciado sesión como otro usuario de sudo.
Para revocar los permisos de sudo de un usuario (por ejemplo, senthil), el comando sería:
$ sudo deluser senthil sudo
El comando anterior eliminará al usuario llamado «senthil» del grupo «sudo».
Salida de muestra:
Removing user `senthil' from group `sudo' ... Done.
Tenga en cuenta que este comando solo eliminará al usuario ‘senthil’ del grupo sudo, pero no lo eliminará permanentemente del sistema.
Alternativamente, ejecute el siguiente comando para revocar el permiso sudo del usuario:
$ sudo gpasswd -d senthil sudo
Ahora, el usuario se convierte en un usuario normal y no puede realizar ninguna tarea administrativa con el permiso sudo.
Para verificar si el usuario realmente ha sido eliminado del grupo «sudo», ejecute:
$ sudo -l -U senthil
Salida de muestra:
User senthil is not allowed to run sudo on ubuntu2204.

El permiso sudo ha sido eliminado del usuario.
7. Eliminar usuarios de forma permanente
En el paso anterior, solo hemos eliminado a los usuarios del grupo «sudo». Pero el usuario todavía existe en el sistema. Para eliminar completamente a un usuario de un sistema Linux, inicie sesión como usuario root o sudo y ejecute:
$ sudo deluser
Ejemplo:
$ sudo deluser senthil
Si desea eliminar un usuario junto con su directorio de inicio y la cola de correo, ejecute:
$ sudo deluser --remove-home senthil
Salida de muestra:
Looking for files to backup/remove ... Removing files ... Removing user `senthil' ... Warning: group `senthil' has no more members. Done.
Para obtener más detalles, consulte las páginas del manual para adduser
, deluser
y sudo
comandos
$ man adduser
$ man deluser
$ man sudo
Esta guía también está disponible para otras distribuciones de Linux. Consulte las siguientes guías para agregar, eliminar y otorgar privilegios de sudo a los usuarios en las distribuciones Alpine Linux, Arch Linux, CentOS y Fedora Linux.
8. Conclusión
En este tutorial detallado, vimos varias cosas importantes sobre sudo. Primero, le dimos una breve introducción a sudo y sus beneficios. Luego discutimos cómo agregar, eliminar y otorgar privilegios de sudo a los usuarios en el sistema operativo Ubuntu 22.04 LTS. Finalmente, vimos cómo revocar el permiso de sudo y cómo eliminar al usuario de forma permanente.
Aunque está escrito específicamente para Ubuntu, este método es bastante similar para otros sistemas basados en Ubuntu y DEB.
.