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 {возврат 404; }

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

 местоположение /xmlrpc.php {возврат 404; }

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

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

 limit_req_zone $binary_remote_addr зона=основной:10м ставка=60р/м;

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

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

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

 limit_req зона = основной пакет = 10 узлов;

Изменения, которые мы внесли в файл конфигурации, не будут применены до тех пор, пока команда перезагрузки конфигурации не будет отправлена в 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.