実行可能ファイル内のchmodとsudoの関係

実行可能ファイル内のchmodとsudoの関係

実行ファイルとユーザーのchmod関係は何ですか?sudo

「ユーザーが実行可能ファイルを実行するにはsudoが必要です」の場合は、「chmodはまだユーザーの実行モードビットを設定していません」の場合と同じですか?

「ユーザーが実行ファイルを実行するためにsudoを必要としない」の場合は、「chmodがユーザーの実行モードビットを設定しました」の場合と同じですか?

だけでなく、

  1. 実行ファイルの場合、chmodユーザーに実行権限が設定されていない場合、ユーザーは実行sudoファイルを使用または実行する必要がありますかsu
  2. chmodユーザーに実行権限が設定されている場合、これはユーザーが実行することなく実行可能ファイルをsudo実行できることを意味しますかsu
  3. sudo特定のユーザーだけが実行できる実行可能ファイルを作成するにはどうすればよいですかsu
  4. 逆に、ユーザーがまたはをsudo使用して実行可能ファイルのみを実行できる場合は、そのユーザーに実行可能ファイルの実行権限が設定されていませんかsuchmod

ベストアンサー1

まず、用語です。chmodファイルシステム内のファイルの許可ビットを変更できるプログラム(およびシステムコール)。sudo他の資格情報(通常は高い権限、最も一般的にはrootユーザーの権限)を使用して他のプログラムを実行できるようにする特別なプログラム。su似ていますが、設定可能性が低いです(「not」と読みます)。sudoそして最も重要なのは、ユーザーがルートパスワードの知識に基づいて認証を受ける必要があることです(セキュリティの観点からは非常に衝撃的です)。

実行可能ビットは、ファイルの内容をメモリにロードして実行できるかどうかを示します。 (これが意味があるかどうかはわかりません。JPEG画像の実行可能ビットを設定してから実行すると実行できます。)

それでは質問に答えてみましょう。

  1. 実行可能ファイルがロードされると、権限が評価されます。この場合、suこれはターゲットユーザーのsudo有効なID(ユーザーとグループ - 権限の評価に使用される資格情報 - マニュアルページを参照)で発生します。credentials(7)そのため、対象ユーザーに対してファイルの実行が許可されると、そのファイルが実行されます。

  2. 上記のように、有効なUIDまたはGIDに実行可能ビットセットがある場合は実行可能です。そうでなければそうではありません。

  3. 一般的に言えばそうではありません。必要に応じて特定のIDに対してのみ実行可能としてマークし、特定のsudoユーザーがファイルに対する実行権限を持つユーザーの1人の資格情報を使用してバイナリを実行できるように構成を準備できます。

  4. いいえ。一般に、ユーザーが特別な権限を必要とするプログラムを実行するのを防ぐことはあまり意味がありません。プログラムは、これらの権限の欠如を(可能であれば適切に)処理する必要があります。一部のプログラムには特別な権限を必要としない機能がいくつかありますが、特別な権限で実行するとより多くの機能が提供されます。たとえば、route権限のないユーザーはそれを使用してカーネルルーティングテーブルを表示でき、管理者は変更することもできます。これらの機能。

おすすめ記事