Назад | Перейти на главную страницу

Проблемы с разрешениями FTP и Apache

У меня возникли проблемы с тем, какой пользователь должен владеть моим каталогом www - ftp или apache? При установке на пользователя ftp, пользователь может добавлять, удалять и легко изменять файлы, но действия файловой системы php генерируют ошибки отказа в разрешении (конечно, потому что они требуют, чтобы пользователь был apache). Однако, если каталог www настроен на apache, ftpuser не сможет выполнять некоторые действия, такие как изменение и удаление файлов. Кто-нибудь когда-нибудь сталкивался с подобной проблемой? Что исправить? Спасибо

Вот для чего нужны группы.

Вы можете добавить ftp пользователь к apache группа, и наоборот. Или, что еще лучше, вы можете добавить их в третью группу, которую вы создаете специально для этой цели.

например

# groupadd mygroup
# useradd -G mygroup ftp
# useradd -G mygroup apache
# chown -R :mygroup /var/www
# chmod -R g+rw /var/www

Эти команды делают следующее:

  1. Создает новую группу mygroup
  2. Добавляет ftp-пользователя в mygroup
  3. Добавляет пользователя apache в mygroup
  4. Рекурсивно предоставляет группе владение содержимым / var / www / mygroup
  5. Рекурсивно предоставляет группе права чтения и записи для содержимого / var / www /

Вам просто нужно убедиться, что файлы, добавленные в будущем, принадлежат группе mygroup и имеют соответствующие разрешения для apache и ftp на их чтение / запись.

Большая часть вашего контента должна принадлежать другому пользователю, кроме apache. Предполагая, что вы используете FTP для обновления содержимого, вы можете установить, что все файлы принадлежат ftp: apache. Я бы предложил использовать SCP для SFTP вместо ftp. Файлы должны иметь разрешения 644 или 640 и разрешения для каталогов 755 или 750.

Для файлов и каталогов приложение должно написать, чтобы добавить групповой доступ на запись.

У меня была аналогичная проблема со встроенной php-страницей, которая копировала папку на сервере с другим именем. Я исправил это, отключив безопасный режим php.