Какие разрешения я должен дать папке на apache, когда она требует разрешения на запись и выполнение

Я пытаюсь запустить несколько систем управления контентом. Но у меня есть проблемы безопасности в отношении них

1) см. Следующую ссылку: http://www.dokeos.com/doc/installation_guide.html раздел 2 гласит, что следующие каталоги должны быть читаемыми, записываемыми и исполняемыми для всех:

  • Dokeos / Основной / вкл / CONF /
  • Dokeos / главная / загрузки / пользователей /
  • Dokeos / Основной / default_course_document /
  • Dokeos / архив /
  • Dokeos / курсы /
  • Dokeos / дома /

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

2) http://doc.claroline.net/en/index.php/Install_general_information

раздел Права на папки говорит

"Если вы не хотите устанавливать права на запись для целых папок, что рекомендуется из соображений безопасности, предоставьте пользователю веб-сервера право на запись в эти папки: "

Это рекомендуемая практика?

3) Еще одна LMS (система управления обучением) во время установки попросила дать некоторые папки для записи и исполнения для каждой из них, вот ссылка http://atutor.ca/atutor/docs/installation.php При установке я получил сообщение

“The directory you specify must be created if it does not already exist  

и быть доступным для записи веб-сервером. На машинах Unix введите команду chmod a + rwx content, кроме того, путь может не содержать символических ссылок. chmod a + rwx / var / www / atutor / content ”

4) Другой docebolms LMS попросил дать разрешения на запись на

files/doceboCore/photo
files/common/users
files/doceboLms/course
files/doceboLms/forum
files/doceboLms/item
files/doceboLms/message
files/doceboLms/project
files/doceboLms/scorm
files/doceboLms/test

Я проверил его документацию http://www.docebo.org/doceboCms/index.php?mn=docs&op=docsπ=5_4&folder=7, но это не помогло.

Меня совсем не убеждает идея дать разрешения на чтение, запись и выполнение, как говорят эти Системы управления обучением. Дайте мне знать, что вы, люди, должны сказать? Какова лучшая практика в таких ситуациях?

1 ответ

Решение

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

Имеет смысл, что учетной записи веб-сервера потребуется доступ на запись в определенные каталоги для хранения закачек или сгенерированных файлов. И доступ к каталогам требуется в Unix для того, чтобы пользователь мог перечислить содержимое каталога, так что это также будет необходимо.

В конечном счете, вам нужна учетная запись пользователя, на котором запущен процесс веб-сервера (скорее всего, www-data если вы используете упакованный веб-сервер в Ubuntu) для владения соответствующими папками, и тогда достаточно стандартных разрешений 755 (rwxr-xr-x), или если вы находитесь в общей системе с другими ненадежными пользователями, вы ' Я хочу 700 (RWX ------).

Итак, в вашем первом примере, предполагая, что эти каталоги уже существуют, вам нужно сделать это:

$ sudo chown -R www-data:www-data dokeos/main/inc/conf/ dokeos/main/upload/users/ dokeos/main/default_course_document/ dokeos/archive/ dokeos/courses/ dokeos/home/
$ sudo chmod 755 dokeos/main/inc/conf/ dokeos/main/upload/users/ dokeos/main/default_course_document/ dokeos/archive/ dokeos/courses/ dokeos/home/

Опять же, если вы находитесь в общей системе, вы можете заменить "755" на "700" во второй строке. Если вы знаете, что www-data если вы не используете ваш веб-сервер, замените этот элемент на правильное значение. Вы также можете запустить те же две команды в каталогах для второй системы. В обоих случаях доступ на запись, вероятно, необходим, но только для одного пользователя, работающего с веб-сервером, а не для всех.

Удачи.

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