Im Kursmodul B4 hast du bereits im Rahmen von Praxis-Labs einen Blick auf die Verwaltung der Zugriffsberechtigungen auf Windows- und Linux-Systemen werfen können. In diesem und dem nächsten Abschnitt ordnen wir dies nun ein und ergänzen einige Informationen.
Im Gegensatz zu den ACLs auf Cisco-Systemen sind ACLs für den Zugriff auf Objekte eines Dateisystems anders gestaltet. Sie steuern, welcher Benutzer oder Prozess welche Ressource
kann. Zudem gibt es bei DACLs (Discretionary ACLs) für alle Ressourcen einen Eigentümer bzw. Besitzer. Er kann die Zugriffsrechte für die Ressource setzen. DACLs sind in Betriebssystemen wie Windows und Linux standardmäßig implementiert.
Wie du bereits gelernt hast, gibt es mit Systemerweiterungen wie AppArmor oder SELinux die Möglichkeit, MAC-Systeme (Mandatory Access Control) zu nutzen. Hier gibt es keinen dedizierten Ressourcen-Eigentümer, die Zugriffsrechte werden zentral durch den Administrator verwaltet.
Wir beginnen unsere Betrachtung mit der Linux-Welt, da die Rechteverwaltung hier deutlich einfacher gehalten ist, als unter Windows. Im Kursmodul B4 hast du das Rechtesystem bereits kennengelernt. Zur Wiederholung:
r), schreiben (w) und Ausführen (x) erlauben oder verbietenr, w und x hängt davon ab, ob es sich um eine Datei oder ein Verzeichnis handelts statt x im User-Tupel dargestellt s statt x im Group-Tupel dargestelltt statt x im Others-Tupel dargestelltHier ein Beispiel:

In der obigen Abbildung siehst du die Rechte für das Programm passwd zum Ändern der Passwörter. In der ersten Spalte steht die Art des Eintrags, das Minus (-) steht für eine normale Datei, d steht z.B. für ein Verzeichnis (Directory).
Es folgt das Rechte-Tupel für den User (hier: root). Hier findest du auch das spezielle Recht SUID (s statt x). Für Group (hier: root) und Others stehen die Rechte-Tupel auf r-x, es wird ihnen also Lesen und Ausführen gestattet, nicht jedoch Schreiben.
Festlegen und ändern lassen sich die Zugriffsrechte durch den Befehl chmod. Er kann in zwei Varianten genutzt werden:
chmod u+rwx,g+rx,o-rwx meinedateichmod 755 meinverzeichnisDies ist nur dem Eigentümer und root erlaubt. der Super User root darf auf einem Linux-System grundsätzlich und buchstäblich alles und ist daher sehr gefährlich. Daher sollte dieser User nur selten und mit großer Vorsicht verwendet werden. Das sudo-System ermöglicht es normalen Benutzern, temporär mit root-Rechten zu arbeiten.

„Ist denn das überhaupt eine ACL? Sieht ja gar nicht so aus, wie eine Liste mit ACEs.“
„Das stimmt, ist aber nur eine Frage der Darstellung. Eine ACL ist es im erweiterten Sinne trotzdem. Du kannst dir die Einträge für User, Group und Others auch einfach untereinander vorstellen, dann passt es wieder.“

Das Linux-Rechtesystem ist sehr einfach, reicht aber trotzdem für viele Standard-Szenarien. Für Situationen, in denen die Rechtevergabe granularer erfolgen muss, unterstützt Linux die erweiterten POSIX ACLs. Nehmen wir folgendes Beispiel, bei dem das Standard-Rechtesystem an seine Grenzen stößt:
Für eine vertrauliche Datei pentest-report.doc sollen folgende Zugriffsrechte erteilt werden:
Um diese Rechte explizit zu setzen, können die erweiterten POSIX-ACLs genutzt werden. Mit dem Befehl getfacl <Datei> können die derzeiten POSIX-Rechte ausgelesen werden:

Dies entspricht den Standard-Rechten für User, Group und Others. Für einen sauberen Ausgangszustand sollten zunächst die Rechte für Group und Others entzogen werden:
chmod 600 pentest-report.doc
Mit setfacl -m können nun die entsprechenden Rechte gesetzt werden, z.B. folgendermaßen:

Mit setfacl -x können die Rechte wieder entzogen werden, z.B. für die Trainee-Gruppe:
setfacl -x g:sectrainees pentest-report.doc
Mit POSIX-ACLs lässt sich unter Linux ein deutlich granulareres Rechtesystem umsetzen als mit dem klassischen Unix-/POSIX-Modell. Dadurch nähert sich die Rechteverwaltung funktional dem ACL-Konzept von Windows an. Die Möglichkeiten bleiben jedoch im Vergleich zu Windows-DACLs eingeschränkter.
Zudem gelten POSIX-ACLs in größeren Umgebungen häufig als komplexer, unübersichtlicher und administrativ aufwändiger, weshalb viele Administratoren sie nur gezielt einsetzen. Sie sind z.B. wichtig für Samba-Dateiserver (Windows-Server auf Linux-Systemen), Dateiserver oder komplexe Multiuser-Umgebungen.

„Wie werden die Linux-ACLs denn nun verarbeitet? Läuft das so gradlinig ab wie bei Cisco-ACLs?“
„Nein, da Linux-ACLs eine ganz andere Zielsetzung haben, werden sie auch anders verarbeitet“

Im Gegensatz zu ACLs auf Cisco-Geräten gibt es:
Normalerweise fällt ein Benutzer immer in eine der drei Gruppen: Eigentümer, zugewiesene Gruppe oder alle anderen. Hier ist die Situation klar. Bei den erweiterten POSIX-ACLs könnte ein Benutzer auch in mehreren Gruppen sein. Hier werden seine Zugriffsrechte addiert.
Betrachten wir noch einmal das obige Beispiel: Wäre Melina z.B. in den Gruppen sectrainees und secadmins, hätte sie unter dem Strich die Zugriffsrechte Lesen und Schreiben.
Teste dich selbst und löse die folgende Quizfrage: