Der Home-Ordner verfügt über schreibgeschützte Berechtigungen für alle Benutzer


11

Ich habe gerade festgestellt, dass in meinem Home-Ordner ( / HD / Users / Bob ) auf der Stammebene alle "ReadOnly" -Berechtigungen festgelegt sind.

Wenn ich diesen Ordner von einem anderen Konto aus durchsuche, kann ich die Ordner anzeigen, aber ich darf die Standard-OS X-Ordner (Desktop, Dokumente, Musik, Filme usw.) nicht öffnen. Allerdings habe ich ein paar Ordner auf der obersten Ebene meines Home - Ordner erstellt, und diejenigen , SIND zugänglich zu diesem anderen Benutzer. Sie können Ordner öffnen und einige der Dokumente mit ReadOnly-Zugriff öffnen.

Sieht das noch jemand? Ist dies eine Standardkonfiguration oder ist mein Mac kaputt? Dies scheint eine Sicherheitslücke zu sein, durch die Benutzer auf Dateien anderer Benutzer im System zugreifen können.

Ich verwende einen ziemlich sauberen Build von Yosemite 10.10.1 - dieser wurde vor ungefähr einem Monat installiert. Ich habe meine alten Dateien von einer Festplatte wiederhergestellt. Sie wurden nicht über Time Machine wiederhergestellt

Antworten:


2

Dies ist die Standardberechtigungskonfiguration. Das Stammverzeichnis Ihres Basisordners ist global gelesen, aber Standard-OS X-Ordner wie Desktop und Dokumente sollten global ohne Zugriff sein. Sie können die Berechtigungen anderer Ordner, die Sie im Stammverzeichnis Ihres Basisordners erstellen, so festlegen, dass sie mit den Berechtigungen für die Standardordner übereinstimmen.

Wenn Sie möchten, dass neue Ordner standardmäßig global ohne Zugriff sind, ändern Sie die Berechtigungen im Stammverzeichnis Ihres Basisordners, geben Sie die Berechtigungen rekursiv weiter und richten Sie ACLs ein, um Berechtigungen für neue Ordner zu erben. Ich bin mir jedoch nicht sicher, welche Auswirkungen dies hat könnte haben.


1
Das ist so interessant ... eine Idee, warum es so ist? Es scheint ein seltsames Setup zu sein.
slidmac07

Bevor ich hier gepostet habe, habe ich den Zugriff auf Stammebene geändert und nach unten weitergegeben. Es hat definitiv meinen Computer durcheinander gebracht, und ich würde den Leuten raten, die ACLs hier NICHT zu ändern. Nach der Wiederherstellung aus einem Backup habe ich beschlossen, alle Nicht-Apple-Verzeichnisse in Apple-spezifische Ordner zu verschieben
slidmac07

@ slidmac07 Wenn Sie nicht absolut sicher sind, dass Sie wissen, was Sie tun, kann das rekursive Ändern / Weitergeben von Berechtigungen gefährlich sein, wie Sie herausgefunden haben.
Douggro

1
@ganbustein: Unter normalen UNIX-Vor-ACLs ist ein Nur-Ausführungsverzeichnis "durchlaufbar", aber nicht lesbar. Das Lesebit ist erforderlich, um die Dateien tatsächlich in einem Verzeichnis aufzulisten. // Ja, ein Bösewicht könnte alle möglichen Namen untersuchen, aber jedes anständige Intrusion Detection-System erkennt ein solches Zugriffsmuster und weint in Kürze. // Gute Sicherheitspraktiken können dazu führen, dass Ihr Home-Verzeichnis ~ durchlaufbar (nur ausführbar) (idealerweise nur für ~ / Public usw.), ~ / Public für alle lesbar und alle anderen Dateien unter ~ standardmäßig nicht für alle lesbar oder durchlaufbar sind , einschließlich neuer Dateien.
Krazy Glew

1
Wenn der springende Punkt darin besteht, ~ / Public zugänglich zu machen, hätte ich lieber das öffentliche Verzeichnis außerhalb meines Benutzerverzeichnisses, z. B. mkdir / Users / Shared / <Benutzername> für jeden Benutzer.
Amydyes

5

Wenn Sie möchten, dass neue Ordner auf der obersten Ebene Ihres Basisordners standardmäßig von niemand anderem als Ihnen gelesen werden können, fügen Sie Ihrem Basisordner die folgenden zwei ACLs hinzu. VERBREITEN SIE KEINE ERLAUBNISSE. Die erste ACL macht alle neuen Ordner für alle unlesbar, nicht beschreibbar und nicht durchsuchbar. Die zweite ACL macht eine Ausnahme für Sie. Stellen Sie sicher, dass Sie sie in dieser Reihenfolge eingeben, damit sich der zweite Eintrag nach vorne verschieben kann.

chown +a "group:everyone deny list,add_file,search,add_subdirectory,delete_child,directory_inherit,limit_inherit,only_inherit" ~
chown +a# 0 "user:$USER allow list,add_file,search,add_subdirectory,delete_child,directory_inherit,limit_inherit,only_inherit" ~

Um ehrlich zu sein, ist es einfacher, die Berechtigungen für alle Unterordner zu korrigieren, die Sie direkt unter Ihrem Home-Ordner erstellen. Ich meine, es ist nicht so, dass du das oft machst, oder?

Und außerdem, wer soll sagen, dass Sie diese neuen Ordner nur für Sie lesbar haben möchten? Was ist, wenn Sie einen Ordner möchten, der für eine Gruppe gruppenlesbar, für die Welt jedoch nicht lesbar ist? Diese geerbten ACLs werden Ihnen dann nur noch im Weg stehen.

Das Erstellen eines Ordners für den Top-of-Home-Ordner sollte ein seltenes Ereignis sein. Ad-hoc-Lösungen eignen sich am besten für seltene Ereignisse.


2
Einige von ihnen sind jedoch von UNIX und / oder Linux zu MacOS gekommen, wo das Erstellen eines Ordners oder einer Datei im oberen Bereich des Home-Ordners ein häufiges Ereignis ist. Diese Standard-Mac-Berechtigungen machen uns fertig, wenn wir weiter arbeiten, als wären wir auf einem normalen UNIX-System.
Krazy Glew

1

Wow, ich war ziemlich schockiert, als ich das merkte.

Eine andere Lösung besteht darin, das Home-Verzeichnis für alle anderen zu sperren:

chmod 700 ~


Was, wie bereits ein Jahr zuvor erwähnt, aus dem Namen ~ / Public
WGroleau am
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.