chattr: Der maximale Schutz von Dateien / Ordnern unter Linux durch Attribute oder Flags

Nun ... nicht alles kann ein Spiel sein, es ist nicht meine Absicht, nur Beiträge zu veröffentlichen, die über Spiele sprechen. Ich bin kein Benutzer, der viel spielt. Zu Hause überlasse ich das meiner Freundin (das ist jetzt süchtig Sims 4), deshalb motiviert es mich mehr, mehr technische Artikel über Befehle oder Tipps im Terminal zu veröffentlichen.

Unter Linux haben wir einige Genehmigungen Wir können feststellen, welcher Benutzer oder welche Benutzergruppe Zugriff auf eine bestimmte Ressource, einen bestimmten Ordner oder einen bestimmten Dienst hat. Es gibt jedoch Zeiten, in denen Berechtigungen nicht genau das sind, was wir benötigen, da es Situationen gibt, in denen sogar root nicht in der Lage sein soll, eine bestimmte Aktion auszuführen.

Angenommen, wir haben einen Ordner oder eine Datei, die nicht gelöscht werden soll. Los geht's ... weder von unserem Benutzer noch von einem anderen Benutzer auf dem Computer (Ähm ... meine Freundin zum Beispiel haha), oder nicht einmal root kann es löschen, wie erreicht man das? ... die Berechtigungen helfen uns nicht, weil root der verdammte Meister ist, er kann alles löschen, also kommen hier die Datei- oder Ordnerattribute ins Spiel.

chattr + i

Angenommen, wir möchten eine Datei so schützen, dass sie nicht gelöscht werden kann. passwörter.txt ist Ihr Standort (zum Beispiel) $ HOME / passwords.txt

Um ein schreibgeschütztes Attribut einzurichten (dh keine Änderung und kein Löschen), wäre dies:

sudo chattr +i $HOME/passwords.txt

Wie Sie sehen, benötigen wir Administrationsberechtigungen für den Parameter + i. + I bedeutet übrigens, dass die Datei unveränderlich ist. Sie kann nicht gelöscht werden und kann sich in keiner Weise ändern.

Dann können Sie versuchen, die Datei zu löschen, auch mit sudo ... Sie werden sehen, dass Sie dies nicht können. Hier ist ein Screenshot:

chattr_1

Um die Attribute einer Datei aufzulisten oder anzuzeigen, können Sie den Befehl verwenden lsattrzum Beispiel:

lsattr passwords.txt

Dann entfernen Sie den Schutz anstatt zu verwenden +i wir gebrauchen -i und voila 😉

chattr + a

Wie wir gerade gesehen haben, können wir ihn mit dem Parameter + i vollständig schützen, aber es gab Zeiten, in denen ich eine bestimmte Datei benötige, um geändert werden zu können, ABER ohne den ursprünglichen Inhalt zu ändern. Ich habe beispielsweise eine Liste und möchte, dass neue Zeilen und Informationen mithilfe von Echo hinzugefügt werden, ohne jedoch die vorherigen zu ändern.

sudo chattr +a $HOME/passwords.txt

Nachdem dies erledigt ist, versuchen wir, etwas Neues in die Datei zu schreiben:

echo "Prueba" > $HOME/passwords.txt

Sie werden feststellen, dass Sie eine Fehlermeldung erhalten ... wenn wir jedoch Inhalte hinzufügen, anstatt sie zu ersetzen (mit >> und nicht>):

echo "Prueba" >> $HOME/passwords.txt

Hier können wir.

Das Ende!

Ich weiß, dass jemand, der sich auskennt, wenn er sieht, dass selbst mit root eine Datei gelöscht / geändert werden kann, ihre Attribute überprüfen kann ... aber hey! … Wie oft, wenn Sie so etwas bemerken, denken Sie nicht mehr über Attribute nach? ... Ich sage das, weil wir im Allgemeinen einfach denken, dass die Festplatte oder ihr Sektor beschädigt ist oder dass das System einfach verrückt geworden ist 😀

Nun, es gibt nicht viel mehr hinzuzufügen ... Ich denke, ich werde dies von verwenden +i um den Download von etwas zu stoppen, das meine Freundin herunterlädt ... ¬_¬ ... ähm ... wollte sie nicht Sims herunterladen 4 kostenlos? … Ich denke, ich werde Ihnen ein oder zwei Dinge über Lizenzen beibringen und dass sie nicht verletzt werden sollten 😀

Viele Grüße!


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   aufhören sagte

    Interessant zu wissen über dieses Tool, was ist, wenn es mich neugierig macht, in gewisser Weise wäre es nicht ähnlich wie Bit-Berechtigungen? Dh setuid, setgid und sticky bit? Wenn nicht, warum? Oo

    PS: Ich habe die Anzahl der Male verloren, die du meiner Freundin in diesem Artikel sagst, hahaha

    1.    Hugo sagte

      Dies ist auch ein Bit, das Unveränderlichkeitsbit, und es ist so konzipiert, dass niemand die Datei ändern oder löschen kann, für die es gilt (nicht einmal root). Ich verwende es zum Beispiel, um Konfigurationsdateien schreibgeschützt zu machen, was besonders in Distributionen wie Zentyal nützlich ist (es ist eine viel schnellere Möglichkeit, die Konfiguration anzupassen, als durch Bearbeiten oder Erstellen von Vorlagen).

      Durch Kombinieren dieses Befehls mit chown, chmod und setfacl können interessante Dinge erreicht werden.

      FreeBSD hat etwas ähnliches, das ich auch für mein pfSense benutze.

    2.    John sagte

      Hahaha, es ist eine bekannte Phase.
      http://www.xkcd.
      com / 684 /

  2.   Niandekuera sagte

    [DR. Bolivar Trask] $ sudo chattr + i * .human

  3.   Tesla sagte

    Sehr gute Bestellung. Ich kannte sie nicht.

    Es kann sehr nützlich sein, wenn wir einen PC gemeinsam nutzen oder wenn wir ein bestimmtes Dokument haben, an dem wir arbeiten und das wir nicht für die Welt löschen möchten.

    Danke und Gruß!

  4.   Luis sagte

    Sehr interessant.

    Könnte etwas Ähnliches getan werden, damit ROOT nicht auf einen bestimmten Ordner auf unserer Homepage zugreifen kann?

    1.    Tesla sagte

      Laut Artikel kann mit diesem Befehl nicht einmal root auf die Datei zugreifen. Ich denke, dasselbe gilt für Ordner, da Ordner unter Linux auch Dateien sind, oder?

  5.   Joaquin sagte

    Was für ein Zufall. Dieses Wochenende habe ich versucht, eine Root-Partition zu löschen und konnte keine Datei aus dem Verzeichnis / boot löschen. Auf der Suche habe ich die Attribute gefunden, ich kannte sie ehrlich gesagt nicht und jetzt verstehe ich, dass das Problem der Berechtigungen und Attribute in einer Datei sehr groß ist. Dies ist neben "chmod" und "chown" einer der wesentlichen Befehle, die wir kennen müssen.

  6.   aguatemala sagte

    Dies ist äußerst nützlich, insbesondere wenn wir beispielsweise das Standard-DNS unseres jeweiligen ISP ändern möchten. In diesem Fall müssen wir die Datei /etc/resolv.conf ändern. Um dies tun zu können, müssen wir chattr -i / etc / resolv.conf, ändern Sie die IPs, die für diejenigen unseres freien und / oder freien DNS (wie die von OpenDNS 208.67.222.222 und 208.67.220.220 oder die von Google 8.8.8.8 und 8.8.4.4) und danach angezeigt werden Die Datei make chattr + i /etc/resolv.conf wurde erneut geändert, sodass die Datei beim Starten des Computers nicht geändert wird.
    Toller Artikel ... und deine Freundin ist übrigens wie meine Frau, genauso spielsüchtig, hahahahaha

  7.   rawBasic sagte

    Offensichtlich ist 'der verdammte Meister' deine Freundin in dieser Situation. xD