Benutzer zu den sudoers hinzufügen

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
wuzlberger
Beiträge: 9
Registriert: 06.01.2022 12:10:26

Benutzer zu den sudoers hinzufügen

Beitrag von wuzlberger » 06.01.2022 17:51:11

Hallo Forum,

ich habe mich heute angemeldet, weil ich (nicht zum ersten Mal, bin aber trotzdem Anfänger) Debian 11.2 (32 Bit) installiert habe und etwas Hilfe benötige.

Ich weiß, dass das Kommando sudo <Befehl> nicht funktioniert, sobald der Benutzer, mit dem man angemeldet ist, nicht zur Gruppe der sudoers hinzugefügt wurde.
Dazu habe ich zwei Fragen: Wie geht das? Und hat das irgend welche Nachteile? (Könnte ja sein, dass das unter Debian gewollt nicht standardmäßig so ist wie unter Ubuntu.)

DeletedUserReAsG

Re: Benutzer zu den sudoers hinzufügen

Beitrag von DeletedUserReAsG » 06.01.2022 18:00:37

man usermod hat geschrieben:

Code: Alles auswählen

USERMOD(8)              System Management Commands              USERMOD(8

NAME
       usermod - modify a user account

SYNOPSIS
       usermod [options] LOGIN

DESCRIPTION
       The usermod command modifies the system account files to reflect
       the changes that are specified on the command line.

OPTIONS
       The options which apply to the usermod command are:

       -a, --append
           Add the user to the supplementary group(s). Use only with the
           -G option.
[…]
       -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.
[…]

wuzlberger
Beiträge: 9
Registriert: 06.01.2022 12:10:26

Re: Benutzer zu den sudoers hinzufügen

Beitrag von wuzlberger » 06.01.2022 18:45:58

Danke, hat geklappt.

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Benutzer zu den sudoers hinzufügen

Beitrag von tobo » 06.01.2022 18:53:49

wuzlberger hat geschrieben: ↑ zum Beitrag ↑
06.01.2022 17:51:11
Ich weiß, dass das Kommando sudo <Befehl> nicht funktioniert, sobald der Benutzer, mit dem man angemeldet ist, nicht zur Gruppe der sudoers hinzugefügt wurde.
sudoers heißt die Datei, die Gruppe heißt sudo. Aber auch inhaltlich stimmt das so nicht: Wenn du der Gruppe sudo hinzugefügt bist, dann gilt für dich die Konfiguration der Gruppe sudo in der Datei /etc/sudoers. Je nach Szenario ist das aber gar nicht gewollt und in der Standardkonfiguration wohl auch nur eingeschränkt sinnvoll. Du kannst aber für jede Gruppe eine eigene Konfiguration dort anlegen - also auch für deine aktuelle Gruppe, die ja schon existiert. In dem Fall z.B. musst du also keiner Gruppe beitreten. Mittels Aliasse kann man das dann noch weiter verfeinern.

Dazu habe ich zwei Fragen: Wie geht das? Und hat das irgend welche Nachteile? (Könnte ja sein, dass das unter Debian gewollt nicht standardmäßig so ist wie unter Ubuntu.)
Als erste Rundschau:
https://wiki.ubuntuusers.de/sudo/Konfiguration/
Es gibt da aber auch noch professionellere Anleitungen im Netz.

Benutzeravatar
speefak
Beiträge: 439
Registriert: 27.04.2008 13:54:20

Re: Benutzer zu den sudoers hinzufügen

Beitrag von speefak » 21.01.2022 03:51:43

Ich verzweifle hier gerade ...

ich versuche nuu schon über einer Stunde eine etliche Kombinationen um den lighdm ohne root rechte als user neu starten zu können. Wurde in Debian 11 etwas grundlegendes geändert ?

meine sudorers und versuche:

Code: Alles auswählen

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "@include" directives:

@includedir /etc/sudoers.d

#user    ALL=(ALL) NOPASSWD:ALL                         # works         but very risky

#user    ALL=(ALL) NOPASSWD:/usr/local/bin/ffswitch     # not working   entire script risky to
#user    ALL=(ALL) NOPASSWD:/usr/sbin/lightdm           # not working   this is what is executed by script 

#user   ALL=(user) NOPASSWD:/usr/bin/ls                 # not working
#user   ALL = NOPASSWD: /bin/systemctl restart lightdm.service, /bin/kill       # not working

user     ALL = (ALL)  NOPASSWD: /usr/bin/ls
Ich begreife das nicht: ALLE Anleitungen sind mehr oder weniger die gleiche Syntax aber es funktioniert NUR die Freigabe des gesamten sudo Befehls für alle systemweiten Programme - Das ist verdammt riskant und das kann ich nicht machen.

System ist Debian 11, Minimalinstallation Openbox und lightdm

Oder liegt es am Benutzernamen "user" der Systemuser heist "user" kommt sudoers damit nicht klar ? 8O 8O 8O

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Benutzer zu den sudoers hinzufügen

Beitrag von MSfree » 21.01.2022 08:47:05

speefak hat geschrieben: ↑ zum Beitrag ↑
21.01.2022 03:51:43
ich versuche nuu schon über einer Stunde eine etliche Kombinationen um den lighdm ohne root rechte als user neu starten zu können. Wurde in Debian 11 etwas grundlegendes geändert ?
lightdm ist ein graphischer Loginprozeß. Als Loginprpozeß braucht er zwingend root-Rechte, damit nach Eingabe von Benutzername und Paßwort ein Kontextwechsel auf den Benutzer überhaupt möglich wird, nur root darf einen Kontextwechsel auf einen beliebigen Benutzer durchführen.

Da der Prozeß nunmal mit root-Rechten läuft, darf auch nur root in abschießen und neu starten.

Benutzeravatar
speefak
Beiträge: 439
Registriert: 27.04.2008 13:54:20

Re: Benutzer zu den sudoers hinzufügen

Beitrag von speefak » 21.01.2022 12:28:39

Das ist doch der Sinn von sudo ( ausführen mit Rootrechten ). Aber selbst ein Eintrag für /usr/bin/ls in der sudoers funktioniert entgegen aller Anleitungen nicht. Nur eine Fraige für ALLE Befehle 8O

tijuca
Beiträge: 296
Registriert: 22.06.2017 22:12:20

Re: Benutzer zu den sudoers hinzufügen

Beitrag von tijuca » 21.01.2022 13:07:05

Das ist doch der Sinn von sudo ( ausführen mit Rootrechten ).
Nein, ist es nicht, nicht ausschließlich. Ein Blick in die Man Page hilft hier.

sudo allows a permitted user to execute a command as the superuser or another user, as specified by the security policy.

Allerdings wird sudo gerne benutzt um als normaler Benutzer Befehle, Skripte oder was auch immer mit root Berechtigungen auszuführen. Wenn dies per

Code: Alles auswählen

Benutzer ALL=(ALL) NOPASWD
erfolgt dann kann dies eben gefährlich sein, weil eben alles erlaubt ist. Daher müssen sudo Berechtigungen entsprechend fein eingerichtet werden.

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Benutzer zu den sudoers hinzufügen

Beitrag von tobo » 21.01.2022 15:51:04

speefak hat geschrieben: ↑ zum Beitrag ↑
21.01.2022 03:51:43

Code: Alles auswählen

user     ALL = (ALL)  NOPASSWD: /usr/bin/ls
Es ist außerordentlich praktisch die Fehlermeldung genau zu lesen, wenn irgendwas nicht funktioniert! Ein weiterer Tipp, probiere mal "which ls" im Terminal.
Oder liegt es am Benutzernamen "user" der Systemuser heist "user" kommt sudoers damit nicht klar ? 8O 8O 8O
user als Benutzername/Gruppe ist kein Problem für sudo.

Edit: Wobei, dass mit den Pfaden hat sich ja geändert - Wurde dein Bullseye per dist-upgrade aktualisiert oder neu installiert, was sagt which ls?

fischig
Beiträge: 3601
Registriert: 24.12.2019 12:25:08
Lizenz eigener Beiträge: MIT Lizenz

Re: Benutzer zu den sudoers hinzufügen

Beitrag von fischig » 21.01.2022 19:10:00

Könnte aus dem Lehrbuch für's Kapern von Threads sein, bzw: wie bringe ich meine exzellente Kenntnisse an den Mann/die Frau, die der-/diejenige gar nicht (mehr) braucht.

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Benutzer zu den sudoers hinzufügen

Beitrag von tobo » 22.01.2022 10:46:49

speefak hat geschrieben: ↑ zum Beitrag ↑
21.01.2022 03:51:43
Ich begreife das nicht: ALLE Anleitungen sind mehr oder weniger die gleiche Syntax aber es funktioniert NUR die Freigabe des gesamten sudo Befehls für alle systemweiten Programme [...]
In wie weit ist das denn überhaupt deine reelle /etc/sudoers-Datei? In der Datei später existierenden Regeln würden davor erstellte Regeln überschreiben - es ließe sich also einiges erklären, wären die Zeilen in anderer Reihenfolge und frei von Syntaxfehlern. So wie du die Datei zeigst hätte visudo die nur unter Protest erstellt. Benutzt du überhaupt visudo zum Editieren von /ets/sudoers?

Folgende Vorgehensweise würde ich empfehlen: Im Terminal mittels "su -" zu root werden. Die sudoers mit visudo öffnen und in der Zeile mit includedir das führende @ durch ein # ersetzen und damit die Zeile auskommentieren (und den Syntaxfehler beheben). In der Zeile, die mit %sudo beginnt, vorne eine # ergänzen und diese damit ebenfalls auskommentieren. Die Ausgabe von "which ls" als einzige aktive Regel für den Benutzer user überprüfen, diese letzte Zeile gegebenenfalls korrigieren, mit der Eingabetaste abschließen und visudo beenden. Danach, falls du deinen Benutzer auch in die Gruppe sudo gesteckt hast (überprüfbar durch "groups"), dich mit "deluser user sudo" davon befreien. Jetzt als "user" neu anmelden und "sudo ls" ausführen. Wird das mit einer Fehlermeldung quittiert, dann diese zeigen. Mit halbrichtigen Dateien und Prosa wird das sonst nichts...

Antworten