У меня возникли проблемы с загрузкой файлов с помощью моей CMS (Drupal). Когда я установил более строгие права доступа к файлам, я не смог ничего загрузить. Затем я изменил владельца каталога загрузки и всех подпапок на daemon
, и все работало нормально. Что именно daemon
? Этот пользователь используется Apache или PHP?
Безопасно ли использовать daemon
как владелец папок и подпапок в каталоге загрузки?
Apache обычно не работает как daemon
, а PHP обычно просто работает под тем пользователем, от имени которого работает Apache.
Имя daemon
звучит довольно банально, поэтому, если один разработчик посчитал целесообразным использовать его по умолчанию для одного демона, не было бы удивлением, если бы другие сочли его пригодным для других демонов.
Таким образом, возможно, что под этим пользователем запущено несколько демонов, и уязвимость безопасности в любом из них может открыть доступ к любым ресурсам, которые daemon
пользователю разрешен доступ.
Лучше было бы большее разделение, поэтому я бы посмотрел, где настроен пользователь, и использовал бы специального пользователя. Это лучший совет по безопасности, который я могу дать, основываясь на информации в вашем вопросе.
Вы можете использовать ps
команда, чтобы узнать, что работает от имени этого пользователя.
Если демону необходимо создать файлы, ему потребуется доступ для записи в каталог, в который они записаны. Но он не обязательно должен быть владельцем каталога. Вместо этого вы можете позволить каталогу принадлежать root
и его группа должна быть той, под которой работает демон. Затем вы можете предоставить группе доступ на запись. Например
chmod 1775 directory
Эта версия позволит любому члену группы создавать файлы в каталоге, но не может удалять или переименовывать файлы, созданные другими пользователями. А те, кто не входит в группу, будут иметь доступ для чтения каталога и доступа к его содержимому.