umask in Debian ändern oder nicht

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

umask in Debian ändern oder nicht

Beitrag von smutbert » 12.01.2019 20:49:31

Hallo liebe Leute,

der Thread „Linux Filesystem - wohin mit Daten“ hat mich (wieder einmal) auf umask gebracht. Denn die Voreinstellung allen Benutzern lesenden Zugriff auf die Daten anderer Nutzer zu gestatten halte ich gelinde gesagt für fragwürdig.
Als erstes möchte ich einmal festhalten…

was ich über umask in Debian zu wissen glaube

Es sollte genügen in »/etc/pam.d/common-session«

Code: Alles auswählen

session optional        pam_umask.so
einzutragen und dann den gewünschten Wert in der »/etc/login.defs« anzupassen oder man trägt die den Wert ebenfalls in »/etc/pam.d/common-session« ein, etwa

Code: Alles auswählen

session optional        pam_umask.so umask=027
(Das ist auch etwa der Stand von vergangenen Threads zu dem Thema [2], [3])

Aktuell hat man mit diesem Vorgehen in sid, buster (und vielleicht sogar stretch?) das Problem, dass einige Programme über systemd-user-units oder sonstwie über systemd (und dbus?) gestartet werden und systemd hat einen eigenen default-umask-Wert und das ist 022.
Das wirkt sich zum Beispiel ausgerechnet auf das gnome-terminal aus, das also immer mit umask=022 startet, aber auch tracker, zeitgeist, pulseaudio etc. sind betroffen.
(Zusätzlich hat es zwischenzeitlich auch den Bug gegeben, dass gdm oder gnome den umask-Wert ignorieren oder sebst noch einmal setzen, aber das scheint behoben zu sein.)

Den einzigen Workaround, den ich dafür gefunden habe besteht darin die user-unit von dbus (für gnome-terminal, sonst eben die entsprechende andere user-unit) zu ändern [1]

Code: Alles auswählen

$ systemctl --user edit dbus
und darin

Code: Alles auswählen

[Service]
UMask=027
eintragen, aber dann muss man den umask-Wert erst wieder an mehreren Stellen konfigurieren und das ist ja eigentlich genaus das, was mit dem pam-Modul umgehen wollte. Wenn ich da an ein System denke, bei dem ich 3 oder mehre eigene user-units geschrieben habe, müsste ich umask schon an mindestens 5 Stellen des Systems pflegen.

Den Aufwand würde ich nur treibern, wenn es wirklich notwendig ist.


umask 022 beibehalten

Genügt es nicht, wenn man mit

Code: Alles auswählen

# dpkg-reconfigure -p low adduser
oder in »/etc/adduser.conf«

Code: Alles auswählen

DIR_MODE=0751
dafür gesorgt hat, dass andere Benutzer nicht auf das Homeverzeichnis zugreifen dürfen.

Code: Alles auswählen

$ ls -ld /home/smutbert 
drwxr-x--x 1 smutbert smutbert 1668 Jan 12 20:05 /home/smutbert
(Ich bin mir nicht sicher ob ich einen vollständigen Überblick über die Fälle habe, in denen die Rechte eines Verzeichnisinhalts eine Rolle spielen, obwohl man das Verzeichnis selbst nicht lesen darf.)


[1] https://unix.stackexchange.com/question ... 224#418224
[2] viewtopic.php?t=142827
[3] viewtopic.php?f=37&t=142351

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

Re: umask in Debian ändern oder nicht

Beitrag von MSfree » 12.01.2019 20:54:29

umask hat nur Einfluß auf Dateien, die der Benutzer neu erstellt. Alles, was sowieso schon auf der Platte steht, kann durch umask nicht beeinflußt werden.

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

Re: umask in Debian ändern oder nicht

Beitrag von smutbert » 12.01.2019 21:14:39

Das ist mir schon klar (und selbst beim Anlegen der Dateien kann das anlegende Programm noch andere Rechte angeben/verwenden).

Mich interessiert mehr unter welchen Umständne die Rechte meiner Dateien im Homeverzeichnis eine Rolle spielen, wenn das Homeverzeichnis selbst niemand lesen kann außer mir?
(ich denke ich habe eine ungefähre Vorstellung, aber ich bin mir alles andere als sicher ob ich dabei alles bedacht habe)

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

Re: umask in Debian ändern oder nicht

Beitrag von MSfree » 12.01.2019 22:04:53

smutbert hat geschrieben: ↑ zum Beitrag ↑
12.01.2019 21:14:39
Das ist mir schon klar (und selbst beim Anlegen der Dateien kann das anlegende Programm noch andere Rechte angeben/verwenden).
Ich bin fast sicher, daß das anlegende Programm an der umask nicht vorbei kommt. Wenn du z.B. eine umask von 022 eingestellt hast und das anlegende Programm eine Datei mit 666 Rechten anlegen will, hat die resultierende Datei 644. Beim Anlegen kann man zwar weniger Rechte verwenden als umask erlauben würde, aber darüber kommt man eigentlich nicht.
Mich interessiert mehr unter welchen Umständne die Rechte meiner Dateien im Homeverzeichnis eine Rolle spielen, wenn das Homeverzeichnis selbst niemand lesen kann außer mir?
Wenn dein Home-Verzeichnis die Rechte 700 hat, dann kann niemand ausser dir und root in das Verzeichnis wechseln. Folglich kann auch keiner auf Dateien im Home und seinen Unterverzeichnissen zugreifen, selbst, wenn diese 777-Rechte hätten.

willy4711

Re: umask in Debian ändern oder nicht

Beitrag von willy4711 » 12.01.2019 23:46:10

Bei den Ubuntus ist dazu was erläutert:
https://wiki.ubuntuusers.de/Homeverzeic ... renzierter

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

Re: umask in Debian ändern oder nicht

Beitrag von smutbert » 14.01.2019 22:05:50

Danke.
Gerade sind mir noch weitere Dateien aufgefallen, zum Beispiel temporäre Dateien in /vat/tmp auf die mit umask 022 jeder Zugriff hat. Für eine richtige Lösung kommt man wohl doch nicht um das Ändern von umak herum.

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

Re: umask in Debian ändern oder nicht

Beitrag von smutbert » 19.01.2019 20:55:32

Also gut, das Ändern der umask für alle systemd-user-units hat unerwartete Nebenwirkungen:
Bild
(das sollte ein gtk3-Switch in den Einstellungen von Gnome mit On/Off oder 1/0 sein)

Ich vermute nun sind für irgendwelche Dateien, entweder temporäre oder welche unterhalb von »~/.cache« die Rechte zu restriktiv, aber ich habe bis jetzt anhand der Logeinträge weder herausfinden können um welche user-unit, noch um welches Programm noch um welche Dateien genau es gehen könnte.

Antworten