Cuando trabajas en servidores de prueba con distribuciones de Linux, como Ubuntu, Debian, CentOS o Fedora, a menudo necesitas cambiar configuraciones, instalar paquetes y más. Para ejecutar muchos comandos necesitas permisos de superusuario; para esto, debes iniciar sesión como usuario root o escribir sudo antes del comando e introducir la contraseña.
Aprende también también: 5 Maneras de Deshabilitar la Cuenta Root en Linux
Normalmente no trabajo como superusuario y tengo que introducir la contraseña con bastante frecuencia. Trabajando con Laravel Homestead, noté que no se requiere introducir la contraseña de sudo
, y me pareció muy cómodo, así que decidí eliminar la contraseña en mis otros servidores de prueba.
No recomiendo hacer esto en servidores de producción por razones de seguridad.
Pasos para Desactivar Contraseña Sudo en Linux
Para desactivar la contraseña de sudo
en la mayoría de las distribuciones de Linux, sigue estos pasos:
Abre el archivo /etc/sudoers
en un editor usando visudo
para evitar errores de sintaxis:
sudo visudo
(por supuesto, también puedes usar nano
)
sudo nano /etc/sudoers
Busca la línea correspondiente al grupo sudo
(o wheel
en distribuciones como CentOS, Fedora o RHEL):
%sudo ALL=(ALL) ALL
O, en algunas distribuciones como CentOS/Fedora:
%wheel ALL=(ALL) ALL
Y cámbiala por:
%sudo ALL=(ALL) NOPASSWD: ALL
O, para distribuciones que usan el grupo wheel
:
%wheel ALL=(ALL) NOPASSWD: ALL
Para permitir que un usuario específico ejecute solo algunos comandos sin contraseña (por ejemplo, apt-get
y reboot
), añade esta línea:
nombre_usuario ALL=(ALL) NOPASSWD:/bin/apt-get,/sbin/reboot
Para desactivar la contraseña para un grupo de usuarios específico, añade lo siguiente:
%user_group ALL=(ALL) NOPASSWD:ALL
Luego guarda los cambios y sal del editor (en visudo
con nano
, usa Ctrl+X).
En servidores de proveedores como DigitalOcean, la línea que debes cambiar puede verse así (común en Ubuntu o Debian):
%sudo ALL=(ALL:ALL) ALL
Y la debes cambiar a:
%sudo ALL=(ALL:ALL) NOPASSWD: ALL
En Laravel Homestead (basado en Ubuntu), la línea final es:
%sudo ALL=NOPASSWD:ALL
Notas Adicionales
- En distribuciones basadas en Red Hat (como CentOS, Fedora o RHEL), asegúrate de que el usuario pertenezca al grupo
wheel
(en lugar desudo
) con el comando:
usermod -aG wheel nombre_usuario
- Para grupos personalizados, crea el grupo con
groupadd user_group
y añade usuarios con
usermod -aG user_group nombre_usuario.
- Algunas distribuciones pueden usar configuraciones adicionales en
/etc/sudoers.d/
. Verifica este directorio para reglas específicas. - Siempre usa
visudo
para editar/etc/sudoers
, ya que valida la sintaxis y previene errores que podrían bloquear el acceso administrativo. - Mejor tip: Para mayor seguridad, considera limitar los comandos sin contraseña, por ejemplo:
%sudo ALL=(ALL) NOPASSWD: /usr/bin/apt, /usr/bin/yum, /usr/bin/dnf
Si tienes alguna duda o aporte, puedes dejarla escrita en los comentarios.
¿Qué te parece?
Es bueno conocer tu opinión. Deja un comentario.