Что умеет
NinjaFirewall устанавливается как обычный плагин, но по сути это самостоятельный брандмауэр, который перехватывает HTTP-запрос раньше, чем сработает WordPress. Поэтому он видит и отсекает вредоносные запросы к ядру, плагинам и даже к скриптам вне WordPress в той же папке.
Основные функции:
- Фильтрация запросов. Нормализует данные запроса, чтобы распознавать приёмы обхода защиты и разные кодировки.
- Защита входа. Отражает массовый перебор паролей для wp-login.php, при желании и для xmlrpc.php.
- File Guard. В реальном времени замечает обращение к недавно созданному или изменённому PHP-файлу и присылает уведомление: адрес, IP, время.
- File Check. Раз в час, два раза в день или раз в сутки сверяет содержимое, права, владельца и время изменения файлов.
- Live Log. Просмотр трафика почти как команда tail -f, не нагружая сервер.
- Уведомления о событиях: вход администратора, правка учётных записей, установка и удаление плагинов и тем, обновления.
- Автоматическое обновление правил безопасности по расписанию.
Установка и настройка
Загрузите плагин, активируйте и перейдите в меню NinjaFirewall. Мастер установки определит сервер и предложит, как подключить брандмауэр. Права root не нужны, подходит и обычный виртуальный хостинг. Если сайт стоит за Cloudflare или другим CDN, настройте файл конфигурации, чтобы брандмауэр видел настоящий IP посетителя, иначе в журналах будут адреса CDN.
Сразу включите уведомления на почту и проверьте, что письма доходят.
Подводные камни
Ложные срабатывания. Строгие правила иногда блокируют формы, редакторы страниц, платёжные уведомления. После включения проверьте оформление заказа, формы и работу страничных конструкторов, а в журнале найдите заблокированные запросы.
Другие защитные плагины. Не держите несколько брандмауэров с похожими функциями одновременно, они начнут мешать друг другу. Проверьте на копии сайта, как они уживаются.
Требования к серверу. Нужна работа на Unix-подобной системе и расширение MySQLi; убедитесь в этом у хостера.
Доверие к собственному коду. Брандмауэр позволяет подставлять свой PHP-код, но ошибка в нём срабатывает до загрузки WordPress и может сделать сайт недоступным. Меняйте такие файлы с доступом по FTP, чтобы можно было быстро откатить.
Кому подойдёт
Владельцам сайтов, которым нужен серьёзный контроль входящих запросов на своём сервере, и тем, кто сам разбирается в журналах. Если предпочитаете готовый набор с облачными правилами, посмотрите Wordfence или All-In-One Security. Для защиты формы входа достаточно Limit Login Attempts.