Общие рекомендации по безопасности
Регулярное обновление
- Ядро 1С-Битрикс: Устанавливайте обновления сразу после их выхода. После установок обновлений обязательно проверяйте ваш сайт, чтобы весь функционал работал корректно.
- Модули и плагины: Удаляйте неиспользуемые модули и обновляйте актуальные.
- Сторонние компоненты: Проверяйте их на наличие уязвимостей специализированными средствами.
Настройка прав доступа
- Установите правильные права на файлы и папки:
- Папки: 755 (или 750, если доступ ограничен).
- Файлы: 644 (или 640).
- Владелец файлов: пользователь веб-сервера (например, www-data:www-data).
Пример:
sudo chown -R www-data:www-data /var/www/site/
sudo find /var/www/site/ -type d -exec chmod 755 {} \;
sudo find /var/www/site/ -type f -exec chmod 644 {} \;
Способы защиты сайта от вирусов и хакерских атак
Защита файловой системы
Использование атрибута Immutable
Атрибут Immutable (chattr +i) блокирует изменение файлов и папок. Однако для работы Битрикса некоторые директории должны оставаться доступными для записи.
# Установить атрибут Immutable для всех файлов и папок рекурсивно
sudo chattr -R +i /var/www/site/
# Снять атрибут Immutable для критических папок
sudo chattr -R -i /var/www/site/upload/
sudo chattr -R -i /var/www/site/bitrix/cache/
sudo chattr -R -i /var/www/site/bitrix/managed_cache/
sudo chattr -R -i /var/www/site/bitrix/stack_cache/
sudo chattr -R -i /var/www/site/bitrix/htmlpages/
sudo chattr -R -i /var/www/site/bitrix/tmp/
sudo chattr -R -i /var/www/site/resized_images/
Какие директории исключить из Immutable:
- /upload/ — хранение загруженных пользователем файлов.
- /bitrix/cache/ — кэш данных.
- /bitrix/managed_cache/ — управляемый кэш.
- /bitrix/stack_cache/ — стековый кэш.
- /bitrix/htmlpages/ (или /bitrix/html_pages/) — кэш HTML-страниц.
- /bitrix/tmp/ — временные файлы.
- /bitrix/backup/ — резервные копии (если используется встроенное резервное копирование).
- /bitrix/updates/ — обновления платформы и модулей.
- /bitrix/log/ — логи системы (если включено логирование).
- /resized_images/ — автоматически генерируемые изображения.
- /bitrix/components/ — если используются динамические компоненты (редко, но зависит от конфигурации).
Запрет выполнения PHP в пользовательских папках
Добавьте в .htaccess (для Apache) или конфиг Nginx правила, запрещающие выполнение PHP в папках с пользовательским контентом.
Настройка для веб-сервера Apache .htaccess:
<FilesMatch "\.(php|pl|py|jsp|asp|sh|cgi)$">
Deny from all
</FilesMatch>
Настройка для Nginx:
location ~* ^/upload/.*\.(php|pl|py|jsp|asp|sh|cgi)$ {
deny all;
}
Защита административной панели
Ограничение доступа по IP
Разрешите доступ к админке только с доверенных IP-адресов.
Настройки для Apache:
<Directory "/var/www/site/bitrix/admin/">
Order Deny,Allow
Deny from all
Allow from 192.168.1.1
</Directory>
Настройки для Nginx:
location /bitrix/admin/ {
allow 192.168.1.1;
deny all;
}
где 192.168.1.1 - это внешний ваш IP-адрес.
Двухфакторная аутентификация
Включите двухфакторную аутентификацию в настройках 1С-Битрикс.
Подробнее о подключении двухфакторной аутентификации читайте в статье на сайте производителя.
Включите HTTPS
Обязательно используйте SSL-сертификат для шифрования трафика на вашем сайте. Ваш сайт должен открываться по адресу https://site.ru/.
ModSecurity
Установите и настройте ModSecurity для защиты от SQL-инъекций, XSS и других атак.
Apache:
<IfModule security2_module>
SecRuleEngine On
SecRule ARGS "@rx <script>" "id:1,deny,status:403,msg:'XSS Attack'"
</IfModule>
Nginx:
modsecurity on;
modsecurity_rules_file /etc/nginx/modsec/main.conf;
Мониторинг и резервоное копирование
Аудит изменений
Используйте инструменты, такие как inotify или Tripwire, для отслеживания изменений в файловой системе.
Резервное копирование
Настройте ежедневное резервное копирование файлов и базы данных. Храните копии вне сервера.
Это можно и даже нужно сделать как средствами платформы 1С-Битрикс, так и дополнительно на уровне операционной системы или хостинг-провайдера.
Дополнительные меры
Защита от брутфорса
Ограничьте количество попыток входа в админку.
Nginx:
location /bitrix/admin/ {
auth_basic "Admin Area";
auth_basic_user_file /etc/nginx/.htpasswd;
limit_req zone=one burst=5;
}
Использование CAPTCHA
Добавьте CAPTCHA на формы входа и регистрации.
Заключение
Защита сайта на 1С-Битрикс требует комплексного подхода. Регулярное обновление, настройка прав доступа, использование WAF и мониторинг — это лишь часть мер, которые помогут вам избежать взлома. Если ваш сайт уже заражен, не теряйте время — обратитесь к профессионалам из компании Medialine для оперативного восстановления и усиления защиты.