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

Проблема безопасности www-данных на нескольких сайтах в vps

Я недавно купил VPS и многому у него научился. Мне удалось создать пользователя ftp, установить его как владельца корня документа моего сайта, добавить его в группу www-user, установить группу как группу корня документа и дать разрешения файлам 0775 (0664).

Мой вопрос: если www-data может получать доступ и изменять файлы в корне документа, не смогут ли сценарии с других сайтов также изменять эти файлы (которые теперь защищены от публики с помощью .htaccess)?

ПРИМЕЧАНИЕ. Я хочу, чтобы www-data имел доступ на запись, поскольку сценарии PHP должны иметь возможность изменять файлы.

Как решить эту проблему?

Чтобы решить эту проблему, вам пришлось запускать каждый экземпляр сайта с его собственными учетными данными, а не использовать www-data.

При использовании apache, ты можешь использовать apache-mpm-itk и это AssignUserID параметр для назначения определенного пользователя / группы каждому сайту / виртуальному хосту. С помощью этого метода оба apache, php, cgi, ecc будет запущен с назначенными учетными данными.

Другой подход, специфичный для php, - suPHP, который в основном запускает ваши php-скрипты с использованием определенных учетных данных пользователя / группы.

Я думаю, что лучше не позволять пользователю или группе Apache писать во всех корневых каталогах вашего документа. Используйте apache-mpm-itk / suPHP / mpm-peruser или нет, возможно, вам следует определить, какие файлы и каталоги Apache действительно нужно записать (для каждого сайта), и предоставить групповые разрешения на запись только для этих файлов / каталогов.