Какой путь прописать для upload_tmp_dir?

В целях безопасности, многие источники рекомендуют прописывать в php.ini
open_basedir какую-то конкретную директорию на сервере, например:
open_basedir = /var/www/
а временные файлы размещать вне этой директории, чтобы нельзя было перехватить клиентские сессии, к примеру:
upload_tmp_dir = /var/php_session

Немного запутался в этом вопросе, стоит ли так делать, и если стоит, то почему я наблюдаю ошибки в логах, с сообщениями типа:
временные файлы upload_tmp_dir должны быть размещены внутри open_basedir.
А если это так, то теряется смысл указывать upload_tmp_dir и open_basedir.
Если так прописывать нельзя, то почему множественные источники пишут этот бред?

Пример строки лога, имя домена заменено на фейковое.
2019/01/16 10:43:18 [error] 1822#0: *3233 FastCGI sent in stderr: "PHP message: PHP Warning: file_exists(): open_basedir restriction in effect. File(/var/php_session/php3HjuuI) is not within the allowed path(s): (/var/www/) in /var/www/mysite.com/www/wp-includes/functions.php on line 2297" while reading response header from upstream, client: 192.168.5.1, server: mysite.com, request: "POST /wp-admin/async-upload.php HTTP/2.0", upstream: "fastcgi://unix:/var/run/php7-fpm.sock:", host: "mysite.com", referrer: "https://mysite.com/wp-admin/upload.php"
  • Вопрос задан
  • 4297 просмотров
Решения вопроса 2
shambler81
@shambler81 Куратор тега Linux
можешь не париться
Во первых open_basedir снижает скорость сайта притом значительно
во вторых он устаревший и по факту не влияет ни на что
что каксается сессий то вообще забей вероятность перехвата сессии вообще крайне мала тем более если у тебя на сервере только твои проекты.
Если ты паришся этим вопросом то ответь кто обновляет и как часто обновляетс linux.
Как часто ты обновляешь ядро сайта ?
Как часто ты обновляешь версии пхп?
Ответ никто и никак.
Следовательно если говорить о дырах, то эта куда как больше
Ответ написан
Vamp
@Vamp
upload_tmp_dir нужно указывать в пределах open_basedir, иначе скрипты сайта не смогут получить доступ к загружаемым файлам. Аналогично нужно настроить ещё session.save_path и sys_temp_dir, иначе не будут работать сессии и функции для работы с временными файлами.

Смысл появляется когда у вас больше одного сайта на сервере. В этом случае open_basedir используется для изоляции сайтов друг от друга - чтобы взлом одного сайта не привёл ко взлому всех остальных сайтов на сервере.

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

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
25 апр. 2024, в 19:42
49000 руб./за проект
25 апр. 2024, в 19:41
2000 руб./за проект
25 апр. 2024, в 19:22
18000 руб./за проект