Защищаем WordPress


В предыдущей статьях мы рассмотрели способы устранения последствий взлома сайтов на WordPress и общие вопросы безопасности, а в этой статье мы рассмотрим реальные меры по защите вашего сайта от взлома:

1. Убираем информацию о версии CMS

По умолчанию в шапке сайта WordPress выводит информацию о текущей версии в теге meta (о том, как ее удалить, читайте в нашей статье по очистке функции wp_head()).

2. Добавим соли

В файле wp-config.php есть ряд констант содержащих уникальные наборы символов, которые добавляются при регистрации и аутентификации пользователя и усложняют возможность взлома его аккаунта. Замените их значение на уникальные, если же нет желания придумывать самостоятельно, воспользуйтесь специальным сервисом от разработчиков https://api.wordpress.org/secret-key/1.1/salt/

3. Задайте уникальный префикс для таблиц бд

Префикс таблицы добавляется перед названием таблицы в базе данных, не используйте стандартный wp_ это облегчит работу злоумышленнику, ведь он заранее будет знать название ваших таблиц в бд. Сделайте его уникальным, например str345_. Проще всего задать уникальный префикс при установке сайта, если же база уже создана, то вам потребуется вручную изменять названия таблиц в базе и прописывать новое значение в wp-config.php, переменная $table_prefix.
Так же, переименовать таблицы можно запросом:

RENAME table `wp_commentmeta` TO `str345_commentmeta`;
RENAME table `wp_comments` TO `str345_comments`;
RENAME table `wp_links` TO `str345_links`;
RENAME table `wp_options` TO `str345_options`;
RENAME table `wp_postmeta` TO `str345_postmeta`;
RENAME table `wp_posts` TO `str345_posts`;
RENAME table `wp_terms` TO `str345_terms`;
RENAME table `wp_term_relationships` TO `str345_term_relationships`;
RENAME table `wp_term_taxonomy` TO `str345_term_taxonomy`;
RENAME table `wp_usermeta` TO `str345_usermeta`;
RENAME table `wp_users` TO `str345_users`;

UPDATE `str345_options` SET `option_name` = 'str345_user_roles' WHERE `str345_options`.`option_id` =96;
UPDATE `str345_usermeta` SET `meta_key` = 'str345_capabilities' WHERE `str345_usermeta`.`umeta_id` =5;
UPDATE `str345_usermeta` SET `meta_key` = 'str345_user_level' WHERE `str345_usermeta`.`umeta_id` =7;

4. Прячем админку

Стандартный путь к странице входа в панель управления /wp-login.php известен каждому. Это тоже лишний козырь в руках взломщика. Откройте в редакторе файл wp-login.php из корневой директории сайта и везде измените название wp-login.php на новое, например adminka749.php или любое другое. В версии 3.4 это нужно сделать в 13 разных местах. Затем так же переименуйте сам файл. Главное, не забудьте новый адрес сами :).

5. Меры защиты в .htaccess

Ниже приведен ряд правил запрещающих внешний доступ к файлам wp-cohfig.php и самому .htaccess, а также запрет на просмотр содержимого директорий на сайте, данный правила добавляем в файл .htaccess в корневой директории сайта:

# Запрет на доступ к wp-config.php
<files wp-config.php>
 order allow,deny
 deny from all
</files>

# Запрет на доступ к .htaccess
<files .htaccess="">
order allow,deny
deny from all
</files>

# Пустой индекс вместо директории
Options All -Indexes

Очень надеемся, что данные меры помогут вам в защите вашего сайта, но помните, главная мера безопасности — ваша собственная бдительность.


Требуется подобная доработка? Напишите нам.


Name

Email


Website


Messagge