ユーザーを特定のLinuxコマンドに制限する

ユーザーを特定のLinuxコマンドに制限する

そのため、パッケージをインストール、更新、削除することができ、コマンドを直接使用することはできない特別なsysadminユーザーを作成したいと思いますsudo。たとえば、UbuntuやLinux MintなどのDebianベースのシステムでは、aptコマンドを使用してインストールできます。単にユーザーパスワードを入力すると、そのユーザーのパッケージのインストール、削除、および更新権限が一時的に昇格されますapt-get。 be done sudo、これがまさにユーザーが使用することを避けたいものです。

たとえば、彼らはこれを使用したくありません。

$ sudo apt-get <flag> <package>

しかし、あなたは彼らがこれを代わりに使用したいと思います。

$ apt <flag> <package>

特定のコマンドへのフルアクセスを許可せずに特定のコマンドホイールに権限を付与する具体的な方法があることはわかっていますが、このような個々のユーザーの状況に対してこれを設定する方法はわかりません。

答え1

/etc/sudoers修正ファイルを使用してvisudoこの目標を達成できます。

sudo を使用すると、無制限のアクセスを許可しなくても許可されるコマンドを指定できます。

username ALL = NOPASSWD : /usr/bin/apt-get , /usr/bin/aptitude

これにより、パスワードsudo apt-getなしでユーザー名を実行できますが、他のコマンドは許可されません。sudo aptitude

この質問は次のリンクに回答されています。 管理者以外のユーザーがaptまたはrpmを介してパッケージをインストールできますか?

特権ユーザーがsudoを使用して実行できるコマンドは、明示的に言及されているコマンドのみです。上記のシナリオのように、ユーザーはaptまたはaptitude以外に何もせずにsudoを使用できます。

関連情報