web-dev-qa-db-ja.com

Unix / Linuxでユーザー権限を強制するメカニズムは何ですか?

Unix/Linuxシステムの主要なセキュリティ機能の1つは、ユーザーごとに権限を制限することです。たとえば、特定のアクションはrootユーザーのみが実行できます。理論的には、これは悪意のあるプロセスが過度の害を及ぼすことを防ぐことができます。

しかし、これを強制するメカニズムは何ですか?

私の知る限り、基本的に何かをパスワードで保護するには2つの方法があります。

  • 表面的に:Windows XP=が起動すると、パスワードを要求される場合があります。パスワードがないと、ログインできず、誰かがしかし、これは攻撃者がWindowsを起動した場合にのみ機能し、別のオペレーティングシステムを起動してハードドライブをマウントした場合、ファイルは保護されません。
  • 暗号化:パスワード管理プログラムは通常、パスワードをファイルに保存します。このファイルは「マスターパスワード」で暗号化されています。マスターパスワードを提供しない限り、プログラムはwillだけでなく、本当にcannotがファイルへのアクセスを提供します。方法はわかりません。

Unix/Linuxユーザー権限はどのカテゴリに分類されますか?これはどのように適用されますか?

4
Nathan Long

Linuxユーザー権限は [〜#〜] acl [〜#〜] の形式にすぎず、ファイルシステムの一部としてデータ構造として保存されます。これらはオペレーティングシステムによって強制されますが、厳密な意味ではありません。Unixスタイルのアクセス許可を認識しないファイルシステムドライバーまたはOSは、それらを無視します。 Linuxシステムでは無視されるWindowsファイル権限についても同様です。

透過的なファイルシステムの暗号化は、ユーザーデータベースに格納されているキーを介して行われ、ユーザーのパスワードによって暗号化されます。ユーザーがログインすると、パスワードを使用してキーが復号化され、キーを使用してファイルデータを復号化できます。

6
Polynomial

1つ目は、Linuxはデフォルトではファイルを暗号化せず、rootのみが読み取り可能なファイルであってもです。私はあらゆるLinuxマシンに移動して、 knoppix cd を投入し、HDDをマウントして、すべてのファイルにアクセスできます。

これが、物理アクセスの脅威から保護するために dm_crypt のようなものがある理由です。

1
lynks

ほとんどのファイルシステムで「表面的に」実行されますが、FSソリューションが「暗号化」の方法で進むこともあります。

これは実際にWindowsにも当てはまります。ファイルを「暗号化済み」としてマークすると、NTFSのEFSサブシステムが起動して実際にファイルを暗号化するため、別の環境から物理ディスクにアクセスしても、適切なパスワードなしではアクセスできません。

0
Oleg V. Volkov

OPによる質問の明確化に基づいて改訂。 Sudoは、パスワードを使用してIDを検証(認証)します。次に、構成ポリシーファイルのアクセス許可テーブル(たとえば、/ var/db/Sudo)をチェックして、問題のコマンドを実行する権限があるかどうかを確認します。認証と承認の両方を渡すと、Sudoは昇格された特権で問題のコマンドを実行することを許可します。昇格された特権のメカニズムの具体的な詳細は興味深いですが、おそらく質問の範囲を超えています。より詳細な説明は Sudoのマニュアルページ で確認できます(実行しているOSのバージョンに適したものがないか、システムを確認してください。)


オペレーティングシステム。

「表面的に」と言及した例は、パスワードで保護されたアプリケーションにすぎません。

あなたはWindowsでのファイル保護の例を挙げていません-これは最も近い類推でしょう。 c:\ windows\system32\cmd.exeへの書き込みを妨げる原因は何ですか? Windowsにはあります。

オペレーティングシステムのコア機能の1つは、アクセス制御の実装です。

「ユーザーの権限を実装するメカニズムは何か」、または「パスワードで何かを保護する方法」を尋ねていますか。 (あなたの例の両方)。

0
Mark C. Wallace