バックアップスクリプト権限の問題

バックアップスクリプト権限の問題

ユーザーという名前のサーバーがあり、deploy-userそのユーザーに関連する複数のWebサイトをバックアップするバックアップスクリプトを作成しました。ただし、バックアップしたいWebサイトの1つ/home/usera/web/www.example.com/some/random_dirに属するディレクトリがありますapache-data-user

deploy-userこのディレクトリをバックアップするにはどのような権限を付与する必要がありますか?私が知っているオプションは次のとおりです。

  • スクリプトを次のように実行しますroot。実際にはそうしたくありません。
  • apache-data-userdeploy-user同じグループに追加します。しかし、それではapache-data-user多くの権限があります。

このディレクトリをバックアップする最良の方法を提案する人はいますか?

答え1

/etc/groupsでデフォルトのApacheユーザーグループを見つけます。

展開ユーザーをグループに追加します。

答え2

デプロイユーザーとApacheデータユーザーを同じグループに配置したくない場合前方十字靭帯あなたに最適です。

答え3

ACLを無効にするには、オプション2が最良の選択です。これらのグループには、参照しているディレクトリに対する読み取り権限のみが必要です。

別のオプションは、sudoを使用して展開ユーザーにいくつかの情報を提供することです。非常に制限的ルートとしてバックアップ操作を実行する権限のみがあります。

答え4

お持ちの場合アクセス制御リスト有効にしてコンテンツを読み取る権限を付与しますdeploy-user/home/usera/web/www.example.com/some/random_dirACLを有効にするには、aclそのオプションをファイルシステムエントリに追加し、/etc/fstab展開aclパッケージをインストールする必要があります。

Linuxでは、次のコマンドは、ルートにルートをdeploy-user持つ階層全体に対する読み取りおよび通過権限を提供します/home/usera/web

setfacl -d -m user:deploy-user:rx -R /home/usera/web
setfacl -m user:deploy-user:rx -R /home/usera/web

関連情報