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

Как я могу обслуживать несколько проектов из apache и запрещать пользователям читать проекты других пользователей?

Давайте объясним этот беспорядок, у меня есть несколько проектов на одном сервере под debian 6, каждый из которых расположен в своем соответствующем / home / USER с соответствующим пользователем. Я хочу, чтобы пользователи, входящие в систему как «project1», не могли читать файлы в других папках проекта (/ home / project2, т.е.). Но я хочу, чтобы apache обслуживал каждый проект без разрешения.

Я могу получить одно или другое, но не то и другое одновременно. Если я запрещаю пользователям читать других с помощью «chmod 0750 / home / project *», я получаю «Запрещено» от apache.

Как это можно было решить?

Один из способов сделать это - изменить разрешения ваших проектов на 750 и установите владельца на user1:www-data. Таким образом, пользователь-владелец имеет полные права доступа к папке. Группа www-data имеет разрешения на чтение + выполнение, которых должно быть достаточно для обслуживания содержимого из этой папки.

Вы можете использовать расширенные ACL чтобы предоставить пользователю доступ к Apache, или сделайте обычное дело и просто дайте o+x,g-rwx и поместите всех в одну группу.