Отключение дампа ядра для уже запущенного процесса

Преимущество стандартов в том, что обычно есть из чего выбирать.

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

То, что вы создали пользователя, означает, что у вас есть привилегии суперпользователя на поле (вы должны были явно указать это ). Но вы не сказали, используете ли вы собственное программное обеспечение или готовый пакет. Последнее создает некоторые сложности, поскольку его настройка может поставить под угрозу регулярное исправление, которое вы должны выполнять. Если apache является единственным uid, для которого вы намерены иметь строго контролируемые права на цель, вы можете решить проблему, предоставив доступ к файлу apache как «другой», а не как пользователь или группа.

В качестве альтернативы, чтобы предоставить доступ к загружаемому контенту другим учетным записям, просто используйте umask 000/chmod файлы на 666. Обратите внимание, что перемещение _загруженного _файла ()фактически создает копию и удаляет оригинал и, что особенно важно, создание файла учитывает umask . Следовательно, любой правильно написанный php может хранить загруженный http контент как доступный для чтения и записи всем без каких-либо изменений кода, установив umask 000 для веб-сервера.

В качестве альтернативы вы можете написать сценарий оболочки, чтобы изменить права доступа к контенту, загружаемому по http, на что-то, что позволит вам манипулировать контентом с помощью обычной учетной записи пользователя, а затем предоставить вашему веб-серверу uid право вызывать этот скрипт через sudo. Это должно быть вызвано вашим кодом после перемещения _загруженного _файла ().

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

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

Я рекомендую использовать подход umask .

0
28.07.2021, 05:53
0 ответов

Теги

Похожие вопросы