Ahora que tenemos una cuenta de usuario regular creada, explicaremos cómo utilizarla para realizar tareas de gestión de usuarios.
Para conceder los permisos de superusuario, tendremos que añadir una entrada para ello en /etc/sudoers . Este archivo se utiliza para indicar qué usuarios pueden ejecutar qué comandos con permisos elevados (muy probablemente como root).
Paso 1 – Abrir el /etc/sudo con visudo
Aunque /etc/sudoers no es ni más ni menos que un archivo de texto plano, NO debe ser editado con un editor de texto normal. En su lugar, usaremos el comando visudo. A diferencia de otros editores de texto, al utilizar visudo nos aseguraremos de que 1) nadie más pueda modificar el archivo al mismo tiempo, y 2) se compruebe la sintaxis del archivo al guardar los cambios.
Para lanzar Visudo, sólo tienes que escribir el comando y pulsar Intro. No te olvides de hacer
1sudo visudo
bash
en cambio si estás en Ubuntu. En cualquier caso, el archivo se abrirá usando tu editor de texto predeterminado.
Paso 2 – Agregar una entrada en /etc/sudoers para la nueva cuenta de usuario
El método más fácil para conceder permisos de superusuario es añadiendo la siguiente línea al final de /etc/sudoers :
1 ALL=(ALL) ALL
bash
Expliquemos la sintaxis de esta línea:
- En primer lugar, indicamos a qué usuario se refiere esta regla ().
- El primer TODO significa que la regla se aplica a todos los huéspedes que usan el mismo archivo /etc/sudoers. Hoy en día, esto significa el anfitrión actual ya que el mismo archivo no se comparte entre otras máquinas.
- A continuación, (TODOS) TODOS nos dice que se le permitirá ejecutar todos los comandos como cualquier usuario. Funcionalmente hablando, esto es equivalente a (root) ALL.
Paso 3 (Opcional): Crear Alias de Comando
Como alternativa al uso de los amplios permisos descritos anteriormente, podemos restringir la lista de comandos que pueden ser ejecutados por un usuario determinado agrupándolos en conjuntos conocidos como alias .
Por ejemplo, puede que queramos permitir que el usuario sólo use adduser y usermod, pero no otros comandos. Para ello, podemos enumerar los comandos uno por uno (utilizando las correspondientes rutas absolutas) al final de la misma entrada:
1 ALL=(root) /usr/sbin/adduser, /usr/sbin/usermod
o definir un alias (que podemos nombrar como queramos siempre y cuando sea en mayúsculas, por ejemplo USERMANAGEMENT ):
12Cmnd_Alias USERMANAGEMENT = /usr/sbin/adduser, /usr/sbin/usermod ALL=(root) USERMANAGEMENT
Mientras que el segundo requiere dos líneas, a menudo se prefiere en lugar del primero porque contribuye a mantener /etc/sudoers más limpio. En cualquier caso, no podrá ejecutar ningún otro comando como root que no sea el especificado anteriormente.
Al guardar, visudo le avisará si se encuentra un error de sintaxis en el archivo, e indicará la línea donde se encuentra el error para que pueda identificarlo más fácilmente.