Ist es möglich, Dateiberechtigungen auf einem ext3- oder ext4-Dateisystem zu deaktivieren?

10

Ist es möglich, Dateiberechtigungen auf einem ext3 / 4-Dateisystem zu deaktivieren?

Ich frage mich nur, ob es möglich ist, Dateiberechtigungen in einem ext3- oder ext4-Dateisystem vollständig zu deaktivieren oder zu ignorieren. Vielleicht eine Montagemöglichkeit?

Ich bin nicht besorgt über die Auswirkungen auf die Sicherheit, da ich dies zum Testen und für Wechselmedien tun würde.

Corey
quelle
2
Warum sollten Sie Dateiberechtigungen aus einem ext3- oder ext4-Dateisystem entfernen? Sie wurden unter Berücksichtigung der POSIX-Dateiberechtigungen erstellt. Wenn Sie ein Dateisystem mit eingeschränkten Berechtigungsoptionen verwenden möchten, ist möglicherweise etwas wie FAT32 oder exFAT besser?
Rob Gibson
Ich bin gespannt, ob es eine native Linux-Option gibt
Corey
2
Es ist eine Linux-native Option, FAT32 zu verwenden, da es sich um ein unterstütztes Dateisystem handelt. Sie müssen lediglich ein Dateisystem verwenden, das nicht für POSIX-Systeme ausgelegt ist, da diese Dateiberechtigungen unterstützen.
Rob Gibson
1
würde $ sudo chmod -R 777 /your/filesystemden Trick nicht tun?
Red Cricket
1
@ RedCricket, das wäre eine Problemumgehung, wenn sich herausstellen würde, dass die Antwort Nein lautet
Corey

Antworten:

5

Das ist nicht das einzige, was Sie tun können.

Es gibt eine Möglichkeit, einfach allen Berechtigungen zu erteilen, ohne die regulären Berechtigungen zu verwenden, wodurch Ihre Anzeige (in gewisser Weise) unübersichtlich wird.

Dies bedeutet, dass ls --color(standardmäßig) immer o:rwXin einem Blockhintergrund angezeigt wird , der abscheulich ist und nur dazu dient, Benutzer auf falsche Berechtigungen aufmerksam zu machen (wenn sie für Sie richtig sind).

Mithilfe von Zugriffssteuerungslisten können Sie jedoch problemlos universelle (oder nahezu universelle) Schreibberechtigungen für Ihre Dateien erreichen .

setfacl -d -m g:sudo:rwX .
setfacl -m g:sudo:rwX .

gibt allen Personen in der sudo-Gruppe rwX-Berechtigungen. Da die meisten Ihrer Systeme einen Benutzer in der Sudo-Gruppe haben, insbesondere für Wechselmedien (und damit für lokale Systeme), haben Sie für jeden in dieser Gruppe (der Sie sind) immer Zugriff. Sie können es auch auf Benutzer erweitern, falls Sie sich auf einem anderen System befinden, das diese Gruppe verwendet:

setfacl -d -m g:users:rwX .
setfacl -m g:users:rwX .

Das Flag -d bedeutet, dass die Berechtigungen an alle neu erstellten Dateien weitergegeben werden (Standard). Der einzige Nachteil ist, dass Sie diese Berechtigungen normalerweise nicht sehen können , was bedeutet, dass Sie sie lieber vollständig deaktivieren möchten (was nützt ein Entfernungsmedium, wenn Sie Berechtigungen festlegen, die ohnehin jeder umgehen kann, oder?). Das ist wie zu sagen: Sie können auf diese Dateien zugreifen, wenn Sie sich John nennen. Okay, ich nenne mich John. Gut, Sie haben jetzt Zugriff.

(Jeder kann auf jedem System, das er besitzt, root annehmen, und daher bedeuten Dateisystemberechtigungen nichts).

ExtFS ist einfach nicht für Wechselmedien gedacht. Es gibt keine Linux-Dateisysteme, die auf Wechselmedien wirklich nützlich sind, aber FAT und NTFS haben den Nachteil, dass sie Symlinks nicht wirklich unterstützen und Flags ausführen, was beispielsweise für Git-Repositorys schwierig ist. Nur meine Meinung hier.

Sie können Ihre Datei-ACL nur sehen, indem Sie Folgendes tun:

getfacl <file>

Und wenn Sie ls -l sind, werden Sie sehen:

drwxr-xr-x+ 4 user user 4096 aug 31 03:40 .

Das + zeigt an, dass in der Datei (oder im Verzeichnis) eine ACL aktiv ist.

Die Ausgabe von getfacl lautet (zum Beispiel):

# file: .
# owner: user
# group: user
user::rwx
group::rwx                      #effective:r-x
group:sudo:rwx                  #effective:r-x
mask::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:sudo:rwx
default:mask::rwx
default:other::r-x

Ich kenne nicht alle Details, aber das sollte funktionieren. Solange Sie im Sudo sind, können Sie alles tun.

Xennex81
quelle
4

Nein, Sie können die Dateiberechtigungen für ext {2,3,4} -Dateisysteme nicht löschen.

Sie können nur alle Dateien auf die Berechtigung 777 setzen .

Lauf einfach:

 chmod a+rwX -R <mountpoint>
H.-Dirk Schmitt
quelle
4
Machen Sie das besser, chmod a+rwX -R <mountpoint>um keine falschen Ausführungsberechtigungen zu erteilen.
vonbrand
@vonbrand rechts
H.-Dirk Schmitt
aber das Xin chmod a+rwXmacht alle Dateien ausführbar, oder? Das ist gut??
Becko
3
@becko Du hast den Punkt der beiden vorherigen Kommentare verpasst. In XGroßbuchstaben werden Verzeichnisse nur ausführbar (eingegeben), ohne dass Dateien ausführbar sind. Durch Kleinbuchstaben xwerden alle Dateien und Verzeichnisse ausführbar.
XA21X
0

Natürlich werden die Dateisystemberechtigungen nur vom Dateisystemtreiber (Modul) überprüft. Wenn Sie dieses Modul patchen, können Sie die gewünschten Dateisystemberechtigungen deaktivieren.

Ich habe dies einmal für cifs.ko getan, das 'Samba'- (Client-) Modul für den Kernel, weil es einige Samba-Fehler gibt, bei denen Sie lokalen Zugriff haben sollten und Sie Remotezugriff haben, aber dennoch kein Zugriff gewährt wird.

Ich habe die lokale Berechtigungsprüfung deaktiviert, wenn sich der lokale Benutzer in der (lokalen) Gruppe der Datei befindet. Dies entspricht der Option "noperm" und wird diesmal nur aktiviert, wenn Sie ein Gruppenmitglied sind.

Natürlich ist extfs nicht gerade ein Modul im Kernel, aber ein neues Flag wäre trivial hinzuzufügen.

Xennex81
quelle
Ich bin mir nicht sicher, ob Sie die Frage beantworten oder nicht. Sie sagen, es ist möglich, wenn es ein Modul war, dann sagen Sie, dass es kein Modul ist.
Jeff Schaller
Es wäre möglich, wenn die Sonne auch quadratisch am Himmel tanzen würde. Wenn Sie etwas über den Kernel wüssten, würden Sie wissen, dass etwas, das kein Modul ist, das Neukompilieren des gesamten Kernels erfordern würde, was für normale Leute etwas unerschwinglich ist, während das Kompilieren eines Moduls relativ kostenlos ist. Ich spreche nur die Tatsache aus, dass Linux nichts innewohnt, was das Entstehen einer solchen Option ausschließen würde, da mich diese Einschränkung ebenfalls sehr gestört hat.
Xennex81