Настройка безопасности WordPress. Плагин All In One WP Security & Firewall


Main

Всем привет! Сегодня поговорим про безопасность WordPress. Недавно я опубликовал статью, в которой рассказал про теоретические основы и принципы построения безопасности сайта на WordPress. Сегодня от слов к действию. Резервное копирование мы научились делать в этой статье. А в данной статье я расскажу про плагин All In One WP Security & Firewall. Этот плагин обеспечивает большинство пунктов безопасности сайта. Что сводит практически всю настройку безопасности блога к настройке одного плагина. А еще он практически весь русифицирован, что немаловажно для многих пользователей.

Содержание:

  1. Установка плагина
  2. Панель управления
  3. Настройки
  4. Администраторы
  5. Авторизация
  6. Регистрация пользователей
  7. Защита Базы данных
  8. Защита Файловой системы
  9. WHOIS-поиск
  10. Черный список
  11. Файрволл
  12. Защита от брутфорс-атак
  13. Защита от SPAM
  14. Сканнер
  15. Режим обслуживания
  16. Разное

1. Установка плагина

Первое что нужно сделать – создать полную резервную копию сайта. Данный плагин достаточно большой и серьезный. Установите плагин обычным способом. Зайдите в админ-панель блога, перейдите в плагины, кликните по кнопке «Добавить новый». В строке поиска введите «WP Security». Установите нужный плагин. Затем активируйте его (Рис 1).

Установка плагина All In One WP Security & Firewall.. Блог Андрея Дубина
Рис. 1. Установка плагина All In One WP Security & Firewall.

2. Панель управления

После установки плагин появляется в меню админки под названием «WP Security». Первое подменю — «Панель управления». Здесь собрана сводная информация по безопасности сайта (Рис 2).

Панель управления плагина All In One WP Security & Firewall. Блог Андрея Дубина
Рис. 2. Панель управления плагина All In One WP Security & Firewall.

Давайте разберемся более детально. На данной странице есть несколько закладок.
Панель управления. Первая закладка, одноименная с подменю. Здесь приводится сводная статистика. Уровень безопасности сайта измеряется в баллах («Измеритель уровня безопасности»). За каждый правильно настроенный сегмент присваиваются баллы. Суммарно можно набрать 480 баллов. Это значит, что Вы сделали всё, что только можно. Это не всегда требуется. Например, в этом плагине есть возможность настроить резервное копирование базы данных. Если Вы настроили специальный плагин для резервного копирования, то здесь Вам дополнительно этого делать не нужно. Мой блог из примера с хорошим пользователем (логин не admin, отображаемое имя отличное от ника), и при установке движка я изменил префикс таблиц. Вот за это сразу имею 30 баллов из 480.
Следующий инструмент «Диаграмма безопасности Вашего сайта». Все набранные баллы представлены в виде диаграммы. Можно видеть какой процент от общего количества баллов составляет та или иная настройка.
Следующие два блока бесполезны: «Расскажите друзьям» и «Get to known the developers», что переводится как – получите больше информации о разработчиках.
«Последние 5 авторизаций». В этом окошке будет список пяти последних входов на блог с информацией о том, кто входил и когда.
«Активных сессий». Это окошко отображает, кто сейчас находится на сайте (в админке) с правами больше, чем обычный посетитель.
«Текущий статус самых важных функций». Окошко отображает функции, которые должны быть включены.
«Режим обслуживания». В данном окне есть выключатель, чтобы выключить сайт. Посетители будут видеть информационный текст вместо сайта. Эта функция нужна, если Вы проводите какие-нибудь технические работы на сайте.
«Заблокированные IP-адреса». Когда Вы настроите блокировку IP адресов, здесь будут отображаться заблокированные IP.
Информация о системе. Здесь представлена информация о сайте, о системе, на которой работает движок, а так же список активных плагинов.
Заблокированные IP-адреса. Детально расписаны заблокированные IP-адреса и информация о них.
Permanent Block List. Список временно заблокированных IP-адресов. Например, можно заблокировать IP на час за 3 неудачные попытки ввода пароля входа в админку, чтобы избежать подбора пароля.

3. Настройки

Настройки плагина All In One WP Security & Firewall. Блог Андрея Дубина
Рис. 3. Настройки плагина All In One WP Security & Firewall.

В этом подменю несколько закладок.
Общие настройки. В самом начале нам предложены несколько ссылочек, которые создают резервные копии базы данных и некоторых файлов. А дальше 2 кнопки отключения функций безопасности и фаервола. Этими кнопками удаляются все настройки плагина, сделанные на блоге, для повышения безопасности. По сути — это откат в исходное состояние, до настроек плагина на сайте.
.htaccess Файл. В этой закладке всё просто. Создание резервной копии файла .htaccess и восстановление.
wp-config.php Файл. Так же, как и в предыдущем пункте. Создание резервной копии файла и восстановление из нее.
WP Version Info. С этого момента начинается настоящая настройка безопасности блога. Если помните, в статье про безопасность WordPress я рассказывал, что движок выводит информацию о версии в мета-тег блога. Если поставите галочку «Удаление мета-данных WP Generator», то информация о версии движка не будет выводиться на страницах блога. И получите +5 баллов к безопасности.
Импорт/Экспорт. Настройки плагина можно сохранить отдельно и восстановить в случае необходимости или для переноса на другой блог.

4. Администраторы

Пользовательское имя WP. В статье про установку WordPress я рекомендовал не использовать стандартные логины. Плагин рекомендует то же. Если у Вас логин admin, создайте нового администратора, а admin удалите.
Отображаемое имя. В настройках учетной записи нужно настроить так, чтобы отображаемое имя не совпадало с логином.
Пароль. Интересный калькулятор. Можете ввести свой пароль и узнаете, сколько времени потребуется домашнему компьютеру для его подбора. Но учтите, что обычно используются серверы, а иногда группа серверов (кластеры), что значительно ускоряет процесс подбора пароля.

5. Авторизация

Блокировка авторизаций. А вот моя самая любимая закладка. Поставьте галочку «Включить опции блокировки попыток авторизации», чтобы блокировать неудачные попытки входа – подбор паролей. Все настройки интуитивно понятные. Настраивается, сколько неверных попыток за промежуток времени считается попыткой взлома. И санкции на это. Можете сразу заблокировать пользователя с неверным логином (я так и делаю). Обычно начинается именно с подбора логина. И укажите свою почту. При неудачных попытках входа будет приходить письмо. Также настраиваются белые списки для логина и IP, если Вы заходите с постоянного IP, можете настроить.

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

Ошибочные попытки авторизации. Закладка, на которой представлена информация об ошибочных авторизациях. Лог ошибок входа.
Автоматическое разлогинивание пользователей. Здесь можно настроить время, через которое будет разлогинивание. Немного неудобно, но зато если из Вашего браузера своруют куки (достаточно распространенный тип взлома), то с авторазлогиниванием куками не смогут воспользоваться, так как они будут устаревшими, а сессии входа по ним закрыты. Кто не понял, ничего страшного, просто поверьте, что так безопаснее.
Журнал активности аккаунта. Очень полезная закладка. Заглядывайте сюда время от времени. Кто, когда, откуда залогинивался на блог.
Активных сессий. А эта закладка отображает, авторизованных пользователей, которые сейчас на сайте.

6. Регистрация пользователей

Подтверждение вручную. Если на сайте есть возможность зарегистрироваться (Вы, кстати, можете об этом не знать), можно сделать ручное одобрение регистраций.
CAPTCHA при регистрации. Поставьте галочку для использования каптчи при регистрации.
Registration Honeypot. Некая закладка на странице регистрации, на которую отреагирует только бот. Человек оставит без внимания.

7. Защита Базы данных

Префикс таблиц БД. Если во время установки WordPress Вы не изменили префикс таблиц, то плагин поможет Вам это сделать. Только сделайте резервную копию перед преобразованием.
Резервное копирование БД. Плагин предлагает создавать резервные копии базы данных по расписанию. Считаю большим недостатком плагина то, что он может бэкапить только базу. Поэтому предпочитаю другими средствами создавать полные резервные копии. Но данный плагин исправно делает бэкапы базы данных и шлет их на почту.

8. Защита Файловой системы

Доступ к файлам. На данной закладке нужно настроить права доступа к файлам, чтобы из под скриптов нельзя было изменить важные файлы.
Редактирование файлов PHP. На Ваше усмотрение. Лично я отключаю возможность редактирования PHP из админ-панели. Предпочитаю редактировать через FTP.
Доступ к файлам WP. В данной закладке запрещается доступ к файлам readme.html, license.txt и wp-config-sample.php. Файлы readme.html, license.txt лучше вообще удалить.
Системные журналы. На этой закладке можно не заходя на хостинг, а прямо из админ-панели просматривать системные журналы. Нужно только уточнить у хостера, где они лежат и как называются.

9. WHOIS-поиск

Смысл такой. У плагина есть база геолокации. При анализе угроз сайту, у нас есть информация с какого IP-адреса происходило действие (атака). На данной закладке можно посмотреть подробную информацию о IP.

10. Черный список

Забанить пользователей. Будьте осторожны с данной опцией. Очень много пользователей выходят в интернет под динамическими адресами. И то, что с какого-либо IP происходит атака, совершенно не означает, что через неделю этот IP не будет назначен другому пользователю, который не сможет попасть к Вам на сайт. У меня такое было. Я не мог зарегистрироваться на сайте, потому что мой IP был в черном списке. Пришлось через поддержку сайта решать. А мой IP выдается мне провайдером, и периодически изменяется.

11. Файрволл

Базовые правила файрволла. На данной странице активируются основные функции файерволла, а так же отключается удаленный вызов процедур XMLRPC. Это технология в основном нужна для взаимодействия мобильных приложений и блога. Если Вы ей не пользуетесь, смело отключайте.
Дополнительные правила файрволла. На этой закладке я не все включаю. Например, зачем запрещать комментарии через прокси. Вполне нормальная ситуация, что у посетителя интернет через прокси. Остальные же настройки нужны. Запрет ввода в строке адреса запрещенных символов — это нужная опция. Обычным пользователям не нужно вводить не стандартные запросы.
6G Blacklist Firewall Rules. Набор стандартных правил защиты блога. Я не хочу вдаваться в подробности, что это, зачем это. Если Вы не понимаете что это значит, просто активируйте стандартные правила файрволла.
Интернет-боты. Некоторые сканеры выдают себя за google ботов, которым разрешено сканирование сайта. Файрволл в большинстве случаев может это отследить.
Предотвратить хотлинки. Очень полезная опция. Иногда в статье делается ссылка на изображение, которое лежит на Вашем сайте. Пользователь кликает по картинке, а фактически трафик идет с Вашего блога, а не с того, где был клик по картинке. Нужно избавить себя от такой лишней нагрузки.
Детектирование 404. Когда начинается анализ сайта и подбор параметров, часто злоумышленник попадает на страницу 404. Это связано с тем, что подбираются некие параметры уязвимости в скриптах. И как правило, это целая последовательность попаданий на несуществующую страницу, можно даже сказать шквал. Такое поведение отслеживается и блокируется.
Custom Rules. Можно вручную прописать правило.

12. Защита от брутфорс-атак

Переименовать страницу логина. Некоторые хостинг-провайдеры сами переименовывают страницу входа в админ-панель. Это очень важный пункт. Рекомендую переименовать:

Адрес (URL) страницы логина: http://Ваш_сайт.ru/secretpage

Теперь, чтобы попасть в админку вместо:
http://Ваш_сайт.ru/wp-admin

Используйте
http://Ваш_сайт.ru/secretpage

Защита от брутфорс-атак с помощью куки. Плагин использует куки для отслеживания большого количества ошибочных авторизаций. Можно заблокировать такие попытки.
CAPTCHA на логин. Можно использовать каптчу на различных страницах. Я не пользуюсь данной опцией плагина, использую отдельный плагин каптчи. Мне не очень понравилась каптча плагина – слишком примитивная.
Белый список для логина. Если у Вас статический IP-адрес (имеется ввиду адрес компьютера, с которого Вы заходите в админку), то можете прописать свой IP в белый список и к нему не будут применяться никакие санкции плагина.
Бочка с медом (Honeypot). Некий скрытый объект (поле), на которое отреагирует только бот, от человека это поле скрыто.

13. Защита от SPAM

Спам в комментариях. Можно использовать каптчу в комментариях. А так же есть интересная и полезная функция блокирования спам-ботов. Спам-боты — это обычно скрипты, которые выполняются где-то не на Вашем сайте. А пользователь заполняет форму комментария на Вашем сайте. Это очень легко отследить и отсечь.
Отслеживание IP-адресов по спаму в комментариях. Плагин может самостоятельно принимать решение, что комментарий – спам и блокировать IP-адрес. Сложно сказать, на сколько это правильно. Если небольшое количество комментариев, то можно и вручную отсеять.
BuddyPress. Интеграция с плагином BuddyPress.

14. Сканнер

Отслеживание изменений в файлах. Классная функция. Мне она очень нравится. Любое изменение любого файла при сканировании будет обнаружено и отправлено на почту в виде отчета. Просмотрев изменения можно понять, что произошло.

15. Режим обслуживания

Блокирование доступа посетителей к сайту. Можно прекратить доступ к сайту, и вывести какой-нибудь текст. Например, при технических работах.

16. Разное

Защита от копирования. Интересная функция. Если хотите, можете заблокировать правую кнопку мыши на сайте.
Фреймы. При попытке отобразить сайт, как часть другого сайта в фрейме – плагин заблокирует такое действие. Обратите внимание, что данная настройка влияет на работу вебвизора Яндекс.Метрики.
Users Enumeration. Можно узнать пользователя через запрос вида:
http://Ваш_домен.ru?author=1
Данная опция ограничивает такие запросы.

Немного юмора
Жена звонит мужу на работу, чтобы поболтать.
Муж: — Извини, дорогая, но у меня сегодня дел по горло.
Жена: — Но, милый, у меня есть для тебя новости: хорошая и плохая.
Муж: — Ладно, у меня нет времени сейчас, скажи мне только хорошую новость.
Жена: — Нуу… в общем… подушка безопасности работает.

Удачного освоения материала.

Автор: Андрей Дубин.

6 thoughts on “Настройка безопасности WordPress. Плагин All In One WP Security & Firewall

  1. Как всегда, исчерпывающая и грамотная информация, очень нужная.

    Хочу сказать, как самим блогерам мешает такая функция, как блокирование, например, ввода текста… эээ, чтобы понятнее: у меня немецкая клава, я пишу в транслите, мне надо вводить скопированный текст, иногда блокируется эта функция — тогда я не могу оставить коммент, который нужен скорее блогеру, чем мне… я просто ухожу!
    Или вот, если блокировать возможность копировать текст, то тут даже не надо заморачиваться — все можно скопировать! ну если знать как

    • Абсолютно с Вами согласен. Всё должно быть в меру. А блокирование правой кнопки — это глупость. Я Вам даже скажу как обойти такое поведение и скопировать текст. Сохраните страницу к себе на компьютер (Ctrl+S в любом браузере) и откройте её с помощью Word. Само копирование, ради которого всё затевалось, обходится легко, а вот неудобств много. Мне больше нравятся плагины, которые к скопированному тексту добавляют ссылку на сайт.

  2. Добрый день, Андрей!
    Я в восторге от вашего сайта, главным образом потому, что чувствую в вас профессионала. Сама-то я ни-че-го в этом всём сайтостроении и сайтоведении не понимаю, поэтому у меня появилось к вам деловое предложение. Сейчас изложу его в личной почте.

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

  4. Хороший плагин, на своем блоге я пользуюсь другим, но это не чем не хуже, возможно надо задуматься над тем, не поменять ли его на этот.

Добавить комментарий

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

*