У меня работает сервер vsftp. Вот что я хочу сделать:
2 разработчикам предоставляется доступ через ftp-клиент к веб-каталогу. Они пишут файлы, которые хотят. Затем они обновляют страницы (F5), и веб-сервер предоставляет им новые страницы.
Вот что я сделал:
allaccessgroup).
user1который принадлежит к этой группе и
user2который также принадлежит к этой группе
/var/www/newsite
chgrp allaccessgroup /var/www/newsite
chown apache /var/www/newsite
chmod 570 /var/www/newsite
Таким образом: apache может читать и только прочтите файлы php, и всем пользователям user1 и user2 даны права делать то, что они хотят.
Проблема в том, что я хочу, чтобы user1 и user2 загружали свои файлы. Когда они загружаются, разрешения для файлов - allaccessgroup / user1 или allaccessgroup / user2, и мне нужны разрешения allaccessgroup / apache.
Я ищу способ автоматически менять принадлежность, как только файлы будут загружены. Я читал такие вещи: создайте файл php, затем вызовите его после завершения загрузки:
$complete = $complete.exec("ssh root@host -i /path/to/pulic/key chmod 0700 /Users/".$shortname."/Private/\n");
Мне не нравится называть "exec", это означало бы предоставить доступ "exec" к php ... Любая другая идея приветствуется!
Кстати :
Я искал файл конфигурации vsftp:
chown_uploads = ДА chown_username = apache
но это для того, чтобы загруженные анонимные файлы принадлежали другому пользователю, а не конкретному пользователю
Любая другая идея приветствуется!
Спасибо !
Взгляните на local_umask директива внутри vsftpd.conf
Другой вариант - посмотреть на липкие биты, если они принадлежат к одной группе, но не являются их основной группой. chmod g + s / var / www / newsite Таким образом, все новые файлы, созданные в каталоге, будут принадлежать группе родителей. Не проверял подкаталоги, но вы можете это проверить.
file_open_mode = Разрешения, с которыми создаются загруженные файлы. Umasks применяются поверх этого значения. Вы можете изменить на 0777, если хотите, чтобы загруженные файлы были исполняемыми.
Default: 0666
Это немного оффтоп, но VSFTP поставляется с включенным анонимным пользователем, просто чтобы вы знали.
http://www.standalone-sysadmin.com/blog/2008/11/default-vsftpd-on-centos-is-dumb/
Просто сообщаю вам, если вы это не тестировали.