El archivo sudoers en Linux es el archivo de configuración que define qué usuarios pueden ejecutar comandos con privilegios de administrador usando sudo. Gestionar correctamente este archivo es fundamental para mantener la seguridad y el control de acceso en un sistema Linux.
En esta guía aprenderás qué es el archivo sudoers, dónde se encuentra y cómo configurarlo correctamente.
Si quieres aprender más sobre Linux, revisa nuestra Guía completa de comandos Linux y nuestro Curso de Linux gratis , te ayudarán a dominar la terminal y a sacar el máximo provecho de este artículo.
Qué es el archivo sudoers en Linux
El archivo sudoers controla el uso del comando sudo. En él se especifica:
- Qué usuarios pueden usar sudo
- Qué comandos pueden ejecutar
- En qué sistemas o terminales
- Si necesitan contraseña o no
Gracias a este archivo es posible delegar privilegios administrativos de forma controlada.
Ubicación del archivo sudoers
El archivo principal está en:
/etc/sudoers
También puede haber configuraciones adicionales en:
/etc/sudoers.d/
Este directorio permite añadir reglas separadas para diferentes usuarios o servicios.
Editar el archivo sudoers correctamente
⚠️ Nunca edites el archivo directamente con editores como nano o vim.
Siempre debes utilizar el comando:
sudo visudovisudo verifica la sintaxis antes de guardar los cambios y evita que un error bloquee el acceso administrativo al sistema.
Sintaxis del archivo sudoers
Cada entrada en el archivo sudoers en Linux sigue una estructura específica que define quién puede ejecutar qué comandos y bajo qué condiciones.
La sintaxis general es:
usuario HOST=(USUARIO:GRUPO) COMANDOA continuación se explica el significado de cada elemento.
| Elemento | Ejemplo | Descripción |
|---|---|---|
| Usuario | juan | Usuario al que se aplica la regla. |
| Grupo | %admins | Grupo de usuarios (el símbolo % indica grupo). |
| Host | ALL | Define desde qué host se puede ejecutar sudo. ALL permite cualquier host. |
| Usuario destino | (root) | Usuario como el que se ejecutará el comando. |
| Grupo destino | (root:adm) | Grupo con el que se ejecutará el comando. |
| Comando | /usr/bin/systemctl | Comando que el usuario puede ejecutar con sudo. |
| Todos los comandos | ALL | Permite ejecutar cualquier comando. |
| Sin contraseña | NOPASSWD: | Permite ejecutar comandos sin pedir contraseña. |
Ejemplo completo
juan ALL=(root) /usr/bin/systemctl restart nginxSignifica que:
- El usuario juan (juan)
- desde cualquier host (all)
- puede ejecutar el comando (systemctl restart nginx)
- como usuario root.
Ejemplos de configuración
En el archivo sudoers en Linux puedes definir diferentes tipos de reglas para controlar el acceso a privilegios administrativos. La siguiente tabla muestra algunos ejemplos comunes.
| Configuración | Ejemplo en sudoers | Descripción |
|---|---|---|
| Permitir todos los comandos | usuario ALL=(ALL:ALL) ALL | El usuario puede ejecutar cualquier comando con sudo. |
| Permitir sudo a un grupo | %admins ALL=(ALL:ALL) ALL | Todos los usuarios del grupo admins pueden usar sudo. |
| Ejecutar como otro usuario | usuario ALL=(www-data) ALL | El usuario puede ejecutar comandos como www-data. |
| Permitir solo un comando | usuario ALL=(ALL) /usr/bin/systemctl | El usuario solo puede ejecutar systemctl. |
| Permitir varios comandos | usuario ALL=(ALL) /usr/bin/systemctl, /usr/bin/journalctl | El usuario puede ejecutar varios comandos específicos. |
| Ejecutar sin contraseña | usuario ALL=(ALL) NOPASSWD: ALL | El usuario puede usar sudo sin introducir contraseña. |
| Sin contraseña para un comando | usuario ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart nginx | Solo ese comando se ejecuta sin contraseña. |
| Limitar a un host | usuario servidor1=(ALL) ALL | El usuario solo puede usar sudo desde servidor1. |
Uso del directorio sudoers.d
El directorio:
/etc/sudoers.d/
permite añadir configuraciones separadas.
Ejemplo:
/etc/sudoers.d/devopsContenido:
devops ALL=(ALL) ALLEsto facilita administrar permisos en sistemas con muchos usuarios.
Ver privilegios sudo de un usuario
Para ver qué comandos puede ejecutar un usuario con sudo:
sudo -lEsto muestra las reglas aplicadas desde el archivo sudoers.
Buenas prácticas con el archivo sudoers
Para mantener la seguridad del sistema:
- Editar siempre con visudo
- Usar grupos en lugar de usuarios individuales
- Limitar comandos cuando sea posible
- Evitar configuraciones amplias con NOPASSWD
- Revisar periódicamente los privilegios
Una buena gestión del archivo sudoers en Linux es clave para la administración segura del sistema.
El archivo sudoers en Linux permite controlar de forma precisa quién puede ejecutar comandos con privilegios de administrador.
Comprender su sintaxis y funcionamiento es fundamental para gestionar accesos, delegar tareas administrativas y mantener la seguridad del sistema.

