12 советов по безопасности для WordPress от Хропатого Дмитрия | Мастерская Инфобизнеса

Я обычно не выкладываю чужие статьи, но вот в сети нашёл полезный пост Хропатого Дмитрия о безопасности WordPress. Думаю он будет полезен каждому блогеру

WordPress является великолепной платформой для издательского дела, блогинга, но он не застраховал от всевозможных атак хакеров, спамеров и других нападавших, кто пытался поставить под угрозу безопасность вашего блога.

У CMS WordPress открытый исходный код, а это означает, что шансы вредоносных атак на успех выше чем в других системах управления сайтами, так как уязвимость может быть очень легко определена.

Тем не менее очень хорошей новостью послужит то, что есть меры которые можно предпринять и это повысит уровень безопасности вашего блога на WordPress. В этой статье будут рассматриваться советы и трюки, которые можно использовать, что бы укрепить и заблокировать ваш блог на WordPress’e.

1. Регулярно создавайте резервную копию базы данных MySQL

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

Я рекомендую ежедневное резервное копирование вашей базы, даже если вы часто не обновляете свой блог, это позволит вам получать комментарии и trackbacks ваших читателей. Так вы точно ничего не потеряете даже в случае атаки.

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

Для этого вы можете использовать плагин под названием WordPress Database Backup для автоматизации этого процесса. В настройках вы сможете задать частоту резервного копирование какую захотите: ежечасно, ежедневно, еженедельно и ежемесячно. Ознакомьтесь с этим методом и в случае атаки на ваше блог, вы его сможете легко восстановить с помощью сохраненной базы данных.

2. Принять дополнительные действия для безопасности папки wp-admin

Очень большую важность имеет папка wp-admin, которая непосредственно связана с основными функциями WordPress’a. Если безопасность папки поставлена под угрозу то может произойти очень много не хороших вещей с вашим блогом.

У вас есть несколько вариантов, что бы заблокировать доступ к этой папке. Оних мы и поговорим.

Одним из эффективных вариантов служит путь ограничения IP-адресов для доступа к папке wp-admin. Сделать это можно через файл .htaccess (для серверов Apache Web). Если вы запустите другой вид веб-сервера Apache, кроме (как IIS, который обычно поставляется с симпатичным интерфейсом из коробки), вам, возможно, придется рассмотреть как сделать аналогичные решения на директивах папки wp-admin.

Для начала вам придется создать новый документ в вашем любимом текстовом редакторе (например Блокнот или Windows NotePad). Сохраните этот файл под именем: .htaccess.

Вы можете разместить директиву, размещенную ниже, в вашем файле .htaccess:

order deny, allow
allow from 123.456.78 #Ваш IP адрес
deny from all
Сохраните его и поместите внутри папки WP-Admin. Эта опция приятно затягивает безопасность папки WP-Admin, но она крайне неудобна если вы работаете в нескольких местах по разным адресам.

Существует еще один способ обеспечения безопасности вашей админки это плагин AskApache Password Protect. Плагин дает ряд дополнительных функций безопасности, таких как требование ввода имени пользователя и пароля для доступа к каждой административной странице, он так же пишет сам для вас файл .Htaccess автоматически (и это здорово, если вы не знакомы с работой по системе контроля доступа на серверах Apache).

Проверьте документацию на сайте Apache о том, как использовать аутентификацию, авторизацию и контроль доступа, что бы увидеть как можно заблокировать другие папки установок WP, а так же в других местах, за пределами установки Wp.

3. Не показывайте номер вашей версии WordPress на публику.

Многие разработчики часто отображают версию WordPress в исходном коде. Но это информация очень облегчает злоумышленникам поиск уязвимостей для определенной версии WordPress’a.

Безопаснее всего вообще удалить этот код. для этого заходим в файл header.php в вашей теме, ищем код, который выглядит следующим образом, а затем удаляем его:



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

4. Старайтесь пользоваться только последними версиями WordPress

Поскольку WordPress является проектом с исходным кодом, то очень легко найти уязвимость в его коде. Что бы пользоваться всегда самой безопасной версией WordPress, обновляйте ее сразу при выходе новой версии. Обновление займет у вас не больше 5 минут и сделает ваш блог безопаснее.

5. Не использовать, а еще лучше убрать имя пользователя по умолчанию admin

Когда вы устанавливаете WordPress, то он вам автоматически генерирует нового пользователя – администратора с именем admin. Настоятельно не рекомендуется использовать это имя, что бы не дать угадать хакеру ваше имя пользователя для предотвращения атак вашего блога грубой силой.Лучше всего удалить этого пользователя!

Сделать это можно таким образом – создайте сначала нового пользователя с доступом администратора, а потом удалите пользователя admin зайдя в новый аккаунт. Этот метод освобождает вас от необходимости делать это через запрос MySQL (или MySQL GUI как PhpMyAdmin).

В рамках нападения “грубой силой” советую установить плагин Login Lockdown Plugin, который записывает попытки входа с IP адресов. Если было замечено более 3-ох неудачных попыток входа с одного IP, плагин его блокирует. Вы можете настроить этот плагин с вашими предпочтениями.

6. Шифрование Cookies вашего WordPress

Еще одним путем обеспечения безопасности вашего WordPress, является шифрование информации, хранящейся в ваших Cookies WordPress. Это можно легко сделать с помощью секретного ключа WordPress. Получите его и вставьте в файл wp-config.php.

Это обеспечит огромную трудность при получении доступа к вашей административной панели WordPress путем угона Cookies.

7. Используйте надежные пароли

Придумайте себе очень сложный пароль, который будете знать только вы! Сейчас в интернете очень много сервисов, где вы можете проверить на сколько сильный ваш пароль. Например Microsoft имеет свой бесплатный сервис по проверке надежности паролей, WordPress тоже имеет такую функцию – пользуйтесь ей.

8. Измените WordPress таблицы базы данных с префиксом по умолчанию.

По умолчанию в WordPress используется wp_ как таблица префикса для таблиц баз данных MySQL. Чтобы добавить немного безопасности против попыток SQL инъекций, нужно изменить значения по умолчанию на другое.

WordPress рекомендует хранить префикс только в буквах и цифрах и по этому измените его на то, что имеет смысл только для вас, например как w0rdprss_ или yourblogname_.

Что бы изменить префик зайдите в wp-config.php и измените его значение префикса таблицы.

$table_prefix = ‘wp_’;
Замечу, что если у вас уже есть WordPress предыдущей установки, то вам придется изменить свое имя таблицы базы данных с префиксом назначения в wp-config.php или ваш блог перестанет работать.

9. Используйте правильные права доступа на ваших файлах WordPress

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

настройте ваши фалы WordPress, что бы у них были минимальные правила доступа, как правило это CHMON 644. Внимательно ставьте права на файлы где они должны быть CHMOD 777, что означает, что каждый может читать, писать и выполнять его.

Есть отличный плагин WP-Scan, который сканирует слабые места в вашем блоге, связанные с правами доступа к файлам.

10. Индексируемость вашего блога и robots.txt

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

В примере, приведенном ниже, вы сообщаете поисковику не индексировать ничего внутри папок, которые начинаются с префикса /wp- (смотрите wp-login.php).

Disallow: /wp-*
Так же вам следует прочитать руководство про robots.txt для WordPress от AskApache.com, что бы узнать об этой теме подробно.

11. Использование защищенного режима для доступа в WordPress админку

Вы можете зайти в админку через защищенное соединение SSL. Вы должны видеть, если ваш хостинг предоставляет доступ к SSL сертификату, а если нет то спросите. А если нет то стоит немножко потратится… Вы плотите пару баксов и получаете отличную защиту.

После того как вы создали SSL соединение, вы можете пользоваться протоколом https:// вместо обычного http://. Запустить эту функцию можно перейдя в wp-config и вставить следующий код:

define(‘FORCE_SSL_ADMIN’, true);
12. Заблокируйте миру доступ к вашему файлу wp-config.php

Как уже говорилось выше файл wp-config.php является неотъемлемой частью работы WordPress. Он содержит очень много секретной информации такой как имя пользователя базы данных, пароли и тд. И очень важно обеспечить этому файлу максимальную защиту!

Сейчас мы заблокируем к нему доступ с помощью .htaccess директивы (для сервера Apache). Вы можете использовать следующий фрагмент кода в качестве примера:


Order deny,allow
deny from all

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *