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

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

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

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

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

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

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

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

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

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

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

Это довольно длинная статья с большим количеством ручных настроек. Если вы не хотите тратить время на применение всех настроек, приглашаю вас на курс Безопасность Вордпресс за 2 вечера, в котором вы примените все настройки автоматически.

Содержание:

  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, чтобы проверить, что все в порядке.

Последние входы: Все пользователи — Админы — Пользователи — Неудачные попытки

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:

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

  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-config находится в корневой папке сайта, дайте ему права доступа 400. Если сайт стал недоступен, дайте 440.

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

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

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

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

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

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

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

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

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

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

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

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

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

Если злоумышленник введёт в строку адреса ваш-сайт.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 функций. Подробное описание на странице плагина.

Файрвол

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

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

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


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

Подробное описание Sucuri Security
Защита WordPress на основе Sucuri Security
500 

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

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

И сделаете несколько других настроек.


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

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

Все эти настройки и несколько других вы можете применить автоматически в Безопасности Вордпресс за 2 вечера.

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

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

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

комментариев 12

  1. Кстати по CDN, недавно площадка Cludflare стала головной болью для меня в течении двух дней. Три моих сайта были подключены, вдруг появилась проблема с подключением, появлялось предупреждение ошибки 503. Плагин Wordfence предупреждал об этом,и отказывался сканировать. После всех проверок, написал в тех. поддержку, они сутки сканировали логи, после написали что ни каких проблем не находят. Подключил скрипт от Antivirusdie, он так же выявлял эту ошибку-503. Потом мелькнула мысль, вернуть DNS обратно, и после этого всё встало на свои места.

  2. Здравствуйте, плагин Sucuri Security не обновляется уже 9 месяцев. Информация в статье всё ещё рабочая и актуальная?

  3. Спасибо!
    Теперь мои нервы более менее спокойны. Перерыл кучу плагинов, Sucuri Security показался самым интересным. Особенно функции мониторинга.
    Не подскажешь, как избавится от бота одного, один конкретный бот, судя по айпи из Нижнего Новгорода постоянно перебирает пароль, уже что только от него не ставил, вроде и айпи и имя его внес в блек лист, но в логах он постоянно фигачит безостановочно.
    Применил все рекомендованные настройки (кроме тех, которые могут нарушить работу плагинов)… Сейчас еще наблюдаю за логами…

    • Привет, Максим,
      Спасибо за покупку!

      Боты приходят на сайт и делают какие-то запросы, защиту от которых ты настроил.
      Но от самих ботов в этой статье прямой защиты нет.

      Могу предложить тебе скидку 50% на Безопасность Вордпресс за 2 вечера, в Базовой защите настраивается защита от ботов.
      Думаю, должно помочь. Если нет, придумаем какой-нибудь способ, как изолировать твоего бота.

      • Дмитрий можешь ответить, по каким причинам логи от этого единственного бота не прекращаются, даже после запрещения диапазона IP этого бота. И странно, что он один только и ломится, остальные все нейтрализовались (было очень много разных).

        Order Deny,Allow
        Deny from 5.0.0.0/8

        Т.е. уже и в ручную его блокирую, но он не угомоный. И блокировал его в разных файрволах, и по ip и по имени. Но логи о его атаках по подбору пароля так и не прекращаются. Наверняка какую-то мелочь где-то не учел, но предпринятые меры по Вашей инструкции явно должны были помочь… Куда копать?

        • Попробуй такое правило:
          Order Allow,Deny
          Allow from all
          Deny from 5.188
          или
          Order Allow,Deny
          Allow from all
          Deny from 5.188.84

          Еще одна вещь — если бот приходит на страницу авторизации, попробуй перенести страницу авторизации.
          Если форма авторизации где-то во фронт-энде видимая для посетителей, то оставь как есть.
          Если форма авторизации на …/wp-login.php, и после переноса страниц бот все равно приходит, то попробуй использовать другой инструмент для переноса страницы.

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

          • Ситуация странная, пользователя вообще с таким именем (с каким он ко мне ломится) вообще нет, я его удалил из пользователей. Но раньше от него на форуме bbpress плодились разные темы безостановочно.

            В общем, получается он безобиден. Но сам факт постоянного его «постукивания» при чем с разной периодичностью, то раз в 15 мин, то раз в час, напрягает. Напрягает из-за того что везде всё ему перекрыл и все описанные действия проделал ( по смене страницы регистрации) и гугл капчу навесил последней версии. В общем уже понимаю что все под контролем и перестраховоно. Но логи он портит, в конце концов )))

            • Понимаю)
              Попробуй блокировать всех, кто пытается залогиниться с определенным именем пользователя.
              Добавь туда же admin, administrator, root, имя домена и другие подобные.

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

  4. В случае отключения плагинов безопасности сделанные им перенастройки вернутся в исходное значение? Например префиксы файлов баз данных, ну и другие настройки.

    • Зависит от плагина, по-моему, Sucuri Security не отключает настройки. После его включения настройки остаются такими же, какие были до отключения.

      После отключения плагина префикс базы данных можно посмотреть в Здоровье сайта — Информация.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Techbear

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

WordPress   WooCommerce   Membership   Elementor   ACF

Обновления блога

Subsription - Gray Footer
Techbear