Ubuntuマシン(ext3ファイルシステム)で、ファイルから書き込み権限を削除しても、rootがそのファイルに書き込むことができないことに気づきました。
これはUNIXファイルのアクセス許可の一般的なルールですか?またはUbuntuに固有ですか?または私のマシンの設定ミス?
#touch abc #chmod ugo-w abc #python Python 2.6.4(r264:75706、Dec 7 2009、18:45:15) [GCC 4.4.1] on linux2 詳細については、「help」、「copyright」、「credits」、または「license」と入力してください。 >>> open( 'abc '、' w ')。write(' AAA\n ') >>> #cat abc AAA
通常のユーザーアカウントからこれを行うと、ファイルへの書き込みが(予想どおり)失敗します。
これは正常な動作ですか?
Rootが誤ってファイルに書き込むのを防ぐ方法はありますか? (AppArmorなどではなく、通常のファイルシステムメカニズムを使用することが望ましい)
私が間違いなく理解していないことを教えてください。
注:rootがシステムを完全に制御できることを理解しています、たとえばchange任意のファイルの権限。私の質問は、現在設定されている権限がrootとして実行されているコードに適用されるかどうかです。このアイデアは、ルートユーザーが自分でファイルに誤って書き込むのを防ぐことです。
注:通常の操作では、1人をrootとしてログインしないでください。私はこの動作に気づき、それについてあなたに尋ねています。
1)これは正常な動作です。 rootは常にすべてのファイルにrwアクセスできます。
2)ルートを使用してファイルを保護することができます(故意のアクションではなく、とにかく偶然です)。
chattr +i filename.ext
つまり、「属性の変更は不変を追加する」です。保護を解除するには:
chattr -i filename.ext
見て man chattr
詳細
はい、これは正常です。 ルートは神です
はい、rootがファイルを上書きしないようにする方法があります。
chattr
(+i
セット、-i
unsets)。 rootアクセスが必要で、ext2/ext3(おそらくext4も)でのみ機能しますが、それ以外の場合は実用的です。Sudo
を使用します。これらのメソッドは論理的に#1から続きます。ご覧のとおり、最後の2つの方法は一般に役に立ちません。これは、ネットワークのプラグを抜いてWindowsをウイルスから保護するのが一般に役に立たないのと同じです。これがrootが危険な理由です。[+]
[*]もちろん、「誤って」ブロックデバイスに直接書き込む可能性を無視します。はい、ルートはそれを行うことができます。はい、それを防ぐことができます:デバイスを切断します。
[+]これは、これらのBOfH神話の起源でもあります。彼らはすべての神話ではありません。
Linuxカーネルの「機能」を使用して、rootユーザーのファイルアクセスを制限することもできます。 http://www.securityfocus.com/infocus/14
また、SE-Linuxやその他のカーネルパッチを使用して、一部のファイルをrootでも不変にする可能性もあります。
Rootがスーパーユーザーであり、彼が何でもできる限り、あなたがrootである場合でも、パーミッションを削除することはできないと思います。これは、操作(ファイルへの書き込み、アプリケーションのオープンなど)を行わない、または行わないようにするルートの意志であると考えられます。
したがって、ルートアカウントの不正使用を防ぐために、ルートアカウントのみを非アクティブ化する可能性があります。
よろしく
[自分への注意:あなたは謙虚でなければならない...たぶんあなたがたは間違っている]