■FTPDその他
■SFTPでの接続
※検証中
Basis.txt の「ホームディレクトリより上層へのアクセスを禁止する」にchrootの検証内容がある
SFTPでchrootで /var/www 内を更新できるか
/var/www 内に apache ユーザの鍵が作られるなら、デプロイなどに支障が出るか
と思ったが、apache ユーザの鍵は今は /usr/share/httpd/.ssh に作られるみたい(Vagrantでも同様かは確認する)
それなら /var/www/main をホームディレクトリとして、ここに鍵を作ってchrootにすれば大丈夫かも
どうしても難しければ、素直にFTP(FTPS)を使うべきか
以下は参考になりそう
ただしやはり /var/www/main の所有者をrootにする必要がありそう
/var/www の所有者をrootにして、main の所有者を作業ユーザにして…だと、バーチャルホストでの切り分けが難しくなりそう
SFTPを用いて特定ユーザをchrootする方法 - Qiita
https://qiita.com/kite_999/items/b8c2e6ffcc05dbe5ed66
SFTPでのみアクセスできるユーザーの作成 - Qiita
https://qiita.com/kenta8813/items/57f00f7dbb48326c5cef
SFTP用ユーザのchroot環境の構築 - sanosoft @ ウィキ - アットウィキ
https://w.atwiki.jp/sanosoft/pages/75.html
/var/www/main はそのまま残しておいて、
案件名が test だとして、/var/www/test の所有者をrootにして、ここをchrootの場所にして、/var/www/test/web の所有者を作業ユーザにして、
/var/www/test/web/html を公開ディレクトリにするか
www の中に web という名前のフォルダを作るのは微妙な気がするので、上記構成でいいとしても命名は検討したい
もしくは /var/test の所有者をrootにして、ここをchrootの場所にして、/var/test/www の所有者を作業ユーザにして、
/var/test/www/html を公開ディレクトリにするか
ここはselinuxが有効でも大丈夫な場所か、などは確認しておきたい
■複数台サーバでの稼働
※未検証
rsyncするユーザでrsyncコマンドのみsudoで動かせるようにして、
root権限で同期すれば所有者と権限も引き継がれるみたい?