OH3 Benutzer- und Gruppenrechte prüfen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
scotty
Beiträge: 676
Registriert: 28. Apr 2020 04:44

OH3 Benutzer- und Gruppenrechte prüfen

Beitrag von scotty »

Wie kann ich mir den Status der Benutzer- und Gruppenrechte einer Datei unter Openhab 3 anzeigen lassen bzw. diese ändern?
OH 3.4.5 im Docker auf Synology DS918+ mit USV, Reolink-RLC-511WA, Philips Hue, AVM Fritz!Box 6591C, Alexa, Logitech Harmony und diversen Shelly's

Benutzeravatar
peter-pan
Beiträge: 2564
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: OH3 Benutzer- und Gruppenrechte prüfen

Beitrag von peter-pan »

..meinst du das ?

Code: Alles auswählen

hab3@oh3sata:/etc/openhab $ ls -alF items
insgesamt 732
drwxrwxr-x+  2 openhab openhab   4096 14. Nov 01:41 ./
drwxrwxr-x+ 15 openhab openhab   4096 19. Okt 13:41 ../
-rw-rw-r--   1 openhab openhab  18228  9. Nov 16:09 alexa.items
-rw-rw-r--   1 openhab openhab  12730 20. Nov 00:46 astro.items
-rw-rw-r--   1 openhab openhab  47172 11. Nov 14:38 avm_fritz.items
-rw-rw-r--   1 openhab openhab  13186  9. Nov 17:09 castle.items
-rw-rw-r--   1 openhab openhab 144665 14. Nov 00:23 homematic.items
-rw-rw-r--   1 openhab openhab  22883 11. Nov 14:35 mqtt_ESP.items
-rw-rw-r--   1 openhab openhab  31544  1. Nov 19:52 mqtt_Gosund.items
-rw-rw-r--   1 openhab openhab   1010 28. Okt 21:50 mqtt_others.items
-rw-rw-r--   1 openhab openhab  19272 13. Nov 18:10 mqtt_Sonoff.items
-rw-rw-r--   1 openhab openhab  11856 19. Nov 00:03 mqtt_Sonoff_s20.items
-rw-rw-r--   1 openhab openhab   2586 18. Okt 15:07 network_test.items
-rw-rw-r--   1 openhab openhab    660  7. Aug 18:37 ntp.items
-rw-rw-r--   1 openhab openhab  48291  7. Feb 2021  oncallRG.items_stop
-rw-rw-r--   1 openhab openhab  51812 11. Apr 2021  onecall.items_stop
-rw-rw-r--   1 openhab openhab 190073 18. Jan 2021  owm.items_stop
-rw-rw-r--   1 openhab openhab  47061 17. Nov 11:34 owm_oncall.items
-rw-rw-r--   1 openhab openhab    231 21. Dez 2020  readme.txt
-rw-rw-r--   1 openhab openhab  32091  2. Nov 00:25 sonos.items
-rw-rw-r--   1 openhab openhab   2009 13. Nov 15:47 system.items
-rw-rw-r--   1 openhab openhab   1837  4. Okt 14:11 test.items
linux: chown bzw. chmod
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.1 openhabian

Benutzeravatar
udo1toni
Beiträge: 13857
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: OH3 Benutzer- und Gruppenrechte prüfen

Beitrag von udo1toni »

Wobei chown (CHangeOWNer) zwingend mit erweiterten Rechten ausgeführt werden muss, also im Kontext vom User root (z.B. mittels sudo).
chown erwartet als Parameter den neuen Usernamen, wahlweise kann auch gleich noch die zugehörige Gruppe mit angegeben werden (mit Doppelpunkt getrennt). Oftmals soll die Datei der Gruppe gehören, die dem User zugeordnet ist, dann reicht es, nur den Doppelpunkt mit anzugeben.
sudo chown openhab: meine.datei setzt also gleichzeitig Besitzer und Gruppe auf openhab.

chmod dient dazu, den Modus zu setzen (CHangeMODus). Der Eigentümer einer Datei darf das selbst tun, für fremde Dateien braucht es wieder erweiterte Rechte, entweder, indem man gleich den Kontext von root verwendet, oder indem man so tut, als sei man
der Eigentümer (z.B. sudo -u openhab).
Man kann die Rechte dabei auf zwei grundsätzlich verschiedene Arten setzen. entweder als Bitmaske, geschrieben als Oktalzahl. Die erste Stelle beschreibt den Modus des Eigentümers, die zweite Stelle beschreibt die Rechte von Gruppenmitgliedern, die dritte Stelle beschreibt die Rechte aller anderen User. Die drei Bits pro Stelle stehen (MSB -> LSB für Lesen, Schreiben, Ausführen, ergibt z.B. 755 um eine Datei für jeden ausführbar und lesbar zu machen, aber nur der Eigentümer darf die Datei auch beschreiben. 600 erlaubt nur dem Eigentümer Lese- und Schreibrechte, alle anderen bleiben außen vor. Man kann also z.B. mit chmod 600 meine.datei sehr schnell den Zugriff für alle anderen verbieten.
Bei Verzeichnissen steht das Ausführen-Bit für die Erlaubnis, den Ordner zu betreten bzw. dessen Inhalt zu listen.
Die andere Art ist über die genaue Bezeichnung der Bits. Z.B. so: chmod ugo+rx meine.datei setzt (+) für alle (User, Group, Other) die Rechte Read und eXecute. Ein chmod go-w meine.datei entzieht (-) Gruppe und Anderen das Recht zu schreiben. Diese Variante kann also gezielt bestimmte Bits setzen und/oder löschen, andere Bits bleiben unberührt.
Es gibt noch eine weitere Funktion das SetUID, SetGID und Sticky Bit diese sind mittels u+s (SetUID) bzw. g+s (SetGID) zu setzen und bewirken, dass ein Programm automatisch im Kontext des Besitzer bzw. der Gruppe ausgeführt wird. Besonders im Zusammenhang mit dem Besitzer root ist das nicht ganz ungefährlich... Das Sticky Bit sorgt in einem verzeichnis dafür, dass unabhängig von den gesetzten Rechten nur der Besitzer einer Datei diese löschen kann (in einem Verzeichnis mit vollen Zugriffsrechten kann das sonst jeder User)

Beide Befehle können auch rekursiv ganze Verzeichnisbäume bearbeiten, wobei man sich natürlich darüber im Klaren sein muss, dass das gewisse Risiken bergen kann :)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
scotty
Beiträge: 676
Registriert: 28. Apr 2020 04:44

Re: OH3 Benutzer- und Gruppenrechte prüfen

Beitrag von scotty »

Danke euch!
OH 3.4.5 im Docker auf Synology DS918+ mit USV, Reolink-RLC-511WA, Philips Hue, AVM Fritz!Box 6591C, Alexa, Logitech Harmony und diversen Shelly's

Antworten