Как я могу принудить пользователя: групповое владение новыми файлами, написанными www-данными apache?

В качестве любезности мы размещаем файлы веб-сайтов наших клиентов. Каждый клиент имеет свою собственную учетную запись Linux, и файлы веб-сайта обслуживаются из /home/user/public_html.

Все файлы клиентов имеют право собственности на user:user, Разрешения для учетных записей - 755, и это позволяет им загружать и управлять файлами через SSH, и Apache также может обслуживать файлы, поскольку у него есть доступ на чтение через разрешения "всем остальным". При такой настройке пользователи могут не беспокоиться о том, что другие пользователи могут изменять свои файлы.

Проблема возникает с Wordpress, Drupal или другой CMS, где программное обеспечение отвечает за самообновление, а управление файлами осуществляется через интерфейс веб-сайта (например, Media Library Wordpress).

Для этого пользователь или группа должны иметь права на запись. Многие решения в сети рекомендуют следующую настройку прав собственности и прав доступа к веб-файлам и каталогам, которые необходимо регулярно обновлять / модифицировать:

владение: пользователь:www-data permissions: 775 пользователь становится членом группы www-data

При такой настройке происходят две нежелательные вещи. Во-первых, поскольку они принадлежат к одной группе, пользователи теперь могут получать доступ к учетным записям других пользователей и, случайно или нет, изменять удаление или загружать файлы, что представляет небольшую угрозу безопасности, особенно если пользователь загружает плагин или модуль с вредоносным ПО. код.

Во-вторых, после загрузки изображения через интерфейс, например, этот файл теперь принадлежит www-data:www-data и пользователь больше не может управлять этими файлами через ssh / ftp.

Есть ли способ заставить www-данные уважать право собственности на файлы, чтобы пользователь всегда был пользователем? Как правильно настроить Apache в многопользовательской среде, где Apache требуется доступ для записи, но я избегаю этих проблем с разрешениями и безопасностью?

0 ответов

Другие вопросы по тегам