GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Deshabilitar el permiso Sudo para el usuario desde la línea de comandos?

He activado el usuario raíz en ubuntu y quiero usar ubuntu como servidor sin DE. Para esto, quiero deshabilitar el privilegio sudo otorgado al primer usuario. ¿Cómo puedo hacer esto desde la línea de comando? Sé que puedo usar una GUI, pero ¿cómo hacerlo desde la línea de comandos?

Respuesta aceptada:

El usuario en cuestión tiene privilegios sudo porque está en el admin grupo. Como comentó wojox, podrías usar visudo y eliminar los privilegios de sudo del grupo de administración, pero eso eliminaría las capacidades de sudo de todos miembros del grupo de administración, no solo el usuario.

Como alternativa, puede eliminar al usuario del grupo de administración. Si está orientado a la pantalla vi se considera línea de comando suficiente, ejecute vigr y elimine el nombre de usuario de la línea correspondiente.

Para una solución de línea de comandos "pura", pruebe gpasswd , ya que administra /etc/group y puede agregar y eliminar usuarios de grupos.

[email protected]:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare
                                         # ^- the group to remove
[email protected]:~# gpasswd -d username admin
Removing user username from group admin

[email protected]:~# id -Gn username
username adm dialout cdrom plugdev lpadmin sambashare
                                        # ^- username not a member
[email protected]:~# gpasswd -a username admin
Adding user username to group admin
[email protected]:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare

A continuación, mi primera respuesta antes de darme cuenta de que había una forma menos tonta de hacerlo.

Si desea una forma más complicada de hacer esto, puede usar usermod .

Aquí hay una cita del usermod página man:

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
    A list of supplementary groups which the user is also a member of.
    Each group is separated from the next by a comma, with no intervening
    whitespace. The groups are subject to the same restrictions as the
    group given with the -g option.

    If the user is currently a member of a group which is not listed, the
    user will be removed from the group. This behaviour can be changed via
    the -a option, which appends the user to the current supplementary group
    list.

Por lo tanto, debe especificar todos los grupos para el usuario excepto admin .

[email protected]:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),119(admin),122(sambashare)

[email protected]:~# usermod -G 4,20,24,46,111,122 username

[email protected]:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),122(sambashare)

Finalmente, viola el espíritu de la pregunta, pero uno podría escribir users-admin desde la línea de comandos para modificar usuarios y grupos.

Relacionado:¿Cómo iniciar sesión en SQL Server usando el usuario de AD?
Ubuntu
  1. ¿Cómo silenciar desde la línea de comandos?

  2. ¿Cómo montar automáticamente desde la línea de comandos?

  3. ¿Deshabilitar la repetición del teclado desde la línea de comandos?

  4. ¿Ejecutando Software-center desde la línea de comandos como root?

  5. su - usuario Vs sudo su - usuario

Cómo vaciar la papelera en Ubuntu desde la línea de comandos

Conceptos básicos de la línea de comandos de Linux:sudo

Cómo convertirse en usuario raíz en la línea de comandos de Ubuntu usando su y sudo

Actualice Ubuntu 18.04 a Ubuntu 19.04 directamente desde la línea de comandos

Actualice Ubuntu 18.04 a Ubuntu 19.10 directamente desde la línea de comandos

¿Cómo habilitar y deshabilitar las extensiones de Gnome desde la línea de comandos?