»  Безопасность  »  Защита сайта с файрволом на уровне сервера на основе бесплатной версии Sucuri Security

Защита сайта с файрволом на уровне сервера на основе бесплатной версии Sucuri Security

Последнее обновление:

Дополнительные настройки безопасности на основе плагина Sucuri SecurityПлатная версия Sucuri Security является одним из лучших сервисов для защиты Вордпресс сайтов от хакеров, потому что обеспечивает высший уровень безопасности и предлагает несколько дополнительных сервисов.

Преимущества Sucuri Security:

  1. Высший уровень безопасности
  2. Снижение нагрузки на сервер за счет обработки вредоносного трафика на серверах Сукури
  3. Ускорение сайта за счет подключения к собственному CDN Anycast
  4. Гарантия восстановления сайта в случае, если сайт взломают

Этот сервис стоит от 199$ / год. В этой статье вы узнаете, как настроить мощную защиту сайта с файрволом на уровне сервера на основе бесплатного плагина Sucuri Security, в котором есть хорошие инструменты для наблюдения за безопасностью сайта.

Преимущество этого плагина в том, что вы видите состояние безопасности сайта в админке Вордпресс:

  • Плагин сравнивает файлы ядра Вордпресс с файлам в репозитарии Вордпресс (каждые 12 часов)
  • Сканер SucuriSiteCheck проверяет сайт на наличие вредоносного кода (каждые 6 часов)
  • Плагин проверяет, что сайт не находится в черных списках поисковиков и антивирусов (24 часа)
  • В логах событий нет ничего подозрительного:
Защита сайта с файрволом на уровне сервера на основе бесплатной версии Sucuri Security
Файлы ядра Вордпресс не отличаются от файлов ядра в репозитарии Вордпресс.
Сканер SucuriSecurityCheck не нашел вредоносное ПО.
Сайт не занесен в черные списки.

После установки плагина вы сделаете несколько дополнительных настроек и добавите файрвол.

Чтобы применить изменения, нужно добавить правила в functions.php, wp-config.php и .htaccess.

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

Содержание:

  1. Сделайте базовые настройки
  2. Настройте Sucuri Security
  3. Дополнительные настройки
  4. Файрвол
  5. Отключите хотлинк картинок

Сделайте базовые настройки

Сделайте основные настройки, которые рекомендуют применить разработчики всех плагинов и сервисов безопасности:

  • Обновите Вордпресс, плагины и тему до последней версии,
  • Настройте автоматическое обновление ПО,
  • Используйте популярные и обновляемые темы и плагины,
  • Используйте сложные логины и пароли для аккаунтов, базы данных, е-мейла и хостинга,
  • Не используйте одинаковые имя пользователя и логин,
  • Используйте SSL и FTPS.

Сделайте все настройки из Минимальной безопасности Вордпресс.

Установите один из бесплатных плагинов для ограничения количества попыток авторизации. Limit Login AttemptsLimit Login Attempts ReloadedLogin LockDown.

Для большей безопасности вы можете установить платный плагин Security Ninja, который использует базу данных вредоносных IP. Посетителям с этих IP можно полностью запретить посещение сайта, или разрешить посещение, но заблокировать возможность авторизоваться.

Облачный файрвол SecurityNinja Pro
633 млн. IP, которым ограничено или запрещено посещение сайта.
Security Ninja Pro - Облачный файрвол

Настройте Sucuri Security

В бесплатной версии Sucuri Security есть мощные инструменты для защиты сайта. Первое, что нужно сделать — создать API ключ для соединения с сервером Sucuri, на котором будут храниться логи событий, и с которого будет приходить информация о состоянии сайта.

Логи событий начинают отображаться на панели Dashboard сразу после генерации ключа.

С сервера Sucuri приходит информация о заражении сайта и статусе нахождения в черных списках.

После того как вы все настроите, вы можете заходить на страницу Dashboard и Last Logins, чтобы проверить, что все в порядке.

Защита сайта с файрволом на уровне сервера на основе бесплатной версии Sucuri Security
Последние входы: Все пользователи — Админы — Пользователи — Неудачные попытки

WordPress Integrity Scanner

Этот модуль сравнивает файлы ядра Вордпресс на вашем сайте с файлами Вордпресс в официальном репозитарии. Включите модуль в разделе Settings — Scanner — WordPress Integrity Diff Utility.

Модуль сравнения файлов ядра Вордпресс на сайте и в официальном репозитарии Вордпресс
Нажмите Enable для включения модуля

Если вы вручную добавляли или изменяли какие-то файлы, вы можете добавить их в исключения в разделе Settings — Scanner — WordPress Integrity (False Positive).

Список игнорируемых файлов при сравнении файлов ядра с оригинальными файлами

По умолчанию сканер сравнивает файлы раз в 24 часа. В разделе ScannerScheduled Tasks вы можете изменить частоту сканирования. Поставьте галочку напротив sucuriscan_scheduled_scan, в выпадающем меню снизу выберите Twice Daily, нажмите Submit.

Настройки безопасности Sucuri Security

В разделе Hardening Options включите все настройки, кроме Website Firewall Protection. Это платная функция, которая включается после оплаты подписки.

Настройки безопасности сайта Sucuri Security
Если вы пользуетесь редактором файлов в админке Вордпресс — оставьте последнюю функцию временно выключенной, если не пользуетесь, то нажмите Apply Hardening.

Применяйте настройки Block PHP Files in Uploads Directory, WP-CONTENT Directory и WP-INCLUDES Directory с осторожностью, потому что некоторые плагины или темы могут помещать свои PHP файлы в эти папки.

Если какой-то функционал темы или плагина пропал, добавьте соответствующий файл в исключения в разделе Whitelist Blocked PHP Files.

Настройте ограничение количества попыток авторизации

Укажите количество неудачных попыток доступа, после которого IP посетителя попадает в бан. Раздел Password Guessing Brute Force Attacks:

Ограничение количества попыток авторизоваться на сайте
30 — 60 — 120 — 240 — 480 неудачных попыток доступа в час

Настройте оповещения о событиях на сайте

Укажите е-мейл, на который будут приходить сообщения, в разделе Alerts Recipients.

Укажите е-мейл, на который будут приходить сообщения о событиях на сайте

Настройте формат сообщений в разделе Alert Subject:

Формат сообщений
Вы можете использовать собственный формат — Custom Format.
Например: Ваш_сайт, :event, :remoteaddr, :username

Настройте максимальное количество сообщений в час в разделе Alerts Per Hour:

Количество сообщений в час
Если вы выберите небольшое значение, вы можете пропустить важное сообщение

Выберите события, о которых вы хотите получать сообщения, в разделе Security Alerts:

События на сайте, о которых вы можете получать сообщения
Обычно можно использовать стандартные настройки, но можно добавить Receive email alerts for core integrity checks — Получать сообщения, если появится разница в файлах ядра на сервере и в репозитарии Вордпресс

После взлома

У плагина Sucuri Security есть несколько инструментов для помощи в восстановлении сайта после взлома. Одним из этих инструментов — Создание новых ключей и солей — вы можете пользоваться время от времени. Создавайте новые ключи и соли раз в 3 — 6 — 12 месяцев для поддержания безопасности сайта.

Обновление ключей и солей

Дополнительные настройки

В этом разделе вы добавите правила в файлы functions.php, wp-config.php и .htaccess.

Добавьте правила в functions.php

Functions.php — главный файл темы Вордпресс, который находится в корневой папке темы.

Не добавляйте код напрямую в файл темы, потому что при обновлении темы файл с вашими изменениями будет заменен новым файлом. Добавьте код в functions.php дочерней темы или с помощью специальных плагинов.

Скройте версию Вордпресс, скриптов и стилей

По умолчанию Вордпресс оставляет мета-теги с версией ПО на страницах сайта. Это делается для отслеживания количества сайтов, работающих на Вордпресс.

Также информация о версии ПО используется хакерами для атаки на сайты с устаревшей версией софта, так как описание уязвимостей устаревших версий находится в открытом доступе.

Хотя вы должны использовать последнюю версию софта, эту информацию лучше скрыть.

Добавьте этот код в файл functions.php:

Измените текст ошибки на странице авторизации

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

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

Чтобы изменить текст сообщения, добавьте этот код в functions.php:

Замените сообщение в строке 3 на свое.

Удалите ссылку WLW из заголовков страниц

Если вы не используете Windows Live Writer, то лучше удалить эту ссылку из заголовков, потому что она указывает на факт использования Вордпресс.

Чтобы удалить эту ссылку, добавьте эту строку в functions.php:

Удалите ссылку RSD из заголовков страниц

Если вы не пользуетесь сервисами Really Simple Discovery, такими как пингбэки, то нет необходимости отображать эти ссылки в хедере.

Если вы хотите скрыть факт использования Вордпресс, добавьте эту строку в functions.php:

Добавьте правила в wp-config.php

Файл wp-config.phpпо умолчанию находится в корневой папке сайта и является главным конфигурационным файлом Вордпресс.

В файле хранится информация о подключении к базе данных, секретные ключи для шифрования информации, префикс базы данных, включение режима debug и путь к папке Вордпресс.

Права доступа к файлам и папкам

У всех папок и файлов сайта должны быть правильные разрешения. Добавьте этот код в wp-config. Это правило дает всем файлам и папкам сайта максимальные права 644 и 755:

Файл wp-config находится в корневой папке сайта, дайте ему права доступа 400. Если сайт стал недоступен, дайте 440.

Для большей безопасности можно перенести файл на один уровень вверх. Этот уровень недоступен из интернета.

Для некоторых файлов и папок можно установить более сильные ограничения:

  1. Корневая папка сайта — /сайт.ru/public_html/ — 750
  2. .htaccess — /сайт.ru/public_html/.htaccess — 640
  3. wp-admin/ — /сайт.ru/public_html/wp-admin — 750
  4. wp-admin/js/ — /сайт.ru/public_html/wp-admin/js/ — 750
  5. wp-admin/index.php — /сайт.ru/public_html/wp-admin/index.php — 640
  6. wp-content/ — /сайт.ru/public_html/wp-content — 750
  7. wp-content/themes/ — /сайт.ru/public_html/wp-content/themes — 750
  8. wp-content/plugins/ — /сайт.ru/public_html/wp-content/plugins — 750
  9. wp-includes/ — /сайт.ru/public_html/wp-includes — 750

Измените префикс базы данных

Таблицы базы данных имеют по умолчанию префикс wp_. Большинство атак на базу данных проводится с помощью ботов, которые используют стандартный префикс в своих запросах к базе данных.

Изменение префикса базы данных поможет отразить автоматические атаки, но не поможет в случае ручной атаки. Хотя может показаться, что изменение префикса не имеет смысла, смысл все таки есть.

Чтобы изменить префикс нужно сделать изменения в файле wp-config.php и базе данных.

Добавьте правила в .htaccess

Файл .htaccess (Hypertext Access, Доступ к гипертексту) — это конфигурационный файл сервера, который находится в корневой папке сайта.

Сервер читает записи в этом файле перед тем, как пропустить трафик к сайту. Основное применение файла .htaccess — что-то куда-то перенаправлять, например, с http-версиии на https, или что-то запрещать.

Перенесите страницу авторизации на другой адрес

По умолчанию страница авторизации находится по адресу .../wp-login.php, но для уменьшения количества атак с перебором паролей вы можете перенести ее в другое место, например .../entrypage.html, .../ep или .../e72jkr4.

То есть хакеру нужно будет сначала найти страницу, на которой он может пробовать подобрать пароль, а потом попробовать подобрать его.

Хотя хакер может обойти необходимость посещения страницы авторизации, изменение адреса страницы входа уменьшит количество брут-форс атак.

Запретите нумерацию пользователей

Если злоумышленник введёт в строку адреса ваш-сайт.ru/?author=1, он будет перенаправлен на страницу пользователя с ID = 1.

В этом случае хакер будет знать имя пользователя, и ему останется только узнать пароль.

Даже если пользователи используют сложные пароли, злоумышленнику лучше не знать ID пользователей. Добавьте этот код в .htaccess:

или:

Или добавьте этот код в functions.php:

Отключите XML-RPC

XML-RPC — это API интерфейс, который используется для доступа к сайту через мобильные приложения, для трекбэков и пингбэков и используется плагином Jetpack.

Если вы пользуетесь чем-то из этого, то оставьте эту функцию включенной или частично включенной. Если не пользуетесь, то лучше отключить, потому что хакеры могут использовать этот интерфейс для атак с перебором логинов и паролей.

Чтобы полностью отключить XML-RPC, добавьте это правило в .htaccess:

Эти функции можно включить вручную или с помощью бесплатных плагинов. Я использую платную версию плагина Clearfy, в котором можно включить эти функции в несколько кликов:

Настройки защиты сайта плагина Clearfy Pro

В данный момент плагин версии 3.3.1 имеет 56 функций. Подробное описание на странице плагина.

Добавьте защиту от непреднамеренных загрузок вредоносного кода

Чтобы обезопасить посетителей сайта от загрузки вредоносного кода, добавленного хакерами, добавьте этот код:

Поддерживается в IE и в Хроме.

Добавьте защиту от некоторых типов XSS атак

Чтобы усилить защиту сайта от некоторых типов XSS атак, добавьте этот код:

Поддерживается в IE и в Хроме.

Добавьте защиту от кликджекинга

Этот тип атаки позволяет подменить клик на вашем сайте кликом на другом сайте, то есть «украсть клик». Добавьте этот код в .htaccess:

Файрвол

В этом разделе собраны правила, которые защитят ваш сайт от 99,9% атак, вредоносных запросов, SQL-внедрений и всех других типов угроз.

Простой в установке, но очень мощный и эффективный файрвол, потребляющий минимальное количество ресурсов сервера.

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

Этот контент доступен после оплаты.

Вы добавите несколько правил в functions.phpwp-config.php и .htaccess:

  • Базовый файрвол
  • Защитите сайт от внедрения вредоносных скриптов
  • Заблокируете вредоносные запросы
  • Добавите защиту от XSS-атак
  • Защиту от кликджекинга
  • Добавите мощный файрвол

Готовые настройки сохранены в файл.
Скопируйте и вставьте в свои файлы.

Чтобы картинки с вашего сайта, которые находятся на вашем сервере, не использовались на других сайтах, добавьте этот код:

Замените ваш-сайт в строке 6 на ваш домен.

Читайте также:

  1. Безопасность Вордпресс. Подробное описание
  2. Как усилить защиту Security Ninja Pro до лучших премиум-плагинов безопасности

Надеюсь, статья была полезна. Оставляйте комментарии.

Оставьте комментарий

Do NOT follow this link or you will be banned from the site!