Como administrador de Linux, debe saber cómo agregar, eliminar y otorgar privilegios de sudo a los usuarios A veces, es posible que haya dado acceso sudo temporal a un usuario normal para instalar un software o realizar ciertas tareas administrativas por su cuenta. Con el tiempo, es posible que nos olvidemos de revocar los privilegios de sudo. Por lo tanto, es una buena práctica verificar cuántos superusuarios hay en su sistema Linux de vez en cuando. Si hay algún acceso sudo olvidado o no deseado, simplemente puede revocarlo. Esta breve guía explica cómo encontrar todos los usuarios de sudo en sistemas operativos Linux y similares a Unix.
Descarga recomendada - Hoja de referencia gratuita:"Hoja de referencia de la línea de comandos de Linux"
Lista de usuarios de sudo en Linux
Primero enumeremos todos los usuarios en el sistema. Para hacerlo, ejecute:
$ awk -F':' '{ print $1}' /etc/passwd
Salida de muestra de mi sistema Ubuntu:
root daemon bin sys sync games man lp mail news uucp proxy www-data backup list irc gnats nobody systemd-timesync systemd-network systemd-resolve systemd-bus-proxy syslog _apt lxd messagebus uuidd dnsmasq sshd sk senthil kumar ostechnix
Otra forma de enumerar todos los usuarios en un sistema Linux es:
$ compgen -u
Ahora busquemos solo los sudo o superusuarios en nuestro sistema Linux con el comando:
$ grep '^sudo:.*$' /etc/group | cut -d: -f4 sk,ostechnix
También puedes usar "getent"
comando en lugar de "grep"
para obtener el mismo resultado.
$ getent group sudo | cut -d: -f4 sk,ostechnix
Como puede ver en el resultado anterior, "sk" y "ostechnix" son los usuarios de sudo en mi sistema.
Averigüe si un usuario tiene privilegios sudo
Ahora sabemos cómo encontrar todos los usuarios de sudo en nuestro sistema Linux. ¿Cómo saber si un determinado usuario tiene privilegios de sudo o no? ¡Eso es fácil!
Para averiguar si un usuario es usuario sudo, simplemente ejecute
$ sudo -l -U sk
Salida de muestra:
Matching Defaults entries for sk on ubuntuserver: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin User sk may run the following commands on ubuntuserver: (ALL : ALL) ALL
Como puede ver, el usuario llamado "sk" puede ejecutar todos los comandos. Entonces, él está en el grupo sudo.
Vamos a comprobar otro usuario.
$ sudo -l -U senthil
Salida de muestra:
User senthil is not allowed to run sudo on ubuntuserver.
Bueno, el usuario "senthil" no puede ejecutar sudo. ¡Él es solo un usuario normal!
También podemos encontrar si un usuario tiene acceso sudo ejecutando el siguiente comando:
$ sudo -nv
Si no obtiene nada como resultado, el usuario tiene acceso a sudo.
Si ve un resultado como el siguiente, entonces el usuario no tiene acceso a sudo.
$ sudo -nv Sorry, user senthil may not run sudo on ubuntuserver.
Lectura sugerida:
- Cómo otorgar y quitar privilegios de Sudo a los usuarios de Ubuntu
- Cómo cambiar el archivo de registro Sudo predeterminado en Linux
- Cómo restaurar los privilegios de Sudo a un usuario
- Cómo ejecutar comandos particulares sin contraseña Sudo en Linux
- Cómo forzar a los usuarios a usar la contraseña de root en lugar de su propia contraseña cuando usan sudo