Unix расширенные права доступа к файлам на веб-сервере - PullRequest
0 голосов
/ 07 декабря 2011

У меня есть 3 папки, содержащие сценарии PHP:

- core 
- custom_modules_1 (cm1)
- custom_modules_2 (cm2)

Ядро выполняется Apache и включает в себя (require_once) файлы из cm1 или cm2. Он никогда не включает см1 и см2 одновременно.

Но проблема возникает, когда cm1 включает файл из cm2, что должно быть предотвращено, но как?

Я использую сервер VPS CentOS с cPanel, поэтому ACL, вероятно, не вариант, так как он может сломать cPanel.

Ответы [ 3 ]

0 голосов
/ 07 декабря 2011

Есть несколько способов решить эту проблему в зависимости от деталей ваших точных требований (не ясно из поста).

  • использовать различные пути включения для сценариев в зависимости от того, откуда они будут исходить от модулей (с custom_modules_1 или custom_modules_1 как частью пути)

  • использовать open_basedir для ограничения доступа к определенным каталогам

  • использовать разные права собственности на разные наборы файлов и применять права доступа с помощью suphp

0 голосов
/ 15 декабря 2011

Спасибо за ваши ответы, но единственным способом, которым мне удалось навязать требуемые ограничения, было использование php auto_prepend_file для добавления файла, который выполняет определенные проверки внутри каждого php-файла, который включен.

0 голосов
/ 07 декабря 2011

Это не может быть решено с разрешениями.Вам нужно будет добавить сторожевой код в каждый скрипт, чтобы предотвратить перекрестное включение.

...