特定の権限を持つユーザーアカウントを作成するには?

特定の権限を持つユーザーアカウントを作成するには?

特定の権限を持つunixユーザーアカウントを作成したいと思います。ユーザーはソフトウェアをインストールできるはずですが、ソフトウェアをアンインストールすることはできません。また、ルートはユーザーがログインしたときにメールで通知を受け取る必要があります。可能ですか?

私はDebianを使用しています。

ベストアンサー1

ソフトウェアのインストールのみに管理権限を制限するには、sudo:を使用して、ユーザーがインストールを実行するパッケージ管理ツールのみを実行できるようにします。おそらく/etc/sudoersには次のものが必要です。

Cmnd_Alias SWINST = /path/to/pkg-manager install_action *

power_user hostname= NOPASSWD: SWINST

これにより、パスワードを入力しなくても、コンピュータでpower_user最初の引数と追加の引数を使用してコマンドをhostname実行できます(たとえば、Debianの場合はSUSEベースの展開の場合に変換されます)。/path/to/pkg-managerinstall_action/path/to/apt-get install */path/to/zypper in *

覚えておくべき2つのことがあります。

  1. パッケージマネージャは複数の項目を受け入れることができないため、正しく機能する必要があります。行動コマンドラインに渡すと(たとえば、pkg-manager install foo, remove bar完全に中断されます)、パッケージマネージャも競合を処理するため、インストールだけでソフトウェアが削除される可能性があるため、可能であればこの機能を無効にするスイッチ/設定を使用してください(下記のCraigの説明を参照)。

  2. ローカルファイルからパッケージをインストールできる低レベルパッケージメンテナンスコマンドへのアクセスを許可しないでください。これにより、ユーザーは昇格パッケージを準備してインストールし、システムにさよならを言うことができます。代わりに、このコマンドを使用して信頼できるソフトウェアのみをインストールできることを確認する必要があります。

デスクトップシステムでは、現在PolicyKitインフラストラクチャが頻繁に使用されるため、これは別のオプションになります。

おすすめ記事