Journalzugriff für Nicht-Root-Benutzer

12

Die Journald-Dokumentation besagt, dass das Hinzufügen eines Benutzers zur Gruppe "systemd-journal" oder "adm" dem Benutzer den Zugriff auf das systemweite Journal ermöglicht.

Ich verwende das neueste CentOS 7 und habe anscheinend Probleme, als Nicht-Root-Benutzer auf das Journal zuzugreifen.

Hier ist meine Konfiguration:

$ id
uid=1000(centos) gid=1000(centos) groups=1000(centos),4(adm),10(wheel),190(systemd-journal) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

$ cat /etc/systemd/journald.conf
[Journal]
Storage=persistent

$ journalctl
-- Logs begin at Sat 2015-08-29 16:35:52 UTC, end at Sat 2015-08-29 17:28:47 UTC. --
Aug 29 16:35:52 hostname ... <log continues>

In der journalctl-Ausgabe sind keine Systemprotokolle vorhanden. Hier ist meine Berechtigungskonfiguration:

$ ll -a /var/log/journal/f9afeb75a5a382dce8269887a67fbf58/
total 24592
drwxr-xr-x. 2 root root     4096 Aug 29 16:35 .
drwxr-xr-x. 3 root root     4096 Aug 29 17:28 ..
-rw-r-----. 1 root root 16777216 Aug 29 17:27 system.journal
-rw-r-----+ 1 root root  8388608 Aug 29 17:33 user-1000.journal

Wenn ich die Eigentümergruppe von system.journalauf systemd-journalalles ändere , funktioniert alles einwandfrei. Dies scheint jedoch nicht richtig zu sein, da die Dokumentation nichts darüber aussagt.

Fehlt mir etwas oder muss die Gruppe der system.journalDatei tatsächlich manuell geändert werden?

Vielen Dank

michal kralik
quelle

Antworten:

6

Die Lösung besteht darin, den Gruppeneigentum zu ändern und dem übergeordneten Ordner ein Sticky-Bit hinzuzufügen, bevor die .journalDateien erstellt werden.

chown :systemd-journal /var/log/journal/f9afeb75a5a382dce8269887a67fbf58
chmod g+s /var/log/journal/f9afeb75a5a382dce8269887a67fbf58
michal kralik
quelle
Dies journalctlfunktioniert für mich, aber es werden nicht alle Nachrichten angezeigt, die root sehen kann ...
Gert van den Berg
@GertvandenBerg versuchen zu überprüfen, ob die vorhandenen Dateien von gelesen werden können systemd-journal. Mit den hier angegebenen Befehlen wurde sichergestellt, dass nur neue Dateien lesbar sind, keine vorhandenen.
Michal Kralik
Auf dem Ubuntu-Setup war die Berechtigung korrekt ... Die Ausgabe von journalctl als root enthält alle Dienste, während es so aussieht, als ob ein normaler Benutzer in der systemd-journal-Gruppe nur bootbezogene Nachrichten sehen kann .... (Aber das könnte sein wurden damit in Verbindung gebracht, dass man sich nicht erneut für die neue Gruppe anmeldet - es sieht jetzt gut aus ...)
Gert van den Berg