許可するコマンドは sudo で指定できます。たとえば、無制限のアクセスを許可する必要はありません。
username ALL = NOPASSWD : /usr/bin/apt-get , /usr/bin/aptitude
これにより、ユーザー名が sudo apt-get
を実行できるようになります そして sudo aptitude
パスワードはありませんが、他のコマンドは許可されません。
sudo よりも細かいレベルの制御のために、packagekit を PolicyKit と組み合わせて使用することもできます。
ユーザーにパッケージのインストール/削除を許可すると、リスクが生じる可能性があります。 libc6、dpkg、rpm などの必要なソフトウェアをアンインストールするだけで、非常に簡単にシステムが機能しなくなる可能性があります。定義されたアーカイブから任意のソフトウェアをインストールすると、攻撃者が古いソフトウェアや悪用可能なソフトウェアをインストールし、root アクセスを取得する可能性があります。私の意見では、主な質問は、従業員をどの程度信頼しているかということです。
もちろん、管理チームは、puppet、chef などの構成管理システムの使用を開始したり、システムを管理するために spacewalk を調べたりすることもできます。これにより、中央システムからシステムを構成および管理できるようになります。
aptdcon
マニュアルページから:
<ブロック引用>
aptdcon
:パッケージ管理タスクを実行できます。 aptdaemon を使用して、ソフトウェアをインストールまたは削除します。このプログラムを実行するために root になる必要はありません。
username ALL = NOPASSWD : /usr/bin/yum, /bin/rpm