chattr:属性またはフラグによるLinuxのファイル/フォルダーの最大の保護

ええと...すべてがゲームになるわけではありません。ゲームについて話している投稿だけを公開するつもりはありません😉...私はたくさんプレイするユーザーではありません。家ではそれをガールフレンドに任せています(これは今夢中になっています シムズ4)、それがターミナルでのコマンドやヒントについて、より技術的な記事を公開するように私を動機付ける理由です。

Linuxにはいくつかあります 許可 これにより、ほぼすべての問題が確実に解決されます。特定のリソース、フォルダー、サービスにアクセスできるユーザーまたはユーザーのグループを特定できます。 ただし、rootでさえ特定のアクションを実行できないようにしたい場合があるため、アクセス許可が正確に必要なものではない場合があります。

削除したくないフォルダまたはファイルがあるとしましょう...ユーザーもコンピュータ上の別のユーザーも(えーと...私のガールフレンド、例えばハハ)、またはルートでさえそれを削除できない、これを達成する方法は? …rootは-fucking-masterであるため、アクセス許可は機能しません。彼は何でも削除できるため、ファイルまたはフォルダーの属性が入ります。

chattr + i

ファイルを削除できないように保護したいとします。次のようになります。 パスワード.txt 、あなたの場所は(例えば) $ HOME / passwords.txt

読み取り専用属性(つまり、変更や削除なし)を設定するには、次のようになります。

sudo chattr +i $HOME/passwords.txt

ご覧のとおり、+ iパラメータの管理権限が必要です。ちなみに、+ iは、ファイルが不変であることを意味します。削除したり、変更したりすることはできません。

次に、sudoを使用しても、ファイルの削除を試みることができます...削除できないことがわかります。これがスクリーンショットです。

chattr_1

ファイルが持つ属性を一覧表示または表示するには、コマンドを使用できます lsattrたとえば、次のようになり

lsattr passwords.txt

次に、使用する代わりに保護を削除します +i を使用しております -i そして出来上がり😉

chattr + a

これまで見てきたように、+ iパラメータを使用すると完全に保護できますが、元のコンテンツを変更せずに、特定のファイルを変更できるようにする必要がある場合があります。 たとえば、リストがあり、echoを使用して新しい行と情報を追加したいが、前のものを変更せずに、次のようにします。

sudo chattr +a $HOME/passwords.txt

これが完了したら、ファイルに新しいものを書き込んでみましょう。

echo "Prueba" > $HOME/passwords.txt

エラーが表示されることに気付くでしょう…ただし、置換する代わりにコンテンツを追加すると(>>ではなく>>を使用):

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

ここでできます。

終わり!

ルートがあってもファイルを削除/変更できないことを知っている誰かがその属性をチェックできることを知っています...しかし、ちょっと! …このようなことに気付いたとき、属性について考えるのをやめますか? ...私はこれを言います。なぜなら、一般的に、HDDまたはそのセクターが破損している、またはシステムが単に狂ったと単純に考えているからです😀

追加するものはそれほど多くありません...私はこれをから使用すると思います +i 私のガールフレンドがダウンロードしているもののダウンロードを停止するには...  ̄ ̄ ̄ ...えーと...彼女は欲しくない シムズ4をダウンロード 自由? ...ライセンスについてXNUMXつかXNUMXつ教えて、違反してはいけないと思います😀

ご挨拶!


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   やめる

    このツールについて知りたいのですが、それが私に好奇心をそそるのであれば、ビットパーミッションに似たものではないでしょうか? つまり、setuid、setgid、sticky bit? そうでない場合、なぜですか? Oo

    PS:私はあなたがこの記事で私のガールフレンドと言う回数のカウントを失いましたハハハ

    1.    ヒューゴー

      これもビット、不変性ビットであり、それが適用されるファイル(ルートさえも)を誰も変更または削除できないように設計されています。 たとえば、構成ファイルの書き込み保護に使用します。これは、Zentyalなどのディストリビューションで特に役立ちます(テンプレートを編集または作成するよりも、構成をカスタマイズする方がはるかに高速です)。

      このコマンドをchown、chmod、およびsetfaclと組み合わせることで、興味深いことが実現できます。

      FreeBSDにも似たようなものがあり、それをpfSenseにも使用しています。

    2.    ジョン

      ははは、それは既知のフェーズです。
      http://www.xkcd.
      com / 684 /

  2.   ニアンデクエラ

    [博士。 Bolivar Trask] $ sudo chattr + i * .human

  3.   テスラ

    とても良い注文です。 私は彼女を知りませんでした。

    PCを共有している場合や、作業中の特定のドキュメントがあり、世界中で削除したくない場合に非常に役立ちます。

    よろしくお願いします!

  4.   ルイス

    非常に興味深い。

    ROOTがホームページの特定のフォルダにアクセスできないように、同様のことを行うことはできますか?

    1.    テスラ

      記事によると、このコマンドでは、rootでさえファイルにアクセスできません。 Linuxではフォルダもファイルなので、同じことがフォルダにも当てはまると思いますよね?

  5.   ホアキン

    なんて偶然。 今週末、ルートパーティションを削除しようとしましたが、/ bootディレクトリからファイルを削除できませんでした。 見て、私は属性を見つけました、私は正直にそれらを知りませんでした、そして今私はファイルの許可と属性の問題が非常に大きいことを理解しました。 これは、「chmod」や「chown」とともに、知っておく必要のある重要なコマンドのXNUMXつです。

  6.   アグアテマラ

    これは、特に、たとえば、それぞれのISPのデフォルトDNSを変更する場合に非常に役立ちます。その場合、/ etc / resolve.confファイルを変更する必要があり、これを行うには、chattr -i / etc /を実行する必要があります。 resolv.confで、無料および/または無料のDNS(OpenDNS 208.67.222.222および208.67.220.220、Google 8.8.8.8および8.8.4.4など)のIPに表示されるIPを変更し、 file、redo chattr + i /etc/resolv.confを実行して、マシンの起動時にファイルが変更されないようにします。
    素晴らしい記事...ちなみに、あなたのガールフレンドは私の妻のようで、ゲームに夢中になっているのと同じように、ハハハハハ

  7.   生基本

    明らかに、この状況では「クソマスター」があなたのガールフレンドです。 xD