doas + /sbin

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Benutzeravatar
MrNicNac
Beiträge: 7
Registriert: 25.07.2021 15:38:01

doas + /sbin

Beitrag von MrNicNac » 10.09.2021 09:09:00

Ich habe gesehen dass in Bullseye Debiandoas verfügbar ist und habe es gleich mal installiert und sudo runter geschmissen.

Funktioniert alles super, allerdings eine Kleinigkeit wäre da:

Code: Alles auswählen

# Funktioniert:
doas /sbin/reboot

# Funktioniert NICHT:
doas reboot

Code: Alles auswählen

$ printenv | grep PATH
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

$ doas printenv | grep PATH
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
Bei doas gibt es die Option setenv, siehe man doas.conf.

Ich denke mal damit würde sich das Problem lösen lassen?
Oder auch nicht? Denn /usr/sbin ist ja bereits in PATH, siehe oben.

Das hier funktioniert (wie erwartet) auch nicht:

Code: Alles auswählen

# /etc/doas.conf
permit setenv { PATH=/usr/sbin:$PATH } user as root
Irgendwelche Ideen?
Dank im Voraus :)

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

Re: doas + /sbin

Beitrag von fischig » 10.09.2021 22:13:15

Ich kenne doas nicht. Aber ich weiß auch nicht, warum man das als einfacher Benutzer für ein reboot bemühen will: Neustarten darf jeder Benutzer (merkwürdigerweise 8O ) das System, und zwar direkt. Etwas anderes wäre es wohl, wenn du mittels doas ein Root vorbehaltenes Kommando ausführen willst. Dann müsste das wohl irgendwo und irgendwie dateimäßig festgehalten werden, dass Root(!) das einem Benutzer erlauben will.

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

Re: doas + /sbin

Beitrag von MSfree » 10.09.2021 22:32:35

fischig hat geschrieben: ↑ zum Beitrag ↑
10.09.2021 22:13:15
Neustarten darf jeder Benutzer (merkwürdigerweise 8O ) das System, und zwar direkt.
Das ist nicht ganz richtig. Von der graphischen Umgebung darfst du die Kiste runterfahren, weil das PolicyKit das so einrichtet. Mittels SSH-Login oder schlicht von der Textkonsole darfst du es nicht.

mcb

Re: doas + /sbin

Beitrag von mcb » 10.09.2021 22:51:18

MrNicNac hat geschrieben: ↑ zum Beitrag ↑
10.09.2021 09:09:00
Ich habe gesehen dass in Bullseye Debiandoas verfügbar ist und habe es gleich mal installiert und sudo runter geschmissen.
................


Irgendwelche Ideen?
Dank im Voraus :)
Du kannst etwas wie:

Code: Alles auswählen

permit nopass marc cmd reboot
in die doas.conf setzen (testweise) führt dazu das alle ausführbaren Dateien die reboot heißen mit rootrechten laufen (ohne Paßwort).

Oder du bastelst dir einen alias - dann stört der absolute path nicht - ist auch sicherer.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: doas + /sbin

Beitrag von smutbert » 10.09.2021 22:57:17

MSfree hat geschrieben: ↑ zum Beitrag ↑
10.09.2021 22:32:35
fischig hat geschrieben: ↑ zum Beitrag ↑
10.09.2021 22:13:15
Neustarten darf jeder Benutzer (merkwürdigerweise 8O ) das System, und zwar direkt.
Das ist nicht ganz richtig. Von der graphischen Umgebung darfst du die Kiste runterfahren, weil das PolicyKit das so einrichtet. Mittels SSH-Login oder schlicht von der Textkonsole darfst du es nicht.
Das ist nicht ganz richtig. Lokal von der graphischen Umgebung oder schlicht der Textkonsole darfst du die Kiste runterfahren, weil das policykit so einrichtet. Mittels SSH-Login darfst du es nicht.

:wink:
(Wobei ich nicht gewusst habe, dass da policykit im Spiel ist, ich dachte, das macht systemd-logind ganz alleine.)

willy4711

Re: doas + /sbin

Beitrag von willy4711 » 11.09.2021 06:59:12

MrNicNac hat geschrieben: ↑ zum Beitrag ↑
10.09.2021 09:09:00

Code: Alles auswählen

# Funktioniert:
doas /sbin/reboot
Wie schon gesagt wurde, ist das PolicyKit für derartige Aktionen verantwortlich.
deshalb funktionieren auch:

Code: Alles auswählen

~$ /sbin/poweroff

Code: Alles auswählen

~$ /sbin/reboot
oder

Code: Alles auswählen

~$ systemctl poweroff
oder

Code: Alles auswählen

~$ systemctl reboot
Und zwar alles ganz ohne dieses sinnfreie sudo oder hier gar doas :facepalm:

Vielleicht erst mal über das Debianpolicykit-1 informieren :?:

Zu lesen in der Datei /usr/share/polkit-1/actions/org.freedesktop.login1.policy

Dann gibt es auch noch dieses magische su oder gar su - (wg. $PATH)

Sollte man auch mal probieren :idea:
Zuletzt geändert von willy4711 am 11.09.2021 23:59:59, insgesamt 1-mal geändert.

Benutzeravatar
unitra
Beiträge: 638
Registriert: 15.06.2002 21:09:38
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.128.129.130

Re: doas + /sbin

Beitrag von unitra » 11.09.2021 07:54:34

Hier funktioniert das reboot mit doas. Aber die Konfiguraiton sieht so aus:

Code: Alles auswählen

permit nopass :wheel
Die wheel group ist bei debian nicht vorhanden, also muß die eingerichtet werden

https://wiki.debian.org/SystemGroups

Hier die MAN page für doas

https://man.openbsd.org/doas.conf.5

mcb

Re: doas + /sbin

Beitrag von mcb » 11.09.2021 09:39:57

unitra hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 07:54:34
Hier funktioniert das reboot mit doas. Aber die Konfiguraiton sieht so aus:

Code: Alles auswählen

permit nopass :wheel
Die wheel group ist bei debian nicht vorhanden, also muß die eingerichtet werden

https://wiki.debian.org/SystemGroups

Hier die MAN page für doas

https://man.openbsd.org/doas.conf.5
Doas geht auch ohne die Group wheel.

willy4711

Re: doas + /sbin

Beitrag von willy4711 » 11.09.2021 10:52:31

Mich würde mal interessieren welchen Zweck dieses doas haben soll.
Vielleicht liege ich falsch, aber ein

Code: Alles auswählen

permit nopass :wheel
öffnet doch jeden uneingeschränkt Zugang zu Root -Rechten.
Denn der laufenden User wird ja dann wohl in der Gruppe wheel sein.

Soll ja jeder machen, wie er will. Aber für besonders sicher halte ich das nicht, zumal die Bordmittel von
Debian alle Möglichkeiten bieten, auch ohne sudo oder doas.

Oder geht es hier um ein System ohne GUI ? Dann wäre es eventuell nachzuvollziehen.

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

Re: doas + /sbin

Beitrag von MSfree » 11.09.2021 11:12:22

willy4711 hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 10:52:31
Mich würde mal interessieren welchen Zweck dieses doas haben soll.
Das ist halt eine Alternative für sudo.

Ich halte aber nichts von Systemen, die neben su noch zahlreiche Nebeneingänge haben. Dazu zählen für mich eben sudo, polkit und doas. Das ist ja alles ganz niedlich, wenn das ein persönlicher Rechner ist, auf dem es genau einen Nutzer gibt, der ohnehin das root-Paßwort kennt. Im Multiuserbetrieb muß der Administrator aber den Überblick über solche Nebeneingänge behalten, und das wird umso schwieriger je mehr es davon gibt.

mcb

Re: doas + /sbin

Beitrag von mcb » 11.09.2021 11:24:59

MSfree hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:12:22
willy4711 hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 10:52:31
Mich würde mal interessieren welchen Zweck dieses doas haben soll.
Das ist halt eine Alternative für sudo.

Ich halte aber nichts von Systemen, die neben su noch zahlreiche Nebeneingänge haben. Dazu zählen für mich eben sudo, polkit und doas. Das ist ja alles ganz niedlich, wenn das ein persönlicher Rechner ist, auf dem es genau einen Nutzer gibt, der ohnehin das root-Paßwort kennt. Im Multiuserbetrieb muß der Administrator aber den Überblick über solche Nebeneingänge behalten, und das wird umso schwieriger je mehr es davon gibt.
Mit doas kann man (ich) sehr leicht nur ein zwei Programme für einzelne user freigeben. Per default ist alles gesperrt.

Braucht man es? Nun ja.

willy4711

Re: doas + /sbin

Beitrag von willy4711 » 11.09.2021 11:28:31

MSfree hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:12:22
Ich halte aber nichts von Systemen, die neben su noch zahlreiche Nebeneingänge haben. Dazu zählen für mich eben sudo, polkit und doas.
sudo hab ich bei mir eh nicht drauf. Lebe sehr gut mit dem PolKit.
Gefragt ist immer das Root-PW für das entsprechende Programm / Aktion ,
außer man modifiziert die entsprechende Policy.

Ich sehe daher nicht, dass das ein "Nebeneingang" ist.

Das Polkit regelt doch so gut wie alles in der GUI - soweit man eine hat.
Es ist standardmäßig installiert und m.E. in allen Oberflächen aktiviert.

Daher würde ich es eher als Haupteingang bezeichnen :wink:

willy4711

Re: doas + /sbin

Beitrag von willy4711 » 11.09.2021 11:30:44

mcb hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:24:59
Mit doas kann man (ich) sehr leicht nur ein zwei Programme für einzelne user freigeben. Per default ist alles gesperrt.
Wie meinst du das (Per default) ?
Welche Programme denn z.B. ?

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

Re: doas + /sbin

Beitrag von MSfree » 11.09.2021 11:32:49

mcb hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:24:59
Mit doas kann man (ich) sehr leicht nur ein zwei Programme für einzelne user freigeben.
Das geht mit polkit und sudo auch.
Per default ist alles gesperrt.
Solange du su, sudo und polkit ebenfalls auf deinem Rechner hast, stimmt die Aussage nicht, weil es eben noch 3 weitere Nebeneingänge gibt, die potentiell offen sind, um root-Rechte zu erlangen. Vor allem, wenn polkit und sudu mit den Standardeinstellungen betrieben werden.

mcb

Re: doas + /sbin

Beitrag von mcb » 11.09.2021 11:36:52

willy4711 hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:30:44
mcb hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:24:59
Mit doas kann man (ich) sehr leicht nur ein zwei Programme für einzelne user freigeben. Per default ist alles gesperrt.
Wie meinst du das (Per default) ?
Welche Programme denn z.B. ?

Code: Alles auswählen

cat /etc/doas.conf 
permit :wheel cmd /usr/bin/apt
Ich habe das jetzt so. Mit sudo könnte ich das nicht so schnell umsetzen. Der Hauptbenutzer (also ich) darf per doas mit apt "arbeiten". 1000x einfacher als sudo zu konfigurieren.

mcb

Re: doas + /sbin

Beitrag von mcb » 11.09.2021 11:39:38

MSfree hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:32:49
mcb hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:24:59
Mit doas kann man (ich) sehr leicht nur ein zwei Programme für einzelne user freigeben.
Das geht mit polkit und sudo auch.
Per default ist alles gesperrt.
Solange du su, sudo und polkit ebenfalls auf deinem Rechner hast, stimmt die Aussage nicht, weil es eben noch 3 weitere Nebeneingänge gibt, die potentiell offen sind, um root-Rechte zu erlangen. Vor allem, wenn polkit und sudu mit den Standardeinstellungen betrieben werden.
Sorry ich meinte bei doas ist per default alles gesperrt. Das finde ich gut. Ja sudo habe ich nicht drauf. :facepalm: Immer noch zwei Nebeneingänge....

Benutzeravatar
TRex
Moderator
Beiträge: 8079
Registriert: 23.11.2006 12:23:54
Wohnort: KA

Re: doas + /sbin

Beitrag von TRex » 11.09.2021 11:48:59

Schön, eure Unterhaltung über sudo und Alternativen. Ab wo soll ich die denn abtrennen, damit der TE mit seinem Problem auch wieder Aufmerksamkeit bekommt?
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

willy4711

Re: doas + /sbin

Beitrag von willy4711 » 11.09.2021 11:58:25

TRex hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 11:48:59
Schön, eure Unterhaltung über sudo und Alternativen. Ab wo soll ich die denn abtrennen, damit der TE mit seinem Problem auch wieder Aufmerksamkeit bekommt?
Ist doch schon alles beantwortet.
Ich habe gesagt, dass man für reboot und poweroff kein doas braucht,
unitra hat eine Lösung für die config genannt.
mcb hat das erweitert.

Dann habe wir etwas "diskutiert" :mrgreen:

Schlimm ? Nöö :wink:

Benutzeravatar
TRex
Moderator
Beiträge: 8079
Registriert: 23.11.2006 12:23:54
Wohnort: KA

Re: doas + /sbin

Beitrag von TRex » 11.09.2021 12:19:32

Stimmt, sorry - das habe ich überlesen. Das passiert leider auch anderen desöfteren (bzw dann dem ebenso nicht immer aufmerksamen TE).
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

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

Re: doas + /sbin

Beitrag von fischig » 11.09.2021 19:04:42

MSfree hat geschrieben:Von der graphischen Umgebung darfst du die Kiste runterfahren [...] schlicht von der Textkonsole darfst du es nicht.
Ich schon. :P Und sowohl Polkit als auch systemd ist bei mir (bis auf einer Maschine) nirgendwo installiert. Teste zwar gerade mit devuan beowulf, aber ich erinnere nicht, dass das bei irgendeiner Debian- Version anders wäre. Kann ich erst verifizieren, wenn ich wieder zu Hause bin. Und nebenbei: merkwürdig, bzw unlogisch im Vergleich zu shutdown fand ich's schon immer. :wink:

Benutzeravatar
ralli
Beiträge: 3919
Registriert: 02.03.2008 08:03:02

Re: doas + /sbin

Beitrag von ralli » 11.09.2021 20:12:51

Doas habe nicht nur ich, sondern einige andere Communitymitglieder unter FreeBSd und OpenBSD eingesetzt und benutzt. Es kann zielgenau konfiguriert werden und stellt keinerlei Sicherheitsrisiko dar. Allerdings müßte ich auch wieder in die Manpage schauen, da ich es lange nicht benutzt habe. Ich wußte nicht, das es doas auch unter Linux gibt.

Gruß ralli
Wer nicht lieben kann, muß hassen. Wer nicht aufbauen kann muß zerstören. Wer keine Brücken baut, muß spalten.

mcb

Re: doas + /sbin

Beitrag von mcb » 11.09.2021 21:13:42

fischig hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 19:04:42
MSfree hat geschrieben:Von der graphischen Umgebung darfst du die Kiste runterfahren [...] schlicht von der Textkonsole darfst du es nicht.
Ich schon. :P Und sowohl Polkit als auch systemd ist bei mir (bis auf einer Maschine) nirgendwo installiert. Teste zwar gerade mit devuan beowulf, aber ich erinnere nicht, dass das bei irgendeiner Debian- Version anders wäre. Kann ich erst verifizieren, wenn ich wieder zu Hause bin. Und nebenbei: merkwürdig, bzw unlogisch im Vergleich zu shutdown fand ich's schon immer. :wink:
-im Terminal geht es (lokal) über ssh nicht. (Systemctl)

-shutdown und reboot sind für normale Anwender gesperrt (default).

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

Re: doas + /sbin

Beitrag von fischig » 11.09.2021 21:23:41

mcb hat geschrieben:-shutdown und reboot sind für normale Anwender gesperrt (default).
Möchtest du mich der Lüge bezichtigen? Das gälte dann für smutbert gleich mit.

Dein Beitrag ist sinnfrei.

mcb

Re: doas + /sbin

Beitrag von mcb » 11.09.2021 21:31:12

fischig hat geschrieben: ↑ zum Beitrag ↑
11.09.2021 21:23:41
mcb hat geschrieben:-shutdown und reboot sind für normale Anwender gesperrt (default).
Möchtest du mich der Lüge bezichtigen? Das gälte dann für smutbert gleich mit.

Dein Beitrag ist sinnfrei.
Oh je ...

Code: Alles auswählen

marc@mb:~$ reboot
Command 'reboot' is available in the following places
 * /sbin/reboot
 * /usr/sbin/reboot
The command could not be located because '/sbin:/usr/sbin' is not included in the PATH environment variable.
This is most likely caused by the lack of administrative privileges associated with your user account.
reboot: command not found
marc@mb:~$ 
^^ das ergeben die Voreinstellungen :roll: Und per ssh dürfen normale User per default keinen Reboot auslösen.

Ah :facepalm:

Code: Alles auswählen

marc@mb:~$ shutdown -r 0
Command 'shutdown' is available in the following places
 * /sbin/shutdown
 * /usr/sbin/shutdown
The command could not be located because '/usr/sbin:/sbin' is not included in the PATH environment variable.
This is most likely caused by the lack of administrative privileges associated with your user account.
shutdown: command not found
marc@mb:~$ /usr/sbin/shutdown -r 120
Reboot scheduled for Sat 2021-09-11 23:32:17 CEST, use 'shutdown -c' to cancel.
marc@mb:~$ /usr/sbin/shutdown -c
marc@mb:~$ 

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: doas + /sbin

Beitrag von smutbert » 11.09.2021 22:00:21

Immer mit der Ruhe. Ich würde sagen hier will niemand ijemand einer Lüge bezichtigen, höchstens eines Irrtums und sinnfreie Beiträge werden hier auch nicht gepostet ☺

Zuerst war einmal nur die Rede davon, dass dank policykit ein lokal angemeldeter Benutzer das System herunterfahren und neustarten darf, egal ob auf der Textkonsole, z. B. mit den Befehlen

Code: Alles auswählen

$ systemctl poweroff
$ systemctl reboot
oder in der grafischen Oberfläche.

Die Befehle shutdown und reboot befinden sich allerdings in »/sbin« und sind damit normalerweise nicht im Suchpfad eines normalen Benutzers, aber den eigenen Suchpfad kann ein Benutzer selbst anpassen oder die Befehle einfach mit Pfad aufrufen

Code: Alles auswählen

/sbin/shutdown -h now
/sbin/reboot
mcbs Fehlermeldung ist da etwas irreführend. (Dafür dürfte Debiancommand-not-found verantwortlich sein, das ich nicht auf dem Schirm hatte, weil ich das nie installiere.)

Jedenfalls sollte das so auch bei dir @mcb funktionieren.

Antworten