BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

Dateien unter Free- und OpenBSD mit Flags schützen

Auf Free- und OpenBSD gibt es die Möglichkeit, Dateien zusätzlich zu den User-, Group- und Othersattributen zu schützen. Diese Flags werden mit chflags(1) gesetzt und entfernt.

Setzen eines Flags:

# chflags <Flag> <Datei>

Um zum Beispiel das schg-Flag auf die testdatei zu setzen, verwende folgenden Befehl:

# chflags schg testdatei

Angezeigt werden die Flags mit ls -ol

# ls -ol
-rw------- 1 beat users schg 618 Oct 5 15:20 testdatei

Entfernt werden die Flags indem man ein no vor die Flagbezeichnung setzt. Um zum Beispiel das schg Flag von der testdatei wieder zu entfernen, verwende:

# chflags noschg testdatei

Es gibt folgende Flags:

schg Niemand, auch nicht root, kann die Datei umbenennen, verändern oder löschen. Auch die Metadaten (Besitzer, Zuriffsrechte u.s.w.) können nicht verändert werden. Wird das Flag auf ein Verzeichnis gesetzt, so können keine neuen Dateien eingefügt werden. Kann nur von root gesetzt werden und nur von root und bei einem Securelevel < 1 wieder entfernt werden.

uchg Datei kann wie beim schg Flag nicht verändert werden, jedoch kann das uchg Flag von root und dem Dateibesitzer gesetzt und unabhängig vom Securelevel von beiden wieder entfernt werden.

sappnd Datei kann nicht verändert oder gelöscht werden, jedoch ist das Anfügen von Daten am Ende der Datei erlaubt. Kann nur von root gesetzt werden und nur von root und bei einem Securelevel < 1 wieder entfernt werden.

uappnd Es kann wie beim sappnd Flag nur angefügt werden, jedoch kann das uappnd Flag von root und dem Dateibesitzer gesetzt und unabhängig vom Securelevel von beiden wieder entfernt werden.

sunlnk Datei kann nicht gelöscht werden. Kann nur von root gesetzt werden und nur von root und bei einem Securelevel < 1 wieder entfernt werden. Dieses Flag existiert bei OpenBSD nicht.

uunlnk Datei kann wie beim sunlnk Flag nicht gelöscht werden, jedoch kann das uunlnk Flag von root und dem Dateibesitzer gesetzt und unabhängig vom Securelevel von beiden wieder entfernt werden. Dieses Flag existiert bei OpenBSD nicht.

nodump Datei mit gesetztem nodump Flag wird bei einem Backup mit dump(8) nicht gesichert. Dies ist die einzige Ausnahme indem der no Prefix das Flag nicht entfernt. Entfernt wird das Flag mit chflag dump <Datei> ! Kann von root oder dem Dateibesitzer gesetzt und entfernt werden.

opaque Wird mit unionfs verwendet. Unionfs ist aber noch nicht für den produktiven Einsatz gedacht. Zitat aus der Sektion BUGS aus der FreeBSD Manpage zu mount_unionfs(8):

THIS FILE SYSTEM TYPE IS NOT YET FULLY SUPPORTED (READ: IT DOESN'T WORK) AND USING IT MAY, IN FACT, DESTROY DATA ON YOUR SYSTEM. USE AT YOUR OWN RISK. BEWARE OF DOG. SLIPPERY WHEN WET.

arch Dieses Flag hat keine Funktion und kann zur individuellen Kennzeichnung von Dateien verwendet werden.

Die Dateiflags sollten mit Bedacht eingesetzt werden, da sie zwar zusätzlichen Schutz bieten, jedoch das Administrieren unter Umständen erschweren können.

Weitere Informationen:

FreeBSD chflags(1)

OpenBSD chflags(1)

Related Entries:
Zeit synchronisieren mit ntpd
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
 Permalink

Comments

No new comments allowed (anymore) on this post.