»  Безопасность  »  Максимальная безопасность Вордпресс

Максимальная безопасность Вордпресс

Максимальная безопасность ВордпрессВ первых двух частях вы настроили базовую безопасность Вордпресс сайта. Эти настройки защитят сайт от самых распространенных автоматических и многих ручных методов взлома сайта.

В этой части вы сделаете остальные настройки, которые защитят сайт от 99,99% автоматических и ручных атак хакеров, троянов, вирусов, бэкдоров, вредоносных запросов и всех других угроз.

Все настройки с подробными описаниями, читайте и применяйте на сайте.

Содержание:

  1. Измените страницу входа на сайт
  2. Ограничьте доступ к wp-login.php и wp-admin
  3. Измените файловую структуру сайта
  4. Переместите wp-config.php
  5. Дайте минимальные разрешения MySQL аккаунту
  6. Отключите директивы php.ini
  7. Установите пароль на важные файлы и папки
  8. Отключите показ ошибок на сайте
  9. Запретите доступ к важным файлам
  10. Установите ограничение на размер загружаемых файлов
  11. Запретите доступ к PHP файлам
  12. Запретите исполнение PHP файлов
  13. Запретите доступ к папке wp-includes
  14. Защитите сайт от внедрения вредоносных скриптов
  15. Заблокируйте вредоносные запросы
  16. Добавьте защиту от непреднамеренных загрузок вредоносного кода
  17. Отключите HTTP-трассировку
  18. Добавьте защиту от некоторых типов XSS атак
  19. Добавьте защиту от кликджекинга
  20. Добавьте дополнительную фильтрацию символов
  21. Добавьте мощный файрвол
  22. Бонус 1. Включите логи событий на сервере
  23. Бонус 2. Используйте двух-факторную авторизацию
  24. Бонус 3. Меняйте ключи и соли

1. Измените страницу авторизации на сайте

По умолчанию страница авторизации находится по адресу ваш-сайт.ru/wp-login.php. Боты приходят на эту страницу и пытаются подобрать логин и пароль. Чтобы уменьшить активность этих ботов на своем сайте вы можете изменить адрес страницы авторизации на другой, например, ваш-сайт.ru/entrypage или ваш-сайт.ru/ep.php.

2. Ограничьте доступ к wp-login.php и wp-admin

Страница авторизации и панель администратора — важные страницы, которые дают доступ к сайту, поэтому доступ к этим страницам можно ограничить.

Если у вас статический IP, вы можете запретить доступ к странице входа или панели администратора:

Первые две строки перенаправляют посетителя с неавторизованного IP на страницу с ошибкой 404. Это правило не будет вызывать цикличные редиректы, поэтому ваш сайт не будет выглядеть как зависший.

Замените  /путь-к-вашему-сайту/ в двух первых строках на свой адрес.
Замените  IP Адрес 1IP Адрес 2 и IP Адрес 3 на те IP адреса, с которых вы хотите иметь доступ к страницам wp-login.php и wp-admin.

Если вам нужен только один IP адрес, удалите строки 9 и 10, если вам нужно больше адресов, добавьте нужное количество строк.

Если вы или другой пользователь имеете динамические IP (или Мультисайт), используйте это правило:

Замените  /путь-к-вашему-сайту/ и  /ваш-сайт.ru/  на свой адрес.

Это правило определяет, что только те пользователи, которые вручную набрали wp-login.php или wp-admin в браузере, получат доступ к этим страницам.

Этот способ не защитит от хакеров, которые вручную набирают адрес страницы входа на сайт, но значительно уменьшит количество брут-форс атак (перебор паролей).

Еще один способ — создайте файл .htaccess в папке wp-admin. Это правило разрешает доступ к папке только указанным ip:

Замените  IP Адрес 1 и IP Адрес 2 на свои IP.

3. Измените файловую структуру сайта

Вордпресс — система с открытым исходным кодом, стандартная структура файлов и папок которой находится в открытом доступе, поэтому кто угодно, включая хакеров, знает, откуда начать атаку на сайт.

Чтобы противостоять таким атакам, можно реорганизовать стандартную файловую структуру Вордпресс. Вы можете перенести всю установку Вордпресс в новую папку, изменить стандартное расположение папок wp-contentplugins и uploads и создать новую папку для тем.

4. Переместите wp-config.php

В файле wp-config хранятся пароли, ключи безопасности и другая важная информация, поэтому лучше переместить этот файл в безопасное место. Если вы переместите файл в новое место, хакерам сначала придется его найти, после этого попытаться взломать.

Перенесите файл wp-config на один уровень вверх. Если первоначальное расположение файла было /home/public_html/wp-config.php, то перенесите файл в /home/wp-config.php

Если расположение файла было /home/public_html/abcd-xyz/wp-config.php, то перенесите файл в /home/public_html/wp-config.php

Не переносите файл, если на одном уровне выше уже есть файл wp-config, или если ваш сайт установлен в подпапке или на субдомене.

Если вы хотите переместить wp-config в другое место, перенесите его в новое место, на старом месте создайте еще один wp-config и добавьте в него этот код:

Замените /путь/к/wp-config.php на новый адрес к файлу wp-config.

5. Дайте минимальные разрешения MySQL аккаунту

Если хакер получит доступ к файлу wp-config и узнает логин и пароль к базе данных, он получит доступ к базе данных, и сможет делать все, что разрешено делать этому аккаунту. Чтобы у взломщика было меньше шансов получить контроль над сайтом, дайте этому аккаунту только необходимый минимум привилегий.

Для обычного использования сайта рекомендованные привилегии SELECT, INSERT, UPDATE, DELETE и ALTER для обновления Вордпресс.

Зайдите в phpMyAdmin, вкладка SQL:

Показать всех пользователей:

select user,host from mysql.user;

Показать привилегии:

show grants for ‘user’@’host’;

Замените user и host на ваше имя пользователя, которое вы можете узнать в файле wp-config и ваш хост, обычно localhost.

Чтобы изменить привилегии сначала нужно отменить текущие привилегии:

revoke all privileges on *.* from ‘user’@’host’;

Чтобы дать новые привилегии, используйте этот запрос:

grant SELECT,INSERT,UPDATE,DELETE ON `db`.* TO ‘user’@’host’;

Применить:

flush privileges;

6. Отключите директивы в php.ini

По умолчанию в Вордпрессе нет файла php.ini. Если в вашей установке нет этого файла, создайте его в корневой папке сайта.

Добавьте expose_php = off, чтобы скрыть версию PHP, и allow_url_include = off, чтобы отключить возможность для php кода использовать эту директиву, которую хакеры используют для XSS атак.

Если вы не хотите добавлять код, используйте плагин PHP Settings.

***

C этими настройками вы наберете 100% в тесте безопасности плагина Security Ninja.

Я не стал удалять пользователя с ID 1, поэтому набрал 99%.

Тест безопасности сайта плагином Security Ninja, максимальные настройки
Используйте эти тесты только как рекомендации. Хотя эти методики появились и проверялись на практике в течение многих лет, все зеленые знаки не гарантируют, что сайт не взломают. Также все красные знаки не означают, что сайт обязательно взломают.

7. Установите пароль на важные файлы и папки

Если вы хотите запретить доступ к какому-то файлу или папке, вы можете установите пароль.

Создайте файл с паролями (генератор .htpasswd), положите его в недоступную из интернета папку (на один уровень выше корневой папки) и добавьте запись в .htaccess с адресом этого файла, или установите плагин AskApache Password Protect.

Этот контент становится доступен после оплаты.

Вы добавите 15 правил в файл .htaccess:

  • Запретите доступ к файлам wp-config.php, .htaccess, php.ini и логам ошибок
  • Запретите доступ к PHP файлам 
  • Запретите исполнение PHP файлов в папке uploads
  • Добавите защита от внедрения вредоносных скриптов
  • Отключите HTTP-трассировку
  • Заблокируете вредоносные запросы
  • Добавите защиту от XSS-атак
  • Добавите мощный файрвол

И несколько других правил.

22. Бонус 1. Включите логи событий на сервере

Логи находятся на хостинг панели, в зависимости от используемого софта они могут называться по-разному: «Логи», «Журнал событий», «Метрики» или что-нибудь подобное. Обычно в этом разделе находятся 2 журнала: «Логи ошибок» и «Логи доступа».

Эти логи содержат информацию об успешных попытках доступа, если что-то случится, вы сможете найти следы хакера и попытаться восстановить сайт.

Логи хранятся на сервере определенное количество дней, после чего автоматически удаляются. Если сайт был взломан, скопируйте логи на на компьютер, пока они не были удалены с сервера.

23. Бонус 2. Используйте двух-факторную авторизацию

Еще один способ увеличить безопасность сайта — использовать двух-факторную авторизацию.

Двух-факторная авторизация использует механизм, когда для входа на сайт вам нужно не только ввести логин и пароль, но также токен безопасности, который уникален для каждого пользователя. Срок действия этого токена ограничен, обычно это 1 минута.

Токены генерируются автоматически и представляют собой 6-значный пароль, который вы получаете на свой смартфон.

Токен безопасности уникален для каждого пользователя и имеет ограниченное время существования, поэтому даже если кто-то знает логин и пароль к сайту, он не сможет войти, потому что у него не будет нужного токена.

В репозитарии Вордпресс находится много плагинов для добавления этого способа защиты, например: Google AuthenticatorDuo Two-Factor AuthenticationTwo-FactorRublon Two-Factor Authentication.

24. Бонус 3. Меняйте ключи и соли

Ключи безопасности в Вордпресс — это набор случайных символов, которые используются Вордпресс для шифрования паролей, хранящихся в cookies браузера. Соли — другой набор случайных символов, который используется для усиления ключей.

Для поддержания безопасности меняйте ключи и соли 1-2 раза в год. Сгенерируйте новые ключи и вставьте их в wp-config.php.

Заключение

Эти настройки защитят ваш сайт от 99,99% автоматических и ручных атак хакеров. Это защита уровня платных премиум-плагинов, таких как Wordfence, iThemes Security и других. Если вы хотите иметь еще большую защиту, добавьте сканер сайта по расписанию и файрвол на уровне DNS.

Лучший сервис предлагает Sucuri Security, он стоит от 199$ / год. При покупке подписки весь трафик будет проходить через сервера Сукури. Весь подозрительный и вредоносный трафик будет фильтроваться, а безопасный трафик проходить на сайт. Это снимет нагрузку с вашего сервера и сервер сможет обслуживать большее количество посетителей, используя то же количество ресурсов.

Кроме этого, Сукури настроит кеширование сайта и все страницы сайта будут скопированы на фирменный CDN Anycast, то есть запрошенная страница будут загружаться из ближайшего к посетителю сервера. Это значительно увеличит скорость сайта и уберет необходимость настраивать кеширование.

Все, что находится в интернете, можно взломать, включая сайты, находящиеся под защитой сервиса Сукури. Если это произойдет, Сукури дает гарантию бесплатного восстановления сайта на момент его заражения.

Сукури — лучший сервис по защите Вордпресс сайтов.

Security Ninja Pro предлагает файрвол на уровне приложения, сканер сайта на наличие вредоносного ПО, сравнение файлов Вордпресс с оригинальными файлами в репозитарии Вордпресс, облачный файрвол с базой вредоносных IP, логи событий и оптимизацию базы данных с лайф-тайм лицензией на 1 сайт за 42$.

Если вы думаете, что сайт может быть взломан, читайте Как проверить Вордпресс сайт на уязвимости.

Если сайт взломали, читайте Чек-лист: что делать, если сайт взломали

Читайте также:

  1. Безопасность Вордпресс для новичков
  2. Безопасность Вордпресс. Полное руководство

Надеюсь, статья была полезна. Оставляйте комментарии.

Оставьте комментарий

Do NOT follow this link or you will be banned from the site!