/etc/passwd にリストされていないユーザーに対して root が su を実行できないようにします。

/etc/passwd にリストされていないユーザーに対して root が su を実行できないようにします。

Linux では、ユーザーを AD に対して認証します。AD ユーザーは /etc/passwd にリストされていません。

各ユーザー グループに追加のスペースをマウントするための NFS ソリューションを展開しようとしています。

sudo su 権限を持つユーザー (A) がルート権限を取得すると、su ユーザー (B) を実行して NFS にアクセスするだけで、ユーザー (B) になりすますことができます。

ユーザーが /etc/passwd にリストされていない場合に、root による su ユーザーの実行を禁止する方法はありますか?

答え1

問題を再考する必要があると思います。あなたが望むことを実現する方法はわかりませんが、完全に信頼できない sudo ALL 権限を持つユーザーがいる場合は、その権限を制限する必要があります。

答え2

ユーザー A にルート権限を与える場合、いいえ、そのユーザーが何もできないように制限することはできません (どのようなブロックを設定しても、ごくわずかな例外を除いて、ルートは常にそれを回避できます)。ユーザー A を sudoers に追加し、実行できるプログラムと実行できないプログラムを厳密に設定する必要があります。

答え3

直接の質問には答えていませんが、問題は sudo/su ではなく NFS にあると思います。NFSv3 は UID を使用してアクセス権限を適用するため、NFSv3 を使用するときはいつでもこの問題が発生します。

たとえ、ユーザーがルートに切り替えて別の UID に戻ることを何らかの方法で防止できたとしても、悪意のあるユーザーは、自分のデバイスを接続したり、特別に構成されたシステムの代わりに別の OS を起動したりするだけで、保護を回避できます。

NFSv4 の使用を検討しましたか? NFSv4 はマウント要求を認証し、アクセス権限を適用するために Kerberos を使用するため、このような事態が発生しても脆弱ではありません。

関連情報