GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Désactiver l'autorisation Sudo pour l'utilisateur à partir de la ligne de commande ?

J'ai activé l'utilisateur root dans Ubuntu et je souhaite utiliser Ubuntu comme serveur sans DE. Pour cela, je souhaite désactiver le privilège sudo accordé au premier utilisateur. Comment puis-je faire cela depuis la ligne de commande ? Je sais que je peux utiliser une interface graphique mais comment le faire depuis la ligne de commande ?

Réponse acceptée :

L'utilisateur en question a des privilèges sudo car il se trouve dans l'admin grouper. Comme wojox l'a commenté, vous pouvez utiliser visudo et supprimer les privilèges sudo du groupe admin, mais cela supprimerait les capacités sudo de tous membres du groupe admin et pas seulement un seul utilisateur.

Vous pouvez également supprimer l'utilisateur du groupe admin. Si orienté écran vi est considéré comme une ligne de commande suffisante, exécutez vigr et supprimez le nom d'utilisateur de la ligne appropriée.

Pour une solution de ligne de commande "pure", essayez gpasswd , car il administre /etc/group et peut ajouter et supprimer des utilisateurs de groupes.

[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

Voici ma première réponse avant de réaliser qu'il y avait une façon moins stupide de le faire.

Si vous souhaitez une manière plus compliquée de le faire, vous pouvez utiliser usermod .

Voici une citation du usermod page de manuel :

-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.

Vous devez donc spécifier tous les groupes pour l'utilisateur sauf pour 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)

Enfin, cela viole l'esprit de la question, mais on pourrait taper users-admin depuis la ligne de commande pour modifier les utilisateurs et les groupes.

En relation :Comment se connecter à SQL Server à l'aide de l'utilisateur AD ?
Ubuntu
  1. Comment couper le son depuis la ligne de commande ?

  2. Désactiver la répétition du clavier à partir de la ligne de commande ?

  3. su - utilisateur Vs sudo su - utilisateur

  4. Tester les informations d'identification MySQL à partir de la ligne de commande Linux ?

  5. Nagios :Désactiver les notifications depuis la ligne de commande sous Windows/Linux

Comment vider la corbeille dans Ubuntu à partir de la ligne de commande

Principes de base de la ligne de commande Linux :sudo

Comment devenir utilisateur root dans la ligne de commande Ubuntu en utilisant su et sudo

Mettre à niveau Ubuntu 18.04 vers Ubuntu 19.04 directement à partir de la ligne de commande

Mettre à niveau Ubuntu 18.04 vers Ubuntu 19.10 directement à partir de la ligne de commande

Comment activer et désactiver les extensions Gnome à partir de la ligne de commande ?