Dateien- und Verzeichnisberechtigungen unter Linux verwalten

CompTIACompTIABeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einleitung

In diesem Lab lernen Sie die grundlegenden Fähigkeiten zur Verwaltung von Datei- und Verzeichnungsberechtigungen in einer Linux-Umgebung. Sie beginnen mit der Einrichtung eines dedizierten Arbeitsbereichs, der Erstellung eines neuen Verzeichnisses und einer Beispieldatei, die als Grundlage für die Übungen dienen. Dieser praktische Ansatz ermöglicht es Ihnen, die Kontrolle über den Datenzugriff mit wesentlichen Befehlszeilenwerkzeugen zu üben.

Während des Labs verwenden Sie den Befehl chown, um den Dateibesitz zu ändern, und den Befehl chmod, um Lese-, Schreib- und Ausführungsberechtigungen für verschiedene Benutzer und Gruppen zu ändern. Sie wenden diese Konzepte zuerst auf eine einzelne Datei an und lernen dann, wie sich diese Berechtigungen einzigartig auf den Verzeichniszugriff auswirken. Am Ende werden Sie in der Lage sein, Dateien effektiv zu sichern und den Benutzerzugriff auf einem Linux-System zu verwalten.

Arbeitsbereich vorbereiten und eine Datei erstellen

In diesem Schritt beginnen Sie mit der Einrichtung eines dedizierten Arbeitsbereichs für dieses Lab. Die Organisation von Dateien in spezifischen Verzeichnissen ist eine grundlegende Praxis unter Linux, um ein sauberes und überschaubares Dateisystem zu pflegen. Sie erstellen ein Verzeichnis und darin eine neue Datei, die als Gegenstand für die Berechtigungsmanagement-Übungen in den folgenden Schritten dient.

Zuerst erstellen wir ein neues Verzeichnis namens RandD (für Research and Design) innerhalb Ihres aktuellen Arbeitsverzeichnisses ~/project. Der Befehl mkdir wird zum Erstellen neuer Verzeichnisse verwendet.

Führen Sie den folgenden Befehl in Ihrem Terminal aus:

mkdir RandD

Navigieren Sie als Nächstes in das neu erstellte Verzeichnis RandD. Der Befehl cd (change directory) ermöglicht es Ihnen, zwischen Verzeichnissen im Dateisystem zu wechseln.

cd RandD

Ihre Terminal-Eingabeaufforderung sollte nun anzeigen, dass Sie sich im Verzeichnis ~/project/RandD befinden.

Erstellen wir nun eine leere Datei, die ein Design-Dokument repräsentiert. Der Befehl touch ist eine einfache Möglichkeit, eine neue, leere Datei zu erstellen. Wenn die Datei bereits existiert, aktualisiert touch ihren Änderungszeitstempel, ohne ihren Inhalt zu ändern.

Erstellen Sie eine neue Datei namens design_doc.odt:

touch design_doc.odt

Um zu bestätigen, dass die Datei erstellt wurde und um ihre Standardeigenschaften zu überprüfen, verwenden Sie den Befehl ls -l. Dieser Befehl listet den Inhalt des aktuellen Verzeichnisses im Langformat auf und liefert detaillierte Informationen wie Berechtigungen, Eigentümer, Gruppe, Größe und Änderungsdatum.

ls -l

Sie sollten eine Ausgabe ähnlich der folgenden sehen. Beachten Sie, dass die neue Datei standardmäßig Ihrem Benutzerkonto (labex) und Ihrer primären Gruppe (labex) gehört. Die Berechtigungszeichenkette -rw-rw-r-- wird in den folgenden Schritten detailliert erläutert.

total 0
-rw-rw-r-- 1 labex labex 0 Jun 26 10:36 design_doc.odt

Sie haben nun erfolgreich den Arbeitsbereich vorbereitet und die Zieldatei für dieses Lab erstellt. In den nächsten Schritten lernen Sie, wie Sie deren Eigentümerschaft und Berechtigungen ändern.

Dateibesitz mit dem Befehl chown ändern

In diesem Schritt lernen Sie, wie Sie den Besitz einer Datei ändern. Unter Linux wird jede Datei und jedes Verzeichnis einem Eigentümer (einem bestimmten Benutzer) und einer Gruppe zugeordnet. Dieser Besitz ist ein Eckpfeiler des Linux-Sicherheitsmodells, da er bestimmt, wer das Recht hat, Dateien zu lesen, zu schreiben und auszuführen. Der Befehl zum Ändern des Besitzes ist chown.

Unser Szenario erfordert, dass die Datei design_doc.odt von einem neuen Benutzer, student1, und einer neuen kollaborativen Gruppe, research, verwaltet wird. Da dieser Benutzer und diese Gruppe noch nicht existieren, müssen Sie sie zuerst erstellen.

Stellen Sie sicher, dass Sie sich immer noch im Verzeichnis ~/project/RandD befinden. Wenn nicht, navigieren Sie mit dem Befehl cd ~/project/RandD dorthin.

Erstellen Sie zuerst die Gruppe research mit dem Befehl groupadd. Dies ist eine Operation auf Systemebene, die administrative Berechtigungen erfordert, daher müssen Sie sudo verwenden.

sudo groupadd research

Erstellen Sie als Nächstes den Benutzer student1 mit dem Befehl useradd. Das Flag -m wird verwendet, um ein Home-Verzeichnis für den neuen Benutzer zu erstellen, was eine Standardpraxis ist. Dies erfordert ebenfalls sudo.

sudo useradd -m student1

Nachdem nun der Benutzer student1 und die Gruppe research existieren, können Sie den Besitz der Datei design_doc.odt ändern. Die Syntax für chown lautet chown user:group filename. Sie benötigen sudo, um diesen Befehl auszuführen, da Sie die Datei einem anderen Benutzer zuweisen.

sudo chown student1:research design_doc.odt

Um zu überprüfen, ob der Besitz aktualisiert wurde, verwenden Sie erneut den Befehl ls -l.

ls -l

Die Ausgabe zeigt nun student1 als Benutzerbesitzer und research als Gruppenbesitzer an.

total 0
-rw-rw-r-- 1 student1 research 0 Jun 26 10:36 design_doc.odt

Vergleichen Sie dies mit der vorherigen Ausgabe. Die dritte und vierte Spalte haben sich von labex labex zu student1 research geändert, was bestätigt, dass Ihr Befehl erfolgreich war. Sie haben nun den Besitz des Design-Dokuments übertragen.

Dateiberechtigungen mit dem Befehl chmod ändern

In diesem Schritt lernen Sie, wer eine Datei lesen, schreiben oder ausführen darf, indem Sie den Befehl chmod (change mode) verwenden. Dateiberechtigungen sind ein grundlegender Aspekt des Linux-Sicherheitsmodells. Sie werden üben, die Berechtigungen für "andere" zu entfernen, um das Dokument sicherer zu machen.

Stellen Sie zunächst sicher, dass Sie sich im Verzeichnis ~/project/RandD befinden. Untersuchen wir die aktuellen Berechtigungen von design_doc.odt erneut mit ls -l.

ls -l
-rw-rw-r-- 1 student1 research 0 Jun 26 10:36 design_doc.odt

Die Zeichenkette -rw-rw-r-- repräsentiert die Dateiberechtigungen. Sie ist in drei Sätze von je drei Zeichen für den Benutzer (Eigentümer), die Gruppe und andere (alle anderen) unterteilt.

  • rw-: Der Eigentümer, student1, hat Lese- (r) und Schreib- (w) Berechtigungen.
  • rw-: Die Gruppe, research, hat bereits Lese- (r) und Schreib- (w) Berechtigungen.
  • r--: Andere haben nur Lese- (r) Berechtigung.

Wie Sie sehen können, hat die Gruppe research bereits Schreibzugriff auf dieses Dokument, was die Zusammenarbeit ermöglicht. Um jedoch sicherzustellen, dass das Dokument vertraulich bleibt, sollten Sie alle Berechtigungen für "andere" entfernen. Dies können Sie mit chmod unter Verwendung der Oktal- (numerischen) Notation erreichen, was eine gängige und effiziente Methode ist.

Lassen Sie uns die aktuellen Berechtigungen noch einmal überprüfen:

ls -l

Die Ausgabe bestätigt die aktuellen Berechtigungen:

-rw-rw-r-- 1 student1 research 0 Jun 26 10:36 design_doc.odt

Um sicherzustellen, dass das Dokument vertraulich bleibt, sollten Sie nun alle Berechtigungen für "andere" entfernen. Dies können Sie mit chmod unter Verwendung der Oktal- (numerischen) Notation erreichen, was eine gängige und effiziente Methode ist.

So funktionieren Oktal-Berechtigungen:

  • r (lesen) = 4
  • w (schreiben) = 2
  • x (ausführen) = 1

Sie addieren die Zahlen für die gewünschten Berechtigungen für jede Kategorie (Benutzer, Gruppe, andere).

  • Benutzer: lesen (4) + schreiben (2) = 6
  • Gruppe: lesen (4) + schreiben (2) = 6
  • Andere: keine Berechtigungen = 0

Der resultierende Berechtigungscode ist 660. Wenden wir ihn an.

sudo chmod 660 design_doc.odt

Überprüfen Sie abschließend noch einmal die Berechtigungen.

ls -l

Die Ausgabe bestätigt, dass "andere" nun keine Berechtigungen mehr haben (---), wodurch das Dokument gesichert wird.

-rw-rw---- 1 student1 research 0 Jun 26 10:36 design_doc.odt

Sie haben erfolgreich die Dateiberechtigungen geändert, um die Zusammenarbeit innerhalb der Gruppe zu ermöglichen und gleichzeitig den Zugriff durch andere einzuschränken.

Verzeichniszugriffsberechtigungen steuern

In diesem letzten Schritt sichern Sie das gesamte Verzeichnis RandD. Genau wie Dateien haben auch Verzeichnisse Berechtigungen, die den Zugriff steuern. Die Bedeutung von Lese-, Schreib- und Ausführungsberechtigungen ist jedoch für Verzeichnisse unterschiedlich.

  • r (lesen): Ermöglicht einem Benutzer, den Inhalt des Verzeichnisses aufzulisten (d. h. die Namen der Dateien und Unterverzeichnisse darin anzuzeigen).
  • w (schreiben): Ermöglicht einem Benutzer, Dateien innerhalb des Verzeichnisses zu erstellen, zu löschen und umzubenennen. Diese Berechtigung ist mächtig, da sie die Änderung des Verzeichnisinhalts unabhängig von den Berechtigungen der Dateien selbst ermöglicht.
  • x (ausführen): Ermöglicht einem Benutzer, das Verzeichnis zu betreten (z. B. mit cd) und auf Dateien oder Unterverzeichnisse darin zuzugreifen. Ohne Ausführungsberechtigung können Sie auf keine Elemente innerhalb des Verzeichnisses zugreifen, selbst wenn Sie Lesezugriff haben.

Navigieren Sie zunächst zum übergeordneten Verzeichnis ~/project, um das Verzeichnis RandD selbst bearbeiten zu können.

cd ..

Untersuchen wir nun die aktuelle Eigentümerschaft und die Berechtigungen des Verzeichnisses RandD mit dem Befehl ls -ld. Das Flag -d ist hier entscheidend; es weist ls an, Informationen über das Verzeichnis selbst aufzulisten, nicht über dessen Inhalt.

ls -ld RandD

Die anfängliche Ausgabe sieht ungefähr so aus:

drwxrwxr-x 2 labex labex 28 Jun 26 10:36 RandD

Dies zeigt, dass der Eigentümer (labex) vollen Zugriff (rwx) hat, die Gruppe (labex) ebenfalls vollen Zugriff (rwx) hat und andere nur lesen und das Verzeichnis betreten können (r-x). Um dies zu einem ordnungsgemäßen kollaborativen Ordner für das research-Team zu machen, sollten Sie zuerst die Gruppen-Eigentümerschaft des Verzeichnisses auf research ändern.

sudo chown :research RandD

Als Nächstes setzen Sie die Berechtigungen so, dass sowohl der Eigentümer (labex) als auch die Gruppe (research) die volle Kontrolle erhalten, während der Zugriff für andere vollständig entfernt wird. Die gewünschte Berechtigung ist rwxrwx---, was dem Oktalcode 770 entspricht. Als Eigentümer des Verzeichnisses können Sie dessen Berechtigungen ändern, ohne sudo verwenden zu müssen.

chmod 770 RandD

Überprüfen wir abschließend die Änderungen.

ls -ld RandD

Die Ausgabe sollte nun die neue Eigentümerschaft und die Berechtigungen widerspiegeln und das Verzeichnis für Ihr Team sichern.

drwxrwx--- 2 labex research 28 Jun 26 10:36 RandD

Sowohl der Benutzer labex als auch alle Mitglieder der Gruppe research haben nun volle Lese-, Schreib- und Ausführungsberechtigungen für das Verzeichnis RandD, während alle anderen Benutzer keinen Zugriff haben. Sie haben erfolgreich einen sicheren kollaborativen Bereich konfiguriert.

Zusammenfassung

In diesem Labor haben Sie die grundlegenden Schritte zur Vorbereitung eines Arbeitsbereichs in einer Linux-Umgebung kennengelernt. Dies umfasste das Erstellen eines neuen Verzeichnisses mit dem Befehl mkdir, das Navigieren hinein mit cd und das Erstellen einer leeren Datei mit touch. Sie haben auch den Befehl ls -l verwendet, um die detaillierten Eigenschaften der neu erstellten Datei zu untersuchen und deren Standardeigentümer, Gruppe und Berechtigungseinstellungen zu beobachten, was die Grundlage für die nachfolgenden Verwaltungsaufgaben bildete.

Aufbauend auf dieser Grundlage haben Sie die Kernkonzepte der Linux-Dateisystem-Sicherheit erkundet. Das Labor zeigte, wie die Eigentümerschaft einer Datei mit dem Befehl chown geändert wird, um die Kontrolle an einen anderen Benutzer oder eine andere Gruppe zu übertragen. Anschließend lernten Sie, die Lese-, Schreib- und Ausführungsberechtigungen für den Eigentümer, die Gruppe und andere mit dem Befehl chmod zu ändern. Schließlich wurde gezeigt, wie diese Berechtigungskonzepte speziell auf Verzeichnisse angewendet werden, um den Zugriff auf die darin enthaltenen Dateien zu steuern.