ユーザーという名前のサーバーがあり、deploy-user
そのユーザーに関連する複数のWebサイトをバックアップするバックアップスクリプトを作成しました。ただし、バックアップしたいWebサイトの1つ/home/usera/web/www.example.com/some/random_dir
に属するディレクトリがありますapache-data-user
。
deploy-user
このディレクトリをバックアップするにはどのような権限を付与する必要がありますか?私が知っているオプションは次のとおりです。
- スクリプトを次のように実行します
root
。実際にはそうしたくありません。 apache-data-user
とdeploy-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_dir
ACLを有効にするには、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