Security Blog
Security Blog
Posted By Gregory

Усиление защиты WordPress с помощью WP Cerber и NGINX

Совместная работа этих двоих может значительно улучшить защиту любого объекта.


English version: Hardening WordPress with WP Cerber and NGINX


NGINX — это бесплатный, высокопроизводительный HTTP-сервер с открытым исходным кодом. WP Cerber — это бесплатный, открытый исходный код, плагин безопасности, который защищает сайты на базе WordPress от злоумышленников и хакеров.

Как усилить защиту WordPress с помощью WP Cerber и NGINX вместе

Прежде всего, вам нужно настроить пользовательский URL-адрес входа и проверить Блокировать прямой доступ к wp-login.php и возвращать ошибку HTTP 404 Not Found . Подробности здесь: Как переименовать wp-login.php . В целях безопасности не настраивайте свой пользовательский URL-адрес входа как «login» или «wp-admin».

Затем необходимо заблокировать доступ к файлу wp-login.php в конфигурационном файле NGINX. По умолчанию этот файл размещается в каталоге /etc/nginx, /usr/local/nginx/conf или /usr/local/etc/nginx.

Добавьте эту строку в раздел сервера файла конфигурации NGINX для вашего сайта:

 местоположение /wp-login.php { return 404; }

Если вы не используете XML RPC на своем сайте, я настоятельно рекомендую добавить также эту строку:

 местоположение /xmlrpc.php { return 404; }

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

Откройте основной файл конфигурации nginx.conf и найдите раздел http . Добавьте в него следующую строку:

 limit_req_zone $binary_remote_addr зона=main:10m скорость=60r/m;

Затем вернитесь в раздел сервера вашего сайта и найдите строку

 расположение / {

добавьте эту строку после открытия фигурных скобок:

 limit_req зона = основной всплеск = 10 node delay;

Изменения, которые мы внесли в файл конфигурации, не будут применены до тех пор, пока команда перезагрузки конфигурации не будет отправлена в nginx или он не будет перезапущен. Чтобы загрузить новую конфигурацию, выполните в командной строке вашего сервера:

 сервис nginx перезагрузка

Сделанный!

Теперь вы и ваш бэкенд-сервер (возможно, на базе Apache) можете расслабиться. Эти несколько простых шагов позволят вам очистить входящий трафик от «плохих запросов» и позволить ресурсу сервера обслуживать «правильные запросы».


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.