К основному содержимому

Безопасность WordPress: чеклист для владельца сайта

WordPress · 20.03.2026 · 4 мин чтения
Иллюстрация к статье «Безопасность WordPress: полный чеклист 2026»

WordPress — самая популярная CMS и самая атакуемая. 40% взломов происходят через устаревшие плагины. Этот чеклист закрывает 95% угроз.

1. Обновления — первый приоритет

  • WordPress core — обновляйте немедленно
  • Плагины и темы — еженедельно
  • Удалите неиспользуемые плагины и темы
  • Включите автообновления безопасности: Dashboard → Updates → Enable auto-updates

2. Защита wp-admin

# В .htaccess ограничить доступ к wp-admin по IP:
<Directory /var/www/site/wp-admin>
  Order deny,allow
  Deny from all
  Allow from ВАШ_IP
</Directory>
  • Смените URL входа: плагин WPS Hide Login
  • Включите двухфакторку: плагин WP 2FA
  • Ограничьте попытки входа: Limit Login Attempts Reloaded

3. wp-config.php — усиление

// Уникальные секретные ключи (генерация: https://api.wordpress.org/secret-key/1.1/salt/)
define('AUTH_KEY', 'уникальная_строка');
// Запретить редактирование файлов из админки:
define('DISALLOW_FILE_EDIT', true);
// Ограничить ревизии:
define('WP_POST_REVISIONS', 5);
// Запретить внешние HTTP-запросы (если не нужны):
// define('WP_HTTP_BLOCK_EXTERNAL', true);

4. Плагин безопасности

Установите один из:

  • Wordfence — файрволл + сканер малвари + блокировка IP
  • Sucuri Security — мониторинг целостности файлов
  • iThemes Security — комплексная защита

5. Права на файлы

find /var/www/wordpress -type f -exec chmod 644 {} \;
find /var/www/wordpress -type d -exec chmod 755 {} \;
chmod 600 wp-config.php
✅ Регулярно делайте резервные копии: плагин UpdraftPlus сохраняет бэкапы в Google Drive, Dropbox или S3 — автоматически.

Типичные ошибки и что они означают

СообщениеПричинаЧто делать
Too many login attempts, please try again laterПлагин ограничения попыток входа заблокировал ваш IP после нескольких неверных паролейПодождите таймаут (обычно 15–60 минут) или снимите блокировку в настройках плагина
This site may be hacked (в Google Search Console)Google нашёл на сайте вредоносный редирект, спам-контент или внедрённый скриптПросканируйте файлы, удалите чужой код, запросите повторную проверку в Search Console
There has been a critical error on this websiteКонфликт плагина безопасности с темой или другим плагином, чаще после обновленияВключите WP_DEBUG, найдите виновника в debug.log, отключите его через FTP или SSH
Invalid command 'RewriteEngine', perhaps misspelledПравило из плагина безопасности попало в .htaccess, но модуль mod_rewrite в Apache выключенВключите модуль: a2enmod rewrite && systemctl restart apache2
403 Forbidden при попытке войти по старому адресу /wp-admin/Это ожидаемое поведение плагина смены URL входа, а не ошибкаИспользуйте новый адрес входа, указанный в настройках WPS Hide Login

Сравнение плагинов безопасности

ПлагинФайрволлСканер малвариЦена Pro-версии
WordfenceДа, на уровне PHP до загрузки WordPressДа, база сигнатур обновляется ежедневно$119/год за сайт
Sucuri SecurityОблачный WAF, отдельная платная услугаДа, плюс мониторинг целостности файлов$199/год за сайт
iThemes SecurityБазовые правила уровня плагинаОграниченный, без базы сигнатур$99/год за один сайт

Когда чеклиста недостаточно

Чеклист закрывает типовые угрозы, но есть ситуации, где нужны дополнительные меры:

  • Уязвимость в собственном коде темы или плагина, написанного на заказ — нужен аудит исходного кода, а не готовый плагин безопасности
  • Заражение через соседний сайт на том же shared-хостинге (cross-site contamination) — помогает только изоляция аккаунта или переход на VDS
  • «Nulled»-версии платных плагинов и тем с бесплатных форумов — в них часто уже встроен бэкдор ещё до установки
  • Компрометация учётной записи хостинга, FTP или панели регистратора домена — WordPress тут ни при чём, а сайт всё равно окажется взломан

Если сайт уже скомпрометирован, этот чеклист не поможет его вылечить — сначала нужна диагностика и очистка, как описано в статье «Взломан сайт: диагностика, очистка и восстановление». Общий чеклист безопасности сервера, на котором стоит WordPress, — в статье «Безопасность WordPress: полный чеклист защиты сайта».

Проверка результата

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

# Отключено ли редактирование файлов из админки
wp eval 'var_dump(defined("DISALLOW_FILE_EDIT") && DISALLOW_FILE_EDIT);'

# Права на wp-config.php должны быть 600 или 640, не 644
stat -c "%a %n" wp-config.php

# Старый адрес входа должен отдавать 404, а не форму логина
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/wp-admin/

# Активные плагины безопасности через WP-CLI
wp plugin list --status=active | grep -i "wordfence\|sucuri\|ithemes"

Дополнительно поставьте fail2ban перед сервером — он банит IP по логам Nginx/Apache ещё до того, как запрос дойдёт до WordPress.

Статья помогла?
← Назад в базу знаний Задать вопрос поддержке