Acceder al archivo sudoers mediante visudo

En todo sistema Linux existen tareas que deben llevarse a cabo utilizando permisos administrativos (también conocidos como permisos de superusuario) debido a que impactan el funcionamiento del sistema en su totalidad (como por ejemplo, instalar programas, iniciar o detener servicios, modificar permisos, etc), u de otros usuarios (agregar nuevas cuentas o modificar otras existentes como vimos en este post). En este post explicaremos qué es el archivo sudoers y cómo utilizarlo para permitir que un usuario «común» pueda realizar ciertas tareas administrativas seleccionadas sin tener que convertirse en root.

El archivo sudoers y visudo

A través del archivo /etc/sudoers, el administrador del sistema puede especificar una serie de comandos que un usuario dado puede ejecutar con privilegios administrativos. A pesar de tratarse de un archivo de texto plano (como podemos ver en la Fig. 1), NO debe editarse utilizando un editor de texto directamente, sino que debe hacerse mediante el comando visudo:

El archivo sudoers
Figura 1 – El archivo sudoers

Si el comando visudo no estuviera disponible en Debian debemos instalar el paquete sudo primero: aptitude install sudo

Al tipear visudo y presionar Enter, se abrirá el archivo en modo de edición (típicamente con vi), pero con la ventaja que al mismo tiempo bloqueará el acceso a otro usuario que intente editarlo. Además, al guardar los cambios (siempre utilizando los métodos de vi o del editor de texto que utilice visudo) se realizará un chequeo para identificar posibles errores de sintaxis en el archivo.

Si intentamos editar el archivo /etc/sudoers directamente desde un editor de texto (sin utilizar visudo), veremos una advertencia que nos dirá que estamos intentando editar un archivo de sólo lectura, incluso cuando seamos root.

Por el momento es recomendable que abramos el archivo sudoers y dediquemos un tiempo a inspeccionar los comentarios explicativos que encontramos en el mismo. En el próximo post veremos ejemplos concretos sobre cómo editar este archivo para permitir que un usuario (o varios) realicen una tarea con permisos de superusuario. ¡No se lo pierdan!