Что нужно сделать для безопасности WordPress новичку? Достаточно 10 базовых настроек: надёжный пароль и двухфакторная аутентификация, регулярные обновления, ограничение попыток входа, скрытие панели входа, отключение XML-RPC и редактирования файлов, плагин безопасности, резервные копии, SSL-сертификат и регулярный аудит. Большинство пунктов занимают 5–10 минут и не требуют знаний программирования — для остальных я дам готовые PHP и JS сниппеты. В этом гайде — пошаговая инструкция для новичков с примерами кода.
Почему WordPress взламывают: 5 главных причин
Прежде чем настраивать защиту, полезно понять, как вообще ломают сайты на WordPress. В 9 случаях из 10 взлом происходит не потому, что «хакеры нацелились именно на вас» — а потому что сайт стал лёгкой добычей для автоматических ботов, которые сканируют интернет круглосуточно.
Вот пять самых частых причин взлома:
- Слабые пароли. Пароли вида
admin123,qwertyили название сайта подбираются за секунды. По статистике большинство взломов начинается именно с подбора пароля к админке. - Устаревшие плагины и темы. Разработчики регулярно закрывают уязвимости в коде. Если вы не обновляете плагины месяцами, злоумышленники используют уже известные дыры.
- Брутфорс — перебор паролей. Боты пытаются войти в админку тысячи раз в час. Без ограничения попыток входа рано или поздно подберут слабый пароль.
- Открытые лишние функции. XML-RPC, редактирование файлов из админки, выполнение PHP в папке загрузок — всё это дополнительные векторы атаки, которые новички не отключают.
- Отсутствие бэкапов. Сайт без резервных копий — это не вопрос «взломают ли», а вопрос «что делать, когда взломают». С бэкапом вы восстанавливаетесь за час, без него — теряете сайт и базу.
Хорошая новость: все эти причины закрываются настройками из этой статьи. Ниже — 10 конкретных шагов для новичка, от простых к более сложным. Если вы только начинаете работать с WordPress, сначала изучите наш раздел «Разработка WordPress» — там собраны все материалы для новичков.
Настройка 1. Надёжные пароли, уникальный логин и 2FA
Начнём с самого простого и эффективного. Логин admin и пароль от него — это первое, что проверяют боты при атаке.
Что сделать:
- Смените логин администратора, если он
admin(создайте нового пользователя с ролью администратора, а старого удалите). - Установите длинный пароль: 12+ символов, с цифрами, буквами разного регистра и спецсимволами. Храните его в менеджере паролей.
- Включите двухфакторную аутентификацию (2FA) — даже если пароль украдут, без кода из приложения войти не смогут.
Для 2FA проще всего использовать плагины WP 2FA или Two-Factor от команды WordPress. Они бесплатны и настраиваются за пару минут: плагин покажет QR-код, который нужно отсканировать приложением-аутентификатором (Google Authenticator, 1Password, Authy).
А вот простой JS-сниппет, который показывает надёжность пароля прямо в браузере — можно добавить на страницу входа через свой плагин или в файл темы:
// Проверка надёжности пароля на странице входа
document.addEventListener( 'DOMContentLoaded', function () {
var input = document.getElementById( 'user_pass' );
if ( ! input ) return;
input.addEventListener( 'input', function () {
var value = input.value;
var score = 0;
if ( value.length >= 12 ) score++; // длина
if ( /[A-Z]/.test( value ) ) score++; // заглавные буквы
if ( /[0-9]/.test( value ) ) score++; // цифры
if ( /[^A-Za-z0-9]/.test( value ) ) score++; // спецсимволы
console.log( 'Надёжность пароля: ' + score + ' из 4' );
} );
} );
Подробнее о том, куда правильно добавлять такой код, читайте в гайде о полезных сниппетах для functions.php — там разобраны десятки готовых примеров.
Настройка 2. Регулярные обновления WordPress, тем и плагинов
Обновления — это не «улучшения для галочки», а в первую очередь закрытие уязвимостей. Когда в популярном плагине находят дыру, злоумышленники массово сканируют сайты, где она не закрыта.
В WordPress можно включить автоматические обновления — тогда ядро, темы и плагины обновляются сами. Для большинства сайтов это правильный выбор:
<?php
// Включить автоматические обновления плагинов и тем
add_filter( 'auto_update_plugin', '__return_true' );
add_filter( 'auto_update_theme', '__return_true' );
// Автообновления ядра: только минорные версии (безопасно)
add_filter( 'allow_minor_auto_core_updates', '__return_true' );
// Полные обновления ядра тоже можно включить, но лучше оставить вручную:
// add_filter( 'allow_major_auto_core_updates', '__return_true' );
Важно: автоматические обновления сработают корректно, только если у вас правильно настроена дочерняя тема WordPress — тогда ваши правки не сотрутся при обновлении темы, и ничто не сломается.
Если вы обновляетесь вручную — заведите привычку заходить в Консоль → Обновления хотя бы раз в неделю. И никогда не обновляйте всё сразу на боевом сайте без бэкапа (бэкапы — это настройка №8 в этом списке).
Настройка 3. Ограничение попыток входа против брутфорса
Брутфорс — это автоматический перебор паролей. Бот подключается к wp-login.php и перебирает комбинации: admin/123456, admin/password, admin/qwerty и так далее. Без ограничения попыток такой бот может «стучаться» в админку бесконечно.
Самый простой способ — плагин Limit Login Attempts Reloaded: он блокирует IP после N неудачных попыток и показывает это в админке. Но если хотите без плагинов, вот PHP-сниппет с той же логикой — блокировка на 15 минут после 5 неудачных попыток:
<?php
// Ограничение попыток входа: 5 неудач = блокировка на 15 минут
function ds_limit_login_attempts() {
$ip = $_SERVER['REMOTE_ADDR'];
$key = 'ds_login_attempts_' . md5( $ip );
$attempts = (int) get_transient( $key );
if ( $attempts >= 5 ) {
wp_die(
'Слишком много попыток входа. Подождите 15 минут.',
'Доступ временно ограничен',
array( 'response' => 403 )
);
}
set_transient( $key, $attempts + 1, 15 * MINUTE_IN_SECONDS );
}
add_action( 'login_enqueue_scripts', 'ds_limit_login_attempts' );
Этот сниппет хранит счётчик попыток для каждого IP в течение 15 минут. Когда лимит исчерпан — вход блокируется. Код простой и понятный, его легко адаптировать: изменить лимит, время блокировки или добавить уведомление администратору.
Настройка 4. Скрыть wp-login.php и добавить капчу
Чем меньше информации о вашей админке видно снаружи, тем сложнее атаковать сайт. Есть два простых приёма:
1. Скрыть страницу входа. Плагин WPS Hide Login позволяет заменить /wp-login.php на любой адрес, например /vhod. После этого по стандартному адресу входа будет выдаваться 404 — а боты, которые сканируют именно wp-login.php, ничего не найдут.
2. Добавить капчу на форму входа. Плагины Advanced noCaptcha reCaptcha или WP Captcha добавляют проверку «я не робот» от Google. Это отсекает большинство автоматических атак.
Оба плагина настраиваются в пару кликов без кода. Единственный нюанс с WPS Hide Login: запомните новый адрес входа и держите его в менеджере паролей — без него вы сами не сможете зайти в админку.
Настройка 5. Отключить XML-RPC и скрыть версию WordPress
XML-RPC — протокол, который раньше использовался для подключения внешних приложений к сайту. Сейчас он почти не нужен, зато активно используется для атак: массового перебора паролей (amplification-атаки) и проверки уязвимостей.
Если вы не используете приложения, которые подключаются через XML-RPC (старые версии Jetpack, некоторые мобильные клиенты), его лучше отключить. Заодно скроем версию WordPress — она выводится в мета-теге и помогает злоумышленникам подбирать эксплойты:
<?php
// Скрыть версию WordPress из head-секции
remove_action( 'wp_head', 'wp_generator' );
// Отключить XML-RPC полностью
add_filter( 'xmlrpc_enabled', '__return_false' );
// Запретить перебор логинов через /?author=1
add_action( 'template_redirect', function () {
if ( is_author() ) {
wp_redirect( home_url(), 301 );
exit;
}
} );
Третий блок кода закрывает ещё один популярный трюк: через /?author=1 можно узнать логин администратора, а потом подбирать к нему пароль. После добавления сниппета такие запросы будут редиректить на главную.
Куда вставлять сниппеты — в functions.php дочерней темы или через плагин Code Snippets. Если вы ещё не разобрались с дочерними темами, прочитайте наш гайд о создании дочерней темы WordPress — правки в родительской теме сотрутся при первом же обновлении.
Настройка 6. Запретить редактирование файлов и выполнение PHP в uploads
WordPress по умолчанию позволяет редактировать файлы темы и плагинов прямо из админки (Редактор). Если злоумышленник получит доступ к админке, он сможет вставить в файлы вредоносный код. Для обычного сайта редактор почти никогда не нужен — отключаем его:
// Добавьте эти строки в wp-config.php (перед строкой "That's all, stop editing!")
define( 'DISALLOW_FILE_EDIT', true ); // запрет редактирования файлов из админки
define( 'FORCE_SSL_ADMIN', true ); // принудительный HTTPS для админки
Вторая строка — FORCE_SSL_ADMIN — заставляет админку работать только по HTTPS. Это защищает пароль от перехвата в общедоступных Wi-Fi сетях.
Второй приём: запретить выполнение PHP-файлов в папке загрузок /wp-content/uploads/. Это классическая лазейка: через уязвимость загрузки файлов злоумышленник сохраняет туда PHP-шелл, и получает контроль над сайтом. Создайте в папке uploads файл .htaccess с таким содержимым:
# Запрет выполнения PHP в папке загрузок
<FilesMatch "\.(?i:php)$">
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order allow,deny
Deny from all
</IfModule>
</FilesMatch>
После этого любые PHP-файлы в uploads будут блокироваться, а обычные картинки и документы продолжат работать как раньше.
Настройка 7. Плагин безопасности: Wordfence или Clearfy PRO
Один хороший плагин безопасности закрывает сразу несколько пунктов из нашего списка: файрвол, сканирование на вредоносный код, мониторинг изменений файлов и защиту от брутфорса.
Wordfence Security — самый популярный бесплатный вариант. Он включает файрвол и сканер, который проверяет файлы ядра, тем и плагинов на изменения. Единственный минус для новичка — интерфейс с множеством настроек, в которых легко запутаться.
Clearfy PRO — более простая альтернатива для тех, кто не хочет разбираться в десятках тумблеров. Он собирает в одном месте базовые настройки безопасности и оптимизации WordPress: скрывает версию, отключает XML-RPC, лишние скрипты, защищает от спама и ускоряет сайт. Подходит, если вам нужно «включить и забыть».
| Функция | Wordfence Security | Clearfy PRO | Limit Login Attempts |
|---|---|---|---|
| Файрвол | Да, с базами угроз | Базовый | Нет |
| Сканирование файлов на вирусы | Да | Нет | Нет |
| Защита от брутфорса | Да | Да | Да |
| Отключение XML-RPC и версии | Да | Да | Нет |
| Сложность настройки для новичка | Средняя | Низкая | Низкая |
| Цена | Бесплатно / PRO | Бесплатно / PRO | Бесплатно |
Мой совет новичку: начать с Clearfy PRO или связки Limit Login Attempts + Wordfence в бесплатной версии. Главное — не ставить три плагина безопасности одновременно: они начнут конфликтовать и замедлять сайт.
Настройка 8. Резервные копии: бэкап, который спасёт сайт
Безопасность — это не только «защититься от взлома», но и «суметь восстановиться». Если сайт всё-таки взломают или сломают, бэкап вернёт всё на место за час.
Правило трёх копий для сайта:
- Храните минимум 2 копии: одна на хостинге, одна в облаке (Google Drive, Dropbox).
- Делайте бэкапы автоматически: для активного сайта — ежедневно, для статичного — раз в неделю.
- Периодически проверяйте, что бэкап реально восстанавливается. Бэкап, который нельзя развернуть, — это пустая трата места.
Самый популярный бесплатный плагин — UpdraftPlus. Он умеет отправлять копии в облако по расписанию и восстанавливаться в один клик. Альтернативы: BackupBuddy, Duplicator, а также встроенные бэкапы многих хостингов — уточните у вашего хостерa, делаются ли они автоматически.
Если вы заказываете сайт на WordPress у подрядчика, обязательно уточните, входит ли настройка бэкапов в работу — это частая «зона забывания». Про то, что должно входить в проект, читайте в статье о заказе сайта на WordPress: плюсы, минусы и цена.
Настройка 9. SSL-сертификат и надёжный хостинг
SSL-сертификат шифрует трафик между посетителем и сайтом. Без него пароли, введённые на сайте, передаются открытым текстом, а браузеры помечают сайт как «небезопасный». Сейчас бесплатные SSL-сертификаты выдаёт почти любой хостинг (Let’s Encrypt) — включите его в панели управления, если ещё не сделали.
Надёжный хостинг — это тоже часть безопасности: файрвол на уровне сервера, антивирусное сканирование, автоматические обновления и поддержка, которая реагирует быстро. Экономия на хостинге часто оборачивается взломом или потерей сайта. Хороший вариант для WordPress — специализированные хостинги с предустановленными настройками безопасности и кэшированием.
О том, как выбрать подходящий вариант размещения, и что вообще влияет на скорость и безопасность — читайте в нашем блоге в разделе «Разработка WordPress».
Настройка 10. Аудит: лишние пользователи, плагины и темы
Последняя настройка — регулярная гигиена. Раз в месяц уделите 15 минут и проверьте:
- Пользователи (Пользователи → Все пользователи): нет ли лишних аккаунтов, особенно с ролью администратора. Каждый лишний админ — лишняя точка входа.
- Плагины: удаляйте неиспользуемые, а не просто деактивируйте. Неактивный плагин с уязвимостью — такая же дыра, как активный.
- Темы: оставьте одну активную и одну запасную, остальные удалите.
- Комментарии и формы: включите антиспам (Akismet или встроенные настройки Clearfy), если ещё не включили.
Если вы работаете с кастомными типами записей и выводите данные на сайте, помните: любой пользовательский код тоже нужно проверять на безопасность — экранировать вывод и проверять права. Примеры безопасной работы с данными есть в гайде о кастомных типах записей WordPress.
А вот итоговая таблица всех 10 настроек — сохраните её как чек-лист:
| # | Настройка | Что защищает | Сложность |
|---|---|---|---|
| 1 | Пароли, уникальный логин, 2FA | Доступ к админке | Низкая |
| 2 | Регулярные обновления | Известные уязвимости | Низкая |
| 3 | Ограничение попыток входа | Брутфорс | Низкая |
| 4 | Скрытие wp-login, капча | Автоматические атаки | Низкая |
| 5 | Отключение XML-RPC, скрытие версии | Amplification-атаки, подбор эксплойтов | Средняя |
| 6 | Запрет редактирования файлов, PHP в uploads | Внедрение вредоносного кода | Средняя |
| 7 | Плагин безопасности | Файрвол, вирусы, мониторинг | Низкая |
| 8 | Резервные копии | Восстановление после взлома | Низкая |
| 9 | SSL и надёжный хостинг | Перехват трафика, серверные атаки | Низкая |
| 10 | Аудит пользователей и плагинов | Лишние точки входа | Низкая |
Вывод
Безопасность WordPress для новичка — это не сложная наука, а 10 простых привычек. Большинство настроек занимают 5–10 минут: сменить пароль и включить 2FA, включить автообновления, поставить плагин от брутфорса, скрыть страницу входа, отключить XML-RPC и редактирование файлов, настроить бэкапы и SSL. Час работы — и ваш сайт перестаёт быть лёгкой добычей для ботов.
Помните главное: идеальной защиты не существует, но 90% атак отсекаются базовыми настройками. А если сайт всё-таки взломают, бэкап и быстрая реакция вернут его к жизни.
Если вам нужен сайт на WordPress, который уже настроен по всем правилам безопасности — с дочерней темой, бэкапами и защитой от брутфорса, — посмотрите, как мы разрабатываем сайты на WordPress и что входит в стоимость. А больше технических материалов для разработчиков — в разделе «Разработка WordPress» на delai-sait.ru. Если вы только выбираете плагины для старта, начните с обзора топ-10 плагинов WordPress для начинающих.
Как понять, что сайт на WordPress взломали?
Типичные признаки: в админке появились незнакомые пользователи с правами администратора, сайт редиректит на посторонние сайты, в выдаче Google сайт помечен как «взломан», появились странные ссылки в коде страниц, файлы в папке uploads изменились или добавились новые. Быстрее всего проверить сайт сканером Wordfence и посмотреть список пользователей в админке.
Что делать, если WordPress уже взломали?
Первым делом восстановите сайт из чистой резервной копии. Затем смените пароли всех пользователей, особенно администраторов, и пароль от базы данных. Обновите WordPress, все темы и плагины до актуальных версий, удалите подозрительные файлы и плагины, смените секретные ключи в wp-config.php и включите двухфакторную аутентификацию. После восстановления проверьте сайт сканером на вирусы.
Какой плагин безопасности WordPress лучший для новичка?
Для новичка проще всего начать с Clearfy PRO или связки Limit Login Attempts Reloaded (защита от брутфорса) + Wordfence Security в бесплатной версии (файрвол и сканер). Не ставьте несколько плагинов безопасности одновременно — они конфликтуют и замедляют сайт. Достаточно одного комплексного или двух узкоспециализированных.
Нужно ли покупать платный SSL-сертификат?
Нет. Бесплатных сертификатов Let’s Encrypt, которые выдают почти все хостинги, достаточно для шифрования трафика и метки «защищено» в браузере. Платные сертификаты нужны в редких случаях: несколько доменов в одном сертификате, расширенная проверка компании (EV) или особые требования банков и госзаказчиков.
Как часто нужно делать резервные копии WordPress?
Для активного сайта с регулярными публикациями — ежедневно, для статичного — раз в неделю. Используйте правило трёх копий: две копии минимум, одна из них в облаке. Регулярно проверяйте, что бэкап восстанавливается — плагин UpdraftPlus позволяет сделать это в один клик.
Зачем отключать XML-RPC в WordPress?
XML-RPC почти не используется современными сайтами, но активно эксплуатируется злоумышленниками: через него проводят усиленные брутфорс-атаки (один запрос проверяет сразу десятки паролей) и ищут уязвимости. Если вы не подключаете к сайту старые мобильные приложения через XML-RPC, отключите его одной строкой кода — add_filter(‘xmlrpc_enabled’, ‘__return_false’).


