Sudoersブラックリスト

Sudoersブラックリスト

Linuxでは、sudoersファイルにいくつかのユーザーを追加する必要があります。彼らは、以下を除いてルートができることをすべて行うことができなければなりません。

  • 変更、読み取り、削除しないでください。/nfsshare/config
  • 変更、読み取り、削除しないでください。/etc/passwd
  • 何もインストールしてはいけません。
  • ルートパスワードは変更しないでください。
  • 追加のユーザーを追加するために編集または/etc/sudoers実行しないでください。visudo

可能ですか?

答え1

この点で、私は基本的にWissam Al-Roujoulahのコメントに同意します。

sudoers ファイルに一部のユーザーを追加する必要があります。

あなた、本物これが必要ですか?一般的なUNIX権限を使用するか、一般的なUNIX権限を使用する他の方法がありますacl

Wissam Al-Roujoulahがすでに指摘したように、特定のコマンドを「ブラックリスト」に追加するのは実際には非常に悪い考えです(下記参照man sudoers、強調表示)。

しかし、組み込まれた「!」
 すべてのエイリアスユーザーが「いくつかの」コマンドを除くすべてのコマンドをほとんど実行できないようにする
 期待どおりに動作

代わりに、ユーザーの実際のコマンドなどの「許可リスト」を指定できます。許可するランニング。このような:

user1 ALL=/sbin/shutdown

上記の内容により閉鎖が許可されますuser1。カンマ区切りリストにさらにコマンドを追加できます。

これについてもっと学ぶここ

答え2

ユーザーが別のエディタをインストールしたり、バイナリを別の場所に移動して使用できるため、ユーザーがエディタを使用するのを防ぐ必要があるため、ほとんど不可能だと思います。

重要なのは、ユーザーを追加し、sudoers彼に一部の権限を除くすべての権限を付与できないことです。

別の方法で行う必要があります。

答え3

su/sudo接続は選択解除ではなく選択です。ルートシェルを入手できるようになると、他のすべての保護をバイパスできます。実行する必要がある特定の項目があり、sudoersファイル管理が複雑すぎる場合(通常は最良の方法かもしれません)、その項目を実行してsetuidフラグを設定する小さな単一目的のバイナリを作成することを検討してください。

答え4

SELinuxの使用を見ましたか?どのディストリビューションを使用していますか?

新しいSELinuxユーザーを作成し、必要な権限(アクセスロール)のみを付与できます。これはオプションであるため、ユーザーが実行する必要があるすべての操作を一覧表示する必要があります。

関連情報