Eine der praktischsten Möglichkeiten, wie wir unsere Dateien und Ordner in Linux-Umgebungen schützen können, besteht darin, die entsprechenden Berechtigungen so einzurichten, dass diejenigen, die auf das System zugreifen, diese Dateien bearbeiten können oder nicht.
Alle diese Werte können auf einfache Weise festgelegt werden und definieren, welchen Bereich ein Benutzer in einem Ordner oder einer Datei haben kann, ob er gelesen oder geschrieben werden kann, um so die Integrität unserer Dateien zu gewährleisten.
Berechtigungen mit Linux CHMOD ermöglichen uns den Zugriff auf Dateien und Ordner. CHMOD ist verantwortlich für die Verwaltung der Genehmigungen für all dies. Viele verwenden Sie unter anderem in Webservern, da dies eine der nützlichsten und effektivsten Funktionen ist, wenn Sie Berechtigungen in allen Dateien und Ordnern des Linux-Servers oder -Computers erstellen und verwalten.
Der Befehl CHMOD gibt uns die Möglichkeit, die Berechtigungen der Dateien und Ordner des Linux-Rechners zu ändern. In diesem Tutorial werden einige Beispiele aufgeführt. Es ist allgemein bekannt, dass die Verwendung von CHMOD für pHp unter anderen Sprachen am besten ist, weshalb unter anderem Linux-Server verwendet werden. Um die Funktionsweise dieser Befehle zu verstehen, müssen Sie zunächst wissen, wie sie funktionieren.
Heute werden wir diskutieren, wie die Berechtigungen in einer Linux-Umgebung festgelegt werden .
In diesem Fall verwenden wir eine Datei in Debian 8, aber die Vorgehensweise ist in jeder Linux-Distribution ähnlich.
1. Arten von Berechtigungen unter Linux
In allen Unix-Systemen gibt es einen Mechanismus, mit dem wir als Administratoren die Zugriffsarten für eine bestimmte Datei oder einen bestimmten Ordner definieren können.
Innerhalb dieses Kontrollmechanismus von Unix-Umgebungen gibt es zwei Arten von Variablen, deren Funktion wir kennen und verstehen müssen:
Wenn wir nun mit der rechten Maustaste auf eine Datei oder einen Ordner klicken und zur Option Eigenschaften gehen, sehen wir Folgendes:
Innerhalb dieses Schemas identifizieren wir drei (3) Arten von Klassen:
Wir haben jetzt drei Arten von Bearbeitungsberechtigungen für unsere Dateien oder Ordner:
Wenn Sie dies verstehen, können Sie Kombinationen zwischen Berechtigungen und Klassen erstellen, um die beste Sicherheitsstufe für unsere Dateien zu ermitteln.
2. Grundlegendes zu Berechtigungsfehlercodes unter Linux
Jetzt kommt einer der Punkte, die wir als Administratoren oder Mitarbeiter im IT-Bereich kennen sollten, und ist die Identifizierung von Fehlern, die auftreten, wenn ein Benutzer versucht, eine Aktion in einer Datei auszuführen, z. B. die berühmte 777.
In Unix-Umgebungen hat grundsätzlich jede Berechtigung den folgenden Wert:
- Lesen: 4
- Schreiben: 2
- Ausführung: 1
Wir müssen lernen, auf folgende Weise mit diesen Zahlen zu spielen, um unser Linux-Erlebnis zu optimieren.
Wenn wir eine Schreibberechtigung festlegen möchten, verwenden wir die 6 (4 + 2 = Lesen + Schreiben).
Wenn wir möchten, dass ein Benutzer ausführen kann, verwenden wir die 7 (4 + 2 + 1 = Lesen + Schreiben + Ausführen).
Jetzt haben wir die folgende Wertetabelle:
- 0: Keine Berechtigungen
- 1: Ausführung
- 2: Schreiben
- 3: Lesen und Schreiben
- 4: Lesen
- 5: Lesen und Ausführen
- 6: Lesen und Schreiben
- 7: Lesen, Schreiben und Ausführen
3. Häufigste Arten von Genehmigungen
Die gebräuchlichsten Arten von Genehmigungen oder deren Kombination sind die folgenden:
Wie wir sehen, haben wir verschiedene Möglichkeiten, die entsprechenden Berechtigungen in Linux einzurichten.
4. Festlegen einer Berechtigung für eine Datei oder einen Ordner
Das Verfahren zur Feststellung der Genehmigung ist sehr einfach. Gehen Sie einfach zum Terminal und führen Sie die folgende Syntax aus:
chmod Berechtigungstyp Dateipfad
Zum Beispiel:
chmod 666 /home/TechnoWikis/TechnoWikis.jpg
Wir haben diese interessanten Optionen, um die besten Sicherheitsparameter in unseren Dateien und Ordnern zu ermitteln.
Wenn Sie es auf Linux-Systemen mit Texten sehen, sehen Sie in Linux-Berechtigungsproblemen ungefähr Folgendes:
0 = — = kein Zugriff
1 = –x = Ausführung
2 = -w- = schreiben
3 = -wx = schreiben und ausführen
4 = r– = lesen
5 = Empfang = Lesen und Ausführen
6 = rw- = lesen und schreiben
7 = rwx = lesen, schreiben und ausführen
Wenn wir mehrere Genehmigungen erteilen wollen, müssen wir sie aufaddieren.
Wenn wir zum Beispiel den Befehl chmod 777 verwenden :
chmod 777
Wir sagen, dass wir den drei Benutzertypen die maximale Berechtigung geben, indem wir ihnen Lese-, Ausführungs- und Schreibrechte erteilen. Aus diesem Grund verwenden wir diese drei Mal, wenn wir 4 + 2 + 1 hinzufügen. Wenn wir Lese- und Schreibberechtigungen erteilen möchten, sind es 4+ 2 = 6, wenn wir nur lesen möchten, wäre 4. Wenn wir lesen und ausführen möchten, wäre es, 4 + 1 = 5 hinzuzufügen. Daher die verschiedenen Kombinationen.
chmod 755
In diesem Fall erteilen wir allen Benutzern mit Ausnahme des Eigentümers, der die Berechtigung zum Lesen und Ausführen (4 + 1) hat (Lesen, Schreiben, Ausführen 4 + 2 + 1), die Berechtigung zum Ausführen.
chmod 666
Diese Art von Befehl chmod gibt allen außer der Ausführung (4 + 2) Lese- und Schreibberechtigungen. Jeder kann auf die Datei zugreifen, ihren Inhalt lesen und ändern.
chmod 644
Dieser chmod 644 wird normalerweise verwendet, um das Schreiben an andere Personen als den Eigentümer zu verbieten. (755 ist ähnlich, Lesen und Ausführen und für den Besitzer alle Berechtigungen) Diese chmod 644 restriktiver (nur lesen) und (lecura, schreiben für den Besitzer).
Diese Befehle können von Befehlen ausgeführt werden. Wenn es sich um einen lokalen Server handelt, melden Sie sich an und führen Sie sie direkt aus. Wenn es sich um einen Remote-Server handelt, können Sie eine Verbindung zu diesem Programm herstellen , um das Linux-Serverfenster anzuzeigen (als wären Sie lokal). Eine andere Möglichkeit besteht darin, kostenlos herunterzuladen und das Filezilla-Programm zu verwenden , mit dem wir diese Berechtigungsänderungen grafisch (einfacher) vornehmen können.
Wir zeigen Ihnen in diesem Fall einen Linux-Server , den wir remote mit Filezilla verbinden und der die Berechtigungen der grafischen Form der Dateien sowie der Ordner anzeigt.
Wenn wir sie ändern möchten, klicken wir mit der rechten Maustaste auf den Ordner oder die Datei und die Option Dateiberechtigungen wird angezeigt. Wenn wir darauf drücken, wird das Fenster angezeigt, in dem wir sie ändern können.
Wir hoffen, es hat Ihnen geholfen, die Funktionsweise von Berechtigungen auf Linux / Unix-Systemen zu verstehen. Gehen wir zu den beiden anderen Befehlen für die Berechtigungsverwaltung über.
5. Was es ist und wie man den CHOWN Linux Befehl benutzt
Unter den verschiedenen täglichen Aufgaben, die wir in Linux-Umgebungen implementieren können, ist es, einen neuen Eigentümer einer Datei oder eines Ordners zu erstellen, entweder durch Sicherheit, Organisation oder Verwaltung.
Eine der praktischsten Möglichkeiten, die wir in Linux für diesen Zweck haben, ist die Verwendung des Befehls chown, und wir werden heute sehen, wie wir ihn implementieren und diesen wichtigen Befehl voll ausnutzen können.
Dieser Befehl ist Teil der coreutils-Suite, die standardmäßig in allen Linux-Distributionen enthalten ist. Mit Chown können wir den neuen Eigentümer entweder über seinen Namen oder über die Identität des Benutzers innerhalb des Systems (UID) angeben.
- -c: Mit diesem Parameter können wir die Änderungen definieren, die die Datei haben wird.
- -R: Ändert den Besitzer der Verzeichnisse in absteigender Reihenfolge mit dem Inhalt.
- -v: (ausführlich) Zeigt eine aussagekräftigere Ausgabe von Informationen an.
- –version: Zeigt die Chown-Version auf dem Bildschirm an.
- –dereference: Dieser Parameter wirkt auf symbolische Werte anstatt auf das Ziel.
- –reference: Dieser Parameter ändert den Eigentümer einer Datei basierend auf dem Eigentümer einer anderen Datei.
- -h: Wenn es um symbolische Links geht, ändern Sie den Besitzer des Ziels anstelle des Links.
Die Syntax, die wir bei der Verwendung von Chown berücksichtigen müssen, lautet wie folgt:
chown (options) benutzer (: gruppe) datei (n) oder verzeichnis (e)
Für diese Studie werden wir Ubuntu 16 verwenden .
Als nächstes sehen wir einige Beispiele für die Verwendung von Chown.
ls -lart Dateiname
Wir haben eine Datei mit dem Namen solvetic.txt erstellt, also geben wir Folgendes ein:
ls -lart solvetic.txt
Daraufhin werden der Eigentümer sowie Ihre aktuellen Berechtigungen und das Erstellungsdatum angezeigt.
Jetzt stellen wir fest, dass der Eigentümer dieser Datei root sein wird, und geben dazu Folgendes ein:
chown root solvetic.txt
Jetzt führen wir ls -lart solvetic.txt erneut aus und wir können den neuen Besitzer sehen:
Verwenden Sie den Befehl ls – l (Dateiname), um die aktuelle Gruppe der Datei anzuzeigen.
In diesem Fall verwenden wir ls -l solvetic.txt. Als nächstes verwenden wir die folgende Syntax für die jeweilige Änderung:
chown: Unterstützung für solvetic.txt
(Support ist der Name der neuen Gruppe).
chown -version
chown -R Benutzerordner
In diesem Fall machen wir den Root-Benutzer zum Eigentümer des Ordners. In diesem Fall geben wir Folgendes ein:
chown -R root TechnoWikis
Befindet sich die Datei solvetic.txt beispielsweise in der Gruppe solvetic, wird die neue Gruppe als support bezeichnet. Dafür verwenden wir den Parameter -from
Zuerst verwenden wir ls -l solvetic.txt , um die Gruppe zu visualisieren, zu der die Datei gehört. Später werden wir die Syntax -from: current group): (new group) verwenden. Auf diese Weise geben wir an, dass die Gruppe solvetic in diesem Fall die Support-Gruppe wird, wenn die Datei gehört.
In diesem Fall haben wir zwei Dateien:
- solvetic.txt = dessen Besitzer ist solvetic
- tests.txt = dessen Besitzer ist root.
Wir werden die Syntax verwenden:
chown -reference = solvetic.txt tests.txt
Damit ist der Eigentümer von tests.txt derselbe wie solvetic.txt
Wir sehen, wie chown uns auf einfache und zuverlässige Weise verschiedene Alternativen für die Verwaltung der Eigentümer in den verschiedenen Dateien und Ordnern in Linux-Umgebungen bietet.
6. Was es ist und wie man den CHATTR Linux Befehl benutzt
Unter den Funktionen, die als Systemadministratoren, Supportmitarbeiter oder mit dem IT-Bereich verbunden sind, ist es sehr wichtig, die Attribute eines Ordners oder einer Datei zu ändern, um die Sicherheitsstufe zu erhöhen, und das Ergebnis, das wir erhalten können, wird sein das Folgende:
- Vermeiden Sie den unbefugten Zugriff auf Dateien oder Ordner
- Bearbeiten von Dateien verhindern
- Vermeiden Sie Informationsdiebstahl
- Behalten Sie eine bestimmte Kontrolle über die Ordner und Dateien, die auf dem Computer gespeichert sind
Obwohl es heute mehrere Möglichkeiten gibt, dies zu tun, sehen wir einen Befehl, der eine Vielzahl von Optionen zum Ändern der Attribute in jeder Linux-Distribution bietet: Chattr
Einer der großen Vorteile von chattr ist, dass es Dateien schützt, auch wenn die Person, die versucht, sie zu löschen, über Root-Rechte verfügt.
Alle Attribute, die mit chattr implementiert werden können, werden von systemeigenen Linux-Systemen wie ext2, ext3, ext4 und btfrs unterstützt, wodurch dieses Dienstprogramm einen viel größeren Sicherheitsbereich bietet.
Die allgemeine Syntax für die Verwendung von chattr lautet wie folgt:
chattr (operator) (attribute) (datei)
Wo müssten wir die Daten in Klammern für das, was wir implementieren möchten, ändern. Wir werden in den folgenden Beispielen sehen.
Wie wir sehen, müssen wir bestimmte Parameter angeben, mit denen wir die Sicherheitsstufe für unsere Archive definieren können. Diese sind nach Kategorien geordnet:
- +: Ermöglicht das Hinzufügen der angegebenen Attribute zu den vorhandenen Attributen in der Datei
- -: Ermöglicht das Entfernen der Attribute, die für die Attribute angegeben wurden
- =: Ermöglicht es den angegebenen Attributen, die vorhandenen Attribute in der Datei zu ersetzen.
- -V: Damit können wir eine aussagekräftigere Ausgabe des Befehls chattr einschließlich der Programmversion erhalten.
- -R: Diese Option ändert die Attribute der Verzeichnisse und deren Inhalt nach unten.
- -v: Damit können wir die Version des Programms visualisieren.
- a: Ermöglicht das Öffnen der Datei nur im Anhänge-Modus zum Schreiben.
- A: Ermöglicht, dass der letzte Zugriff oder das letzte Datum nicht geändert werden.
- c: Ermöglicht das automatische Komprimieren der Datei.
- d: Hiermit kann festgelegt werden, dass die ausgewählte Datei bei Verwendung des Dump-Tools nicht für die Sicherung in Frage kommt.
- D: Wenn auf ein Verzeichnis verwiesen wird, können die Daten synchron auf die Festplatte geschrieben werden.
- e: bezieht sich auf die Tatsache, dass die Datei oder der Ordner Erweiterungen (Extents) verwendet, die für die Blockzuordnung verwendet werden.
- j: Es wird in den Dateisystemen ext3 und ext4 verwendet und ermöglicht es festzustellen, dass die Datei in das Journalprotokoll geschrieben wird, wenn wir sie mit den Optionen data = orders oder data = writeback gemountet haben .
- i: Die Datei kann unveränderlich sein, dh gelöscht oder bearbeitet werden.
- S: Zeigt an, dass die an der Datei vorgenommenen Änderungen synchron auf die Festplatte geschrieben werden.
- s: Mit diesem Attribut werden die auf der Festplatte verwendeten Blöcke mit Nullen (0) geschrieben.
- o: Wenn dieses Attribut beim Löschen einer Datei festgelegt wird, wird der Inhalt zum späteren Abrufen gespeichert.
Lassen Sie uns nun praktische Beispiele sehen, wie Sie chattr in Linux-Distributionen implementieren. In diesem Fall werden wir Ubuntu 16 verwenden .
Wir haben einen Ordner namens TechnoWikis und eine Datei namens tests.txt erstellt. Wenn wir diese Dateien schützen möchten, verwenden wir die folgende Syntax (wir verwenden sudo, um Superuser-Rechte zu haben).
sudo chattr + i TechnoWikis / test.txt
Wie wir sehen, wurden die Änderungen verarbeitet, obwohl keine Informationen angezeigt wurden.
Um die von uns implementierten Attribute zu überprüfen, verwenden wir lsattr und sehen Folgendes:
Wenn wir versuchen, die Datei files.txt zu löschen, werden wir als Superuser feststellen, dass dies nicht möglich ist. Wir verwenden die folgende Syntax:
sudo rm test.txt
Wenn wir möchten, dass unsere Dateien nicht die Attribute von chattr haben, verwenden wir die folgende Syntax:
sudo chattr -i Dateiname
In unserem Beispiel wäre es das Folgende:
sudo chattr -i TechnoWikis / test.txt
Jetzt können wir versuchen, die Datei zu löschen, und wir werden sehen, dass dies bereits möglich ist, da wir die Attribute entfernt haben:
Auf die gleiche Weise können wir Dateien schützen, die für die optimale Funktion des Systems empfindlich sind, wie zum Beispiel
/ etc / passwd und / etc / shadow Dateien
Um diese Dateien zu schützen, müssen wir Folgendes eingeben:
sudo chattr + i / etc / passwd
sudo chattr + i / etc / shadow Dateien
Ein weiteres Beispiel für die Verwendung von chart unter Linux ist die Verwendung des Parameters, mit dem wir die Datei im Anhänge-Modus öffnen können. Dazu haben wir eine Datei mit dem Namen solvetic.txt erstellt
Später werden wir den Befehl verwenden:
sudo chartt + a TechnoWikis.txt
So legen Sie diesen Parameter für die Datei fest
Wir können die Attribute der Datei mit lsattr sehen.
Jetzt versuchen wir, etwas in der Datei zu bearbeiten, die der Echo-Befehl verwendet, und wir werden sehen, dass die Meldung Operation nicht erlaubt angezeigt wird. Wenn wir jetzt die Symbole >> verwenden, können wir dem Text etwas hinzufügen.
Auf diese Weise haben wir verschiedene Möglichkeiten, unter Linux mit chattr zu arbeiten, und bieten zusätzliche Sicherheitsparameter für unsere wichtigsten Dateien und Ordner, wobei wir einige der von chattr angebotenen Attribute verwenden.