Проверяя портал в сканере безопасности — я регулярно вижу угрозы. И казалось бы, почему не сделать эти настройки дефолтными, чтобы сразу обеспечить защиту портала на достаточно высоком уровне?
Почему-то не сделали до сих пор. А значит, решаем это самостоятельно.
Как — идем по очереди по пунктам:
- Предположительно в директории хранения сессий находятся сессии других проектов
Самым простым решением, является включение хранения сессий в базе данных. Но предупреждаю, это снизит продуктивность портала.
Где включать?
- В админке заходим по пути "Настройки - Проактивная защита- Защита сессий" или просто подставить строку в адресе - /bitrix/admin/security_session.php
- Включить хранение сессий в БД и включить смену идентификатора
- Разрешено чтение файлов по URL (URL wrappers)
Для решения этой проблемы нам нужно — зайти на сервер и создать (если ещё не создан) файл в папке /etc/php.d/ с названием z_bx_custom_settings.ini
Например, сразу открыть в редактирование можно командойmcedit /etc/php.d/z_bx_custom_settings.ini
Если запилить в исходный bitrixenv.ini — при обновлении серверного окружения все затрется.
Что ж, заходим в наш файл и добавляем туда строки:
allow_url_fopen = off;
И перезагружаем Апач:
systemctl restart httpd.service
- Временные файлы хранятся в пределах корневой директории проекта
Приведу в пример классическое решение, папку, где хранятся временные файлы вы можете разместить где угодно. Я лишь показываю пример, как это сделать, с прямым указанием команд, для тех, кто плохо разбирается в настройках серверов.
Шаги наши будут следующие:- Решите, выберите, придумайте директорию вне корня проекта. То есть, решите — где же вы будете хранить временные файлы. Например, это может быть «/home/bitrix/tmp/www»
- Скорее всего, этой папки ещё нет на сервере. Создайте ее. Для этого выполните следующую команду:
mkdir -p -m 700 /home/bitrix/tmp/www
- В файле /bitrix/php_interface/dbconn.php (полный путь, как правило это /home/bitrix/www/bitrix/php_interface/dbconn.php) — нужно найти или добавить строку BX_TEMPORARY_FILES_DIRECTORY.
Если вы только развернули портал, то этой строки не будет и её нужно будет добавить.
В нашем случае, она будет выглядеть вот так:
define("BX_TEMPORARY_FILES_DIRECTORY", "/home/bitrix/tmp/www");
Важно! — эту строку добавляем перед закрывающим php тегом, то есть перед строкой, в которой написано «?>».
-
Проверяемый сайт отвечает на хост по умолчаниюРешается очень просто.
Идем по пути — Настройки — Проактивная защита — Хосты/Домены
Ставим переключатель «Активная реакция:» в статус «Перенаправлять»
А в поле «Адрес перенаправления:» — пишем адрес портала с типом соединения, то есть: https://domain.crm или http://domain.crm - Включен вывод ошибок
В уже знакомом нам файле /etc/php.d/z_bx_custom_settings.ini, здесь нам снова поможетmcedit /etc/php.d/z_bx_custom_settings.ini
добавляем строку
display_errors = off;
allow_url_fopen = off;
mbstring.func_overload = 0;
mbstring.internal_encoding = UTF-8;
И конечно же перезагружаем Апач:
systemctl restart httpd.service
Вот 5 самых часто встречаемых ошибок и угроз, которые показывает сканер безопасности Битрикс24 после развертки нового портала.