GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Sudo-Berechtigung für Benutzer von der Befehlszeile aus deaktivieren?

Ich habe den Root-Benutzer in Ubuntu aktiviert und möchte Ubuntu als Server ohne DE verwenden. Dazu möchte ich das sudo-Privileg deaktivieren, das dem ersten Benutzer gegeben wurde. Wie kann ich das über die Kommandozeile machen? Ich weiß, dass ich eine GUI verwenden kann, aber wie mache ich das über die Befehlszeile?

Akzeptierte Antwort:

Der betreffende Benutzer hat sudo-Berechtigungen, da er sich im admin befindet Gruppe. Wie wojox kommentierte, könnten Sie visudo verwenden und sudo-Berechtigungen aus der Admin-Gruppe entfernen, aber das würde sudo-Fähigkeiten von allen entfernen Mitglieder der Admin-Gruppe, nicht nur der eine Benutzer.

Alternativ können Sie den Benutzer aus der Admin-Gruppe entfernen. Wenn bildschirmorientiert vi als Befehlszeile genug angesehen wird, führen Sie vigr aus und löschen Sie den Benutzernamen aus der entsprechenden Zeile.

Versuchen Sie für eine „reine“ Befehlszeilenlösung gpasswd , da es /etc/group verwaltet und Benutzer zu Gruppen hinzufügen und löschen kann.

[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

Unten ist meine erste Antwort, bevor mir klar wurde, dass es einen weniger dummen Weg gibt.

Wenn Sie dies auf kompliziertere Weise tun möchten, können Sie usermod verwenden .

Hier ist ein Zitat aus dem usermod Manpage:

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

Sie müssen also alle Gruppen für den Benutzer außer admin angeben .

[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)

Schließlich verstößt es gegen den Geist der Frage, aber man könnte users-admin eingeben von der Befehlszeile aus, um Benutzer und Gruppen zu ändern.

Verwandt:Wie melde ich mich mit einem AD-Benutzer bei SQL Server an?
Ubuntu
  1. Führen Sie einen Sudo-Befehl aus und geben Sie das Passwort in derselben Zeile an?

  2. Wie kann man von der Befehlszeile aus stummschalten?

  3. Ausführen von Software-Center von der Befehlszeile als Root?

  4. su - Benutzer Vs sudo su - Benutzer

  5. Clonezilla von der Befehlszeile

So leeren Sie den Papierkorb in Ubuntu über die Befehlszeile

Grundlagen der Linux-Befehlszeile:sudo

So werden Sie Root-Benutzer in der Ubuntu-Befehlszeile mit su und sudo

Aktualisieren Sie Ubuntu 18.04 auf Ubuntu 19.04 direkt über die Befehlszeile

Aktualisieren Sie Ubuntu 18.04 auf Ubuntu 19.10 direkt über die Befehlszeile

Wie aktiviere und deaktiviere ich Gnome-Erweiterungen über die Befehlszeile?