prove
rsyncがリモートサーバーからダウンロードしたファイルの権限を変更できるように、root権限を必要とするバックアップスクリプトをテストするPerlテストスクリプトがあります。
したがって、Macのsudoersファイルには次のものがあります。
root ALL=(ALL) ALL
%admin ALL=(ALL) ALL
%admin ALL=(ALL) NOPASSWD:/path/to/prove
効果があるしかし、私の質問は、prove
ローカルユーザーが書いたほとんどすべてのPerlスクリプトを実行するために使用できるため、これは大きなセキュリティリスクですか?
答え1
はい、この方法は安全ではありません。
後で呼び出されるコマンドを実行する特定のラッパーを作成しprove
、ルートのみを変更できるように保護し、ルートのみアクセスできる場所に配置します。その後、追加それファイルのラッパーですsudoers
。
パラメータはスクリプトでは許可されていません。
注:誰かが最初のPerlスクリプトまたはバックアップスクリプトを変更できる場合でも、悪用される可能性があります。チェーン内のすべてのアイテムにのみアクセスできるようにする必要がありますroot
。