Мои услуги
|
Я обычно не выкладываю чужие статьи, но вот в сети нашёл полезный пост Хропатого Дмитрия о безопасности WordPress. Думаю он будет полезен каждому блогеру
WordPress является великолепной платформой для издательского дела, блогинга, но он не застраховал от всевозможных атак хакеров, спамеров и других нападавших, кто пытался поставить под угрозу безопасность вашего блога.
У CMS WordPress открытый исходный код, а это означает, что шансы вредоносных атак на успех выше чем в других системах управления сайтами, так как уязвимость может быть очень легко определена.
Тем не менее очень хорошей новостью послужит то, что есть меры которые можно предпринять и это повысит уровень безопасности вашего блога на WordPress. В этой статье будут рассматриваться советы и трюки, которые можно использовать, что бы укрепить и заблокировать ваш блог на WordPress’e.
Вы должны всегда делать резервную копию базы данных вашего блога с помощью экспорта данных MySQL в файл .sql, который будет хранится в безопасном месте.
Я рекомендую ежедневное резервное копирование вашей базы, даже если вы часто не обновляете свой блог, это позволит вам получать комментарии и trackbacks ваших читателей. Так вы точно ничего не потеряете даже в случае атаки.
Но ручное резервное копирование со временем просто надоедает да и забирает наше ценное время. Для борьбы с тенденцией человека что бы отложить скучные и повторяющиеся задачи, мы должны автоматизировать этот процесс.
Для этого вы можете использовать плагин под названием WordPress Database Backup для автоматизации этого процесса. В настройках вы сможете задать частоту резервного копирование какую захотите: ежечасно, ежедневно, еженедельно и ежемесячно. Ознакомьтесь с этим методом и в случае атаки на ваше блог, вы его сможете легко восстановить с помощью сохраненной базы данных.
Очень большую важность имеет папка 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.
Многие разработчики часто отображают версию WordPress в исходном коде. Но это информация очень облегчает злоумышленникам поиск уязвимостей для определенной версии WordPress’a.
Безопаснее всего вообще удалить этот код. для этого заходим в файл header.php в вашей теме, ищем код, который выглядит следующим образом, а затем удаляем его:
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" />
<!-– leave this for stats please -->
Если вы не можете найти код, отображенный выше, и еще видим мета-теги в исходном коде, то вам следует обратится для вызова функции PHP в вашей <head> метке
<?php wp_head(); ?>
Она выводит в исходном коде примерно вот такие строки:
<link rel="EditURI" type="application/rsd+xml" title="RSD"
href="http://example.com/xmlrpc.php?rsd" />
<link rel="wlwmanifest" type="application/wlwmanifest+xml"
href="http://example.com/wp-includes/wlwmanifest.xml" />
<meta name="generator" content="WordPress #versionnumber" />
Пробуйте просто убрать эту функцию, даже если вы в ней очень нуждаетесь, после того как уберете ее, это придаст вам еще больше безопасности.
Поскольку WordPress является проектом с исходным кодом, то очень легко найти уязвимость в его коде. Что бы пользоваться всегда самой безопасной версией WordPress, обновляйте ее сразу при выходе новой версии. Обновление займет у вас не больше 5 минут и сделает ваш блог безопаснее.
Когда вы устанавливаете WordPress, то он вам автоматически генерирует нового пользователя – администратора с именем admin. Настоятельно не рекомендуется использовать это имя, что бы не дать угадать хакеру ваше имя пользователя для предотвращения атак вашего блога грубой силой.Лучше всего удалить этого пользователя!
Сделать это можно таким образом – создайте сначала нового пользователя с доступом администратора, а потом удалите пользователя admin зайдя в новый аккаунт. Этот метод освобождает вас от необходимости делать это через запрос MySQL (или MySQL GUI как PhpMyAdmin).
В рамках нападения “грубой силой” советую установить плагин Login Lockdown Plugin, который записывает попытки входа с IP адресов. Если было замечено более 3-ох неудачных попыток входа с одного IP, плагин его блокирует. Вы можете настроить этот плагин с вашими предпочтениями.
Еще одним путем обеспечения безопасности вашего WordPress, является шифрование информации, хранящейся в ваших Cookies WordPress. Это можно легко сделать с помощью секретного ключа WordPress. Получите его и вставьте в файл wp-config.php.
Это обеспечит огромную трудность при получении доступа к вашей административной панели WordPress путем угона Cookies.
Придумайте себе очень сложный пароль, который будете знать только вы! Сейчас в интернете очень много сервисов, где вы можете проверить на сколько сильный ваш пароль. Например Microsoft имеет свой бесплатный сервис по проверке надежности паролей, WordPress тоже имеет такую функцию – пользуйтесь ей.
По умолчанию в WordPress используется wp_ как таблица префикса для таблиц баз данных MySQL. Чтобы добавить немного безопасности против попыток SQL инъекций, нужно изменить значения по умолчанию на другое.
WordPress рекомендует хранить префикс только в буквах и цифрах и по этому измените его на то, что имеет смысл только для вас, например как w0rdprss_ или yourblogname_.
Что бы изменить префик зайдите в wp-config.php и измените его значение префикса таблицы.
$table_prefix = 'wp_';
Замечу, что если у вас уже есть WordPress предыдущей установки, то вам придется изменить свое имя таблицы базы данных с префиксом назначения в wp-config.php или ваш блог перестанет работать.
Вы должны убедится что все ваши файлы на сервере имеют правильные права доступа . Рекомендуется, что бы вы не разрешали запись файлов в ваших директориях, но некоторым плагинам WordPress требуется эти права доступа на запись.
настройте ваши фалы WordPress, что бы у них были минимальные правила доступа, как правило это CHMON 644. Внимательно ставьте права на файлы где они должны быть CHMOD 777, что означает, что каждый может читать, писать и выполнять его.
Есть отличный плагин WP-Scan, который сканирует слабые места в вашем блоге, связанные с правами доступа к файлам.
Каждый поисковой робот индексирует ваш блог и все что находится в нем. Хочу отметить, что нужно запретить индексацию на некоторые директории вашего блога.
В примере, приведенном ниже, вы сообщаете поисковику не индексировать ничего внутри папок, которые начинаются с префикса /wp- (смотрите wp-login.php).
Disallow: /wp-*
Так же вам следует прочитать руководство про robots.txt для WordPress от AskApache.com, что бы узнать об этой теме подробно.
Вы можете зайти в админку через защищенное соединение SSL. Вы должны видеть, если ваш хостинг предоставляет доступ к SSL сертификату, а если нет то спросите. А если нет то стоит немножко потратится… Вы плотите пару баксов и получаете отличную защиту.
После того как вы создали SSL соединение, вы можете пользоваться протоколом https:// вместо обычного http://. Запустить эту функцию можно перейдя в wp-config и вставить следующий код:
define('FORCE_SSL_ADMIN', true);
Как уже говорилось выше файл wp-config.php является неотъемлемой частью работы WordPress. Он содержит очень много секретной информации такой как имя пользователя базы данных, пароли и тд. И очень важно обеспечить этому файлу максимальную защиту!
Сейчас мы заблокируем к нему доступ с помощью .htaccess директивы (для сервера Apache). Вы можете использовать следующий фрагмент кода в качестве примера:
<files wp-config.php> Order deny,allow deny from all </files>
Еще одна вещь, которую вы можете сделать так это переместить файл wp-config.php на директория вверх от той где находится файл. Согласно кодексу это можно сделать для понижения безопасности компромиссов. Перемещение конфигурационного файла придает дополнительный уровень безопасности путем запутывания, что оттолкнет многих нападающих.
Желаете получать на свой е-маил:
Заполните форму внизу!
Уведомление: Ivanov
Спасибо!!!!
Спасибо! Очень полезная информация, только для «чайника» тяжеловата. Поместила в закладки, пригодится.
Пункт 3 еще необходимо поправить в wp-includes файл version, при правке необходимо учесть что некоторые плагины могут перестать работать,
решение через $a=
после установки WordPress Database Backup, при попытке зайти в админку вылетает «У вас недостаточно полномочий для доступа к этой странице.»…
Удалите компонент через FTP
Уведомление: ★Seoart™★
Что касаемо использования новых версий WP, то я недавно делал новый блог и зкачал последний WP. Может он и безопасней, но уж как-то сильно долго думает при работе в админ панели. Что он там «обмозговывает» постоянно я не понял, но надоел мне сей процесс минут через десять, и я поставил более раннюю версию WP из архива. Думаю самое полезное — систематически делать резервные копии баз данных.
А есть ли возможность переименовать папку wp-admin?
Теоретически можно. Влечет за собой необходимость перешерстить все скрипты движка и плагинов и менять там пути к папке, а это хлопотно.