Плагины безопасности для WordPress. Ломаем и защищаем WordPress своими руками

01.07.2019

Сегодня поговорим о безопасности вашего сайта на популярной платформе WordPress. Безопасность блога напрямую зависит от степени заботы о нем и качестве администрирования. Используя простые советы и рекомендации вы намного сможете повысить уровень безопасности.


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

Безопасность WordPress 2015 содержит следующие рекомендации:

Навигация по статье:

Безопасность wordpress и файл htaccess.

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

Давайте рассмотрим все по порядку, раз.htaccess такой ценный значит для начала стоит обезопасить его от стороннего вмешательства.

Как защитить файл.htaccess WordPress сайта?

Говоря о поднятии безопасности при помощи файла.htaccess без защиты его самого было бы глупо. По этой причине защитим сперва наш файл, а затем пойдем далее.

Для того что бы защитить.htaccess нужно внести в него небольшой код:


order allow,deny
deny from all

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

Как защитить файл wp-config.php?

Нам нужно также защитить важный файл который имеет множество информации связанной с доступом к базе данных и другое. Запретить доступ к файлу из вне можно при помощи.htaccess. Защитный код должен быть таковым:


order allow,deny
deny from all

Создайте свои секретные ключи для файла wp-config.php.

Для доступа к сайту WordPress использует 4 ключа, которые указываются в файле wp-config.php. Вы должны создать и установить свои собственные уникальные ключи, для обеспечения безопасности. Для облегчения сего действия существует специальный генератор ключей , с помощью которого вы создадите все что вам потребуется.

Сменить ключи можно изменив файл wp-config.php и перезаписать его на сервер.

Смена префикса таблиц базы данных WordPress.

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

Ограничение количества неудачных попыток входа.

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

На помощь вам придет , настройка которого не займет у вас много времени, но позволит добавить очередную преграду взломщикам.

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

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

Безопасность сайта WordPress по большей мере зависит от безопасности доступа к административной панели, поэтому пренебрегать этими рекомендациями будет большой ошибкой.

Не используйте для входа login «admin».

Если вы выбрали другой логин, отлично! Убедитесь что его трудно подобрать вручную, также зайдите в вашу базу данных в таблицу префикс_users и убедитесь что в ней нету зарегистрированного логина admin. Если таков существует, удалите его.

Обновляйте версию WordPress, плагины и темы.

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

В корне блога удалите файлы readme.html и license.txt.

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

Эти файлы доступны всем пользователям по адресу ваш-сайт/readme.html, проверти это на своем блоге.

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

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

Делайте регулярные резервные копии.

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

Безопасность wordpress – очень важный аспект в работе системы. Понятно, что сегодня интернет не является такой уж безобидной средой, а наоборот содержит множество угроз в виде троянов, вирусов и прочей нечисти. Поскольку wordpress open sourse система, то хакеры имеют доступ к исходному коду, что позволяет находить в нем различные дыры для взлома. Но не нужно паниковать! Все системы для управления сайтов содержат известные или скрытые уязвимости, идеальных решений не существует.

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

Технология XML-RPC применяется в системе WordPress для разных приятных фишек по типу пингбэков, трекбеков, удаленного управления сайтом без входа в админку и т.п. К сожалению, злоумышленники могут использовать ее для DDoS атаки на сайты. То есть вы создаете красивые интересные WP проекты для себя или на заказ и при этом, ничего не подозревая, можете быть частью ботнета для DDoS`а. Соединяя воедино десятки и сотни тысяч площадок, нехорошие люди создают мощнейшую атаку на свою жертву. Хотя при этом ваш сайт также страдает, т.к. нагрузка идет на хостинг, где он размещен.

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

Вопрос — один из наиболее важных аспектов, которому нужно уделять немало внимания. Какая бы ни была функциональность или наполнение, без защитных данных вы можете все это легко потерять. Далеко за примером ходить не приходится — буквально две недели назад я писал как . К счастью, все обошлось и я смог оперативно их восстановить, но это лишний раз напомнило насколько важно соблюдать требования безопасности по сайтам. У каждой CMS системы (в том числе и wordpress) имеется определенный набор советов, рекомендаций и модулей для защиты сайта.

Вчера столкнулся с неприятной ситуацией, когда с 10-ток моих сайтов в том числе и парочка основных блогов была хакнута. Не знаю что за мудак этот Badi, но судя по подписи это все его «заслуга». Вообще, изначально, когда возникают проблемы со многими сайтами на хостинге, первое подозрение на хак панели управления или утечку паролей на ФТП/Базы данных. Это, пожалуй, самое неприятное, что может произойти — т.к. является показателем сознательной атаки против вас или конкретных проектов. Но, просматривая просторы интернета понимаю, что мои проблемы с вордпресс не единичный случай, и этот проказник натворил делов.

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

Вряд-ли есть блогеры, которые не слышали страшилок о том, как взламывают или воруют блоги (особенно на популярной платформе WordPress). Возможно, даже кто-то из вас или ваших знакомых оказывался в подобном незавидном положении. Сказать, что это ситуация неприятная — ничего не сказать. Для хозяина блога такое происшествие — настоящая трагедия, которая как минимум заставит потратить некоторое время на восстановление всей информации. Что может быть в худшем случае и думать не хочется. А ведь при должной бдительности и системном подходе такой беды можно избежать!

Давно хотел написать этот пост, но несколько месяцев назад мне обещали сделать по теме гостевую публикацию и я как-то забыл про нее. И вот буквально вчера вспомнил, занимаясь декодированием футера одного из шаблонов wordpress. В принципе, существует несколько разных вариаций и сложностей данной проблемы. Сегодня расскажу о самом простом (можно сказать тривиальном) случае, чуть более сложные будут рассмотрены в будущих постах. Опытным пользователям wordpress, конечно, решение покажется очевидным и очень знакомым, но, думаю, для начинающих пользователей будет полезно.

Зашел я тут как-то на один сайт полезный, читаю себе статью и вдруг захотелось посмотреть реализацию оформления текста в HTML коде. По привычке пытаюсь выделить часть текста, после чего с помощью контекстного меню в Firefox собирался глянуть «код выделенного фрагмента», но в результате не удалось сделать ни то, ни другое. Я, конечно, заинтересовался еще больше что там у них такой за механизм защиты текстов и контента. Поэтому в меню «Вид» все того же Firefox выбираю пункт «Исходный код страницы» и вижу упоминание плагина WP-CopyProtect для wordpress. Мне показалось это веселым, поэтому решил об этом написать:)

Насчитал около 20 постов, то есть где-то 3 подборки раз в неделю вам обеспечено:) Ближе к выходным чтобы почитать уже больше для расслабления и закрепления материала. Итак, поехали.

Безопасность WordPress — это вопрос, который нужно решить еще на этапе установки сайта на хостинг. Если не защитить Вордпресс, не предпринять какие-либо меры для этого, тогда ваш сайт быстро захватят вирусы, боты и спамеры. Вы должны уметь бороться со всякой угрозой, которая потенциально может навредить ресурсу. Иначе, еще не успев стать успешным, ваш сайт будет уничтожен недоброжетелями.

Безопасность сайта — это не только отлаженная работа движка в замкнутой непролазной системе, но и безопасность вашего компьютера.

Вирусы не должны быть у вас на диске. Также и хостинг не должен содержать вирусы. Иначе вы сами станете причиной разрушения сайта — вирусы, наподобие троянов, съедят его. Либо сайт может не повредиться, но он станет разносчиком «инфекции» — скачивая файл, пользователь скачает и вирус. Ниже приведены советы по защите сайта, а также плагины Вордпресс, которые помогут вам в этом деле.

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

  • У вас должен быть сложный пароль для доступа в . Взлом административной панели — это, пожалуй, самое худшее, что могут сделать злоумышленники. После взлома они смогут украсть все статьи, которые вы еще не опубликовали, а также удалить содержимое сайта.
  • Пароль лучше обновлять раз в полугодие. Взломщики используют специальные программы для подбора комбинаций. Если пароль будет обновляться, их шансы взломать сайт сводятся к нулю.
  • В качестве пароля нельзя использовать общеизвестное слово — взломать такой код проще простого. Это могут сделать даже те, у кого нет специальной программы для взлома аккаунтов.
  • Когда вы заходите на сайт в админку, браузер предлагает вам сохранить пароль. С одной стороны, это удобно — ведь не придется каждый раз потом вводить сложный пароль. С другой — это может стать причиной взлома админпанели.
  • Самая большая ошибка, которую совершают большинство вебмастеров — это использование одинакового пароля для входа на разные площадки. Если у вас для админки, хостинга и почта будет одинаковый пароль, то взломав аккаунт сайта, злоумышленник автоматически получит пароль и на все другие ваши профили.
  • Не рекомендуется хранить ваши пин-коды и пароли где-либо в Интернете и даже на жестком диске. Компьютер могут украсть, а аккаунт социальной сети — взломать.
  • Если сидите с чужого компьютера, не заходите на сайт в админку со стандартного браузера — он может сохранить пароли. Лучше используйте режим инкогнито.

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

  • раз в неделю проверяйте компьютер на вирусы;
  • установите качественный антивирус (один), а также приложения для блокировки вредоносных сайтов;
  • не открывайте на почте все, что вам приходит — порой злоумышленники присылают письма со спамом, в которых содержатся вирусы;
  • обновляйте проги на компьютере и скачивайте новые программы с официальных источников — через них вирус навряд ли проникнет на жесткий диск.

Если вы не будете следовать указанным советам, то вскоре и ваш сайт будет считаться сомнительным! А вот, что вы можете сделать в настройках Вордпресс для повышения безопасности ресурса:

  1. Как только появляется новое обновление, устанавливайте его — возможно в новом обновлении применены инновационные технологии повышения безопасности.
  2. На случай, если взломщик все же проникнет в админку и удалит все содержимое сайта, сделайте резервную копию базы данных и всего содержимого. Тогда сайт будет несложно восстановить.
  3. Иногда в теме имеются какие-то посторонние ссылки. На всякий случай удалите их.
  4. Взломщикам и хакерам куда проще «надругаться» над вашим ресурсом, если в нем указана версия движка. Лучше скрыть ее от посторонних глаз. Чтобы версия не отображалась, вам необходимо будет настроить файл header.php — удалить строчку с указанием WordPress version. Также удалите на хостинге файлы readme.htm и license.txt — без них сайт будет работать точно также.
  5. Если вы работаете на одном и том же компьютере, или их у вас несколько, тогда вы можете указать в настройках IP, с какого вы обычно заходите. Указывается эта информация в файле.htaccess. Со строки Allow from. Если вдруг вы поменяете компьютер и нужно будет зайти с другого места, вы всегда сможете отредактировать файл для активации доступа с другого IP. Чтобы узнать свой IP, воспользуйтесь специальными сервисами в Интернете.
  6. Лучше не используйте стандартную учетную запись сайта admin, а создайте собственную с придуманными вами логином. Так взломать сайт будет куда сложнее.
  7. Наверняка вы слышали о всяческих атаках на сайты. Установите плагины для защиты сайта от них.
  8. Максимально защитите ваши базы данных на сервере, ограничив доступ всеми возможными средствами.

Защита WordPress плагинами

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

  1. Anti-XSS attack — модуль, который защитит ваш ресурс от XSS-атак. Звучит странно — «атака». Но с современными темпами роста вполне не исключено, что на ваш ресурс могут напасть. Есть белые и черные методы борьбы с конкурентами. Те, у кого есть деньги и нет совести, часто выбирают второе — грязные способы удаления сайтов-конкурентов. XSS-атака — это внедрение вредного кода в структуру сайта.
  2. Login LockDown защитит вашу админку от многочисленных попыток взлома. Боты подбирают пароль путем угадывания комбинаций. Если не ограничить количество попыток и не добавить какой-то дополнительный фактор для совершения авторизации, задача для роботов значительно облегчится — они легко смогут взломать ваш «пассворд». Плагин Login LockDown ограничивает число вводов по количеству и времени.
  3. WP Security Scan — мощный плагин для обеспечения безопасности. После установки и активации произойдет проверка вашего ресурса. Вы узнаете какие пункты безопасности нарушены, и что нужно предпринять для их исправления. Плагин сканирует наличие новых версий движка, тип используемого префикса таблиц, скрытность версии WordPress, базу данных на наличие ошибок, пользовательский аккаунт, с которого вы занимаетесь администрированием сайта, а также настройки файла.htaccess.
  4. Simple Backup позволит вам быстро сделать и скачать резервную копию всего сайта. Делайте это хотя бы раз в месяц — никогда не знаешь, когда случится беда.
  5. Login Dongle — модуль, который абсолютно исключит возможность взлома вашего аккаунта админа. Он добавляет к привычным формам для заполнения вопрос, на который вам нужно будет ответить. Таким образом, робот не сможет быстро подобрать и пароль, и ответ.
  6. Exploit Scanner — плагин, который удостоверит отсутствие вредоносных программ и файлов у вас на сайте и в списке базы данных. Не думайте, что у вас все идеально — вирусы работают незаметно. Лучше лишний раз проверить их отсутствие.
  7. Если вы постоянно забываете о надобности регулярных проверок сайта, тогда воспользуйтесь плагином WordPress AntiVirus — он делает это автоматически.

WordPress - пожалуй, самая популярная и вместе с тем одна из самых часто взламываемых платформ. Почему-то существует мнение, что если ваш сайт особо никому не интересен, то и взламывать его не будут - зачем? На самом деле угроза взлома есть буквально у каждого сайта (и не только на WordPress), поэтому важно заботиться о защите своей странички. Что можно предпринять - а точнее, какие плагины установить - об этом я и расскажу в этой статье.

Эти советы будут полезны не только в работе с WordPress, но и с любой другой CMS. Они базовые, но, как показывает практика, все равно есть люди, которые о них не знают. Зачем это все делать? Чтобы усложнить жизнь злоумышленнику. Используя данные, которые устанавливаются по умолчанию, хакер может относительно легко взломать ваш сайт, а также вашу базу данных. Поэтому нужно сделать следующее.

1. Измените имя пользователя с admin на другое.

Чтобы это сделать, вам нужно сначала создать нового пользователя в качестве администратора. Сделать это можно вот тут:

После создания пользователя зайдите под его аккаунтом и в списке «Все пользователи» удалите аккаунт “admin”. При этом новый логин постарайтесь сделать каким-нибудь относительно сложным, ну хотя бы состоящим из нескольких слов: vasyapupkin99. Можете свой никнейм использовать, например.

Про пароль писать не буду - лучше воспользоваться тем, который сгенерирует вам Wordpress на стадии создания аккаунта, а не придумывать какой-то свой (который, скорее всего, будет легче).

2. Изменить префикс базы данных с wp на другой.

Существует два пути сделать это: либо самостоятельно правя таблицы в phpMyAdmin (или даже просто в файловом менеджере), либо через плагин. Кратко расскажу об обоих вариантах.

Изменение через phpMyAdmin

Сразу скажу, что это действие требует внимания к деталям и некоторого опыта работы в phpMyAdmin.

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

Теперь зайдите в файловый менеджер и найдите файл wp-config.php, в нем строку $ table_prefix = "wp_";

“wp” надо изменить на что-то другое, менее связанное с WordPress и базами данных. Можно менять даже на произвольный набор букв и цифр (но вам его нужно запомнить или записать).

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

После этого зайдите в phpMyAdmin (на хостинге Timeweb это можно сделать прямо через панель управления) и найдите базу данных для нужного сайта. Все таблицы этой базы данных нужно переименовать, вместо “wp_” подставляя то, что вы уже написали выше.

Как переименовать: выбираете таблицу в левом столбце, нажимаете вкладку «Операции», далее смотрите блок «Параметры таблицы» и строку «Переименовать таблицу в». После внесения изменений не забудьте нажать «Вперед».

После этого ищите в списке таблицу “…_options”. Выбрав ее, нажмите «Обзор» - в содержимом примерно на второй странице в столбце “meta_key” вы увидите wp_user_roles - измените префикс “wp” на тот, который вы сейчас собираетесь использовать. Сохраните изменение.

Следующая таблица для изменения - “…_usermeta” - аналогичным образом посмотрите ее содержимое и измените все старые префиксы на новые.

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

Изменение через плагин

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

После того, как вы установили и активировали плагин, зайдите в раздел «Защита Базы данных». Там вы увидите строку «Сгенерировать новый префикс таблиц БД» - напишите тот префикс, который хотите поставить (или поставьте галочку около «Отметьте, чтобы плагин сам сгенерировал префикс длиной в 6 случайных символов»), и нажмите «Изменить префикс таблиц». После этого ниже вы увидите отчет от ходе изменения префикса. Чтобы убедиться в том, что ожидаемый результат достигнут, зайдите в phpMyAdmin.

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

All In One WP Security & Firewall

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

В разделе «Настройки» плагина перейдите во вкладку “WP version info” и поставьте галочку рядом с «Удаление мета-данных WP Generator». Так как хакеры зачастую основываются на информации, которую содержат мета-данные, то будет нелишним убрать эту информацию из кода страницы.

Кстати, если вы все еще не поменяли имя администратора (следуя совету выше), то сделать это можно и через этот плагин - во вкладке «Администраторы». Просто напишите новое имя пользователя и еще раз авторизуйтесь в панели (пароль остается прежним).

Здесь же вы можете видеть вкладку «CAPTCHA при регистрации» - тоже активируйте этот пункт.

Теперь переходим в раздел «Файрволл» - здесь ставим галочку в блоках «Основные функции брандмауэра». Остальное можете включить/оставить выключенным по своему желанию.

Раздел «Защита от брутфорс-атак»: вам нужно включить опцию переименования страницы логина и написать желаемый адрес в графе ниже. Тут важно понять - этот адрес будет использоваться для входа в админку, жизненно важно его запомнить !

С этим плагином мы закончили, переходим к следующему.

AntiVirus

Этот плагин сканирует файлы сайта на предмет вредоносного кода. Пользоваться им достаточно просто - после установки зайдите в его настройки и нажмите “Scan the theme templates now”, после этого все файлы вашей темы будут проверены.

Тут же вы можете настроить и ежедневную проверку с отчетом на email.

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

Как и другие активные плагины, AntiVirus нагружает сервер (а значит, ваш сайт работает медленнее), поэтому лучше пользоваться им время от времени, чем постоянно держать в активном состоянии.

Wordfence Security

Этот плагин по функционалу схож с предыдущим, ими можно пользоваться параллельно, хуже не будет. Точно так же установите, активируйте, перейдите во вкладку “Scan” и нажмите на большую синюю кнопку “Start a Wordfence Scan”. Кое-какие возможности доступны только для оплаченных (премиум) аккаунтов, но базовый функционал тоже неплох. Если с вашим сайтом все хорошо, то вы увидите зеленую надпись “Congratulations! No security problems were detected by Wordfence”.

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

Sucuri Security

Вообще Sucuri - это компания, которая специализируется на защите веб-сайтов, поэтому они предоставляют защиту для любого сайта (не только на WordPress). Плагин от этой серьезной компании с внушительной репутацией обладает широким функционалом, представляющим полный цикл защиты сайта, включая предупреждение взлома и атаки на ваш сайт. Можно пользоваться бесплатной версией, а можно купить платную за 16,66$ в месяц - сумма немаленькая, но за такой диапазон защитных инструментов вполне обоснованная.

Для того, чтобы пользоваться бесплатной версией, после установки вам будет необходимо сгенерировать бесплатный ключ (в синем блоке сверху нужно будет нажать кнопку “Generate API Key”, проверить, что введенные данные корректны, и отослать заявку.

iThemes Security

Если Sucuri Security можно назвать лучшим платным плагином защиты, то iThemes Security часто называют лучшим бесплатным плагином, который стоит установить для безопасности вашего сайта. Тем более что сейчас у него более 800 тысяч установок!

Про функционал много писать не буду - как и все другие плагины, iThemes Security направлен на защиту вашего сайта от большинства вещей, которые могут ему угрожать, и в то же время на проверку существующего состояния сайта. Кстати, раньше плагин назывался Better WP Security - возможно, кто-то помнит его по этому названию.

Если в целом говорить об его функциях, то можно выделить следующие стороны этого плагина:

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

Теперь перейдем к самому использованию этого плагина.

Настройка iThemes Security

Начну с того, что у него есть и PRO (то есть более расширенная) платная версия, поэтому в бесплатной версии доступны не все возможности этого плагина (но их все равно много).

После установки активируйте плагин и переходите в раздел «Настройки». В синем блоке сверху вы сможете включить защиту от взлома методом полного перебора (Network Brute Force Protection) - для этого нужно запросить API ключ, который автоматически будет добавлен в настройки (но также отправлен вам на почту).

Нажмите “Security Check ” (самый верхний левый блок или в меню под «Настройки») и нажмите “Secure site”. После этого вы увидите список включенных модулей.

Следующий блок - «Основные настройки » (справа от “Security Check”). Так как плагин почти полностью переведен, каждый пункт имеет свою расшифровку - советую пробежаться по ним всем и посмотреть, что из этого наиболее актуально для вас (даже если не будете пользоваться, будете хотя бы знать, где что находится).

В режиме «Нет на мест е» вы можете установить время, когда административная панель будет недоступна. На постоянной основе этим можно не пользоваться, но вы можете использовать это для подстраховки, когда находитесь далеко от компьютера. При этом настроить можно как на постоянной основе (например, каждую ночь), так и один раз в определенный день и период времени.

Блок «Заблокированные пользователи » - тут все понятно, помещайте сюда всех, кого нужно заблокировать.

Local Brute Force Protection ” - это блок защищает от взлома путем перебора паролей. У вас он уже включен, настройки можно оставить по умолчанию.

«Резервные копии базы данных » - настройка резервного копирования, в бесплатной версии речь идет только про базы данных.

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

File Permissions ” - блок показывает права доступа к файлам.

Network Brute Force Protection ” - сетевая защита от брутфорса заключается в том, что если хакер пытался взломать чей-то другой сайт, доступ к вашему сайту у него будет также заблокирован, даже если он еще не начал атаку на ваш сайт.

SSL ” - вы можете настроить использование SSL в этом плагине, то если у вас сайт на хостинге Timeweb, я советую использовать настройки в панели управления сайтом.

Strong Password Enforcement ” - если ваш сайт предполагает регистрацию других пользователей (форум, блог…), тогда это настройка будет полезной, пользователям придется выбирать только сложные пароли для своих аккаунтов. В остальных случаях ее можно не использовать.

«Тонкая подстройка системы » и «Подстройка WordPress » - эти дополнительные настройки нужны для того, чтобы еще больше усилить защиту вашего сайта. Но есть один нюанс - включение некоторых настроек может повлиять на работу плагинов. Поэтому не стоит выбирать все сразу - включайте по одному пункту и проверяйте работоспособность вашего сайта.

Наконец, «WordPress Соли » - настройка позволяет добавить к паролю секретный ключ, подобрать который будет намного сложнее, чем пароль отдельно. Обычно это случайный набор символов, который добавляется при хэшировании. Периодически пользуйтесь этой настройкой («Изменить WordPress Соли») для того, чтобы сменить соль.

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

Заключение

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

  • Перевод

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

Эта статья сфокусирована на вопросах усиления безопасности WordPress - как административной панели, так и настроек блога, подразумевая все содержимое папки «wp-admin» , которое отображается только после авторизации . Мы сознательно выделили фразу "после авторизации " - вы должны четко осознавать, что только один простой запрос отделяет «злого хакера» и админку всего вашего блога или сайта! А последняя защищена настолько сильно, насколько мощный пароль вы выбрали.

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

1. Переименуйте папку wordpress.

Начиная с версии 2.6, стало возможным изменять путь к папке wp-content . К сожалению это до сих пор неприменимо к папке wp-admin . Думающие о безопасности блоггеры смирились с этим и стали надеяться, что это станет возможным в будущих версиях. Пока этого не случилось, предлагаем воспользоваться следующим альтернативным решением проблемы. После распаковки архива с файлами WordPress, вы увидите папку «WordPress» - переименуйте папку (в идеале во что-то непонятное вроде " wordpress_live_Ts6K" ) и после этого настройте соответственным образом файл wp-config.php , который находится в корневой директории.
Что нам даст это изменение?
  • Во-первых, все файлы WordPress не будут смешаны с другими файлами в корне сайта, таким образом мы повысим ясность корневого уровня.
  • Во-вторых, множество копий WordPress может быть установлено параллельно в папки с разными именами, исключая их взаимодействие, что делает это идеальным для тестирования
  • Третье преимущество напрямую касается безопасности: административная зона (и весь блог в целом) больше не находится в корневой папке и для проведения каких-либо действий по взлому сначала ее нужно будет найти. Это проблемно для людей, но что касается ботов - вопрос времени.

Несколько установленных версий в root-каталоге - это возможно!

Примечание: Если системные файлы WordPress больше не в корневой директории, и имя папки инсталяции изменено в соответствии с рекомендациями, описанными выше, блог будет все равно доступен по адресу wp-config.ru . Почему? Зайдите в раздел «Общие настройки (General settings)» вашего блога и введите в поле «WordPress address (URL)» реальный адрес блога на сервере, как показано в примере:

Адрес блога должен быть красивым и ненавязчивым

Это позволит блогу отображаться по красивому виртуальному адресу.

2. Усовершенствуйте файл wp-config.php

Конфигурационный файл WordPress wp-config.php содержит в себе некоторые настройки сайта и информацию для доступа к базе данных. Также там другие настройки, касающиеся безопасности (они представлены в списке ниже). Если таких значений в этом файле нет, или же имеются только установленные по умолчанию, вам необходимо, соответственно, добавить или изменить их:
  • Ключи безопасности: начиная с версии 2.7, в WordPress есть четыре ключа безопасности, которые должны быть правильно установлены. WordPress спасает вас от необходимости выдумывать эти строки самому, автоматически генерируя правильные ключи с точки зрения безопасности. Вам просто нужно вставить ключи в соответствующие строки файла wp-config.php. Эти ключи являются обязательными для обеспечения безопасности вашего блога.
  • Префикс таблицы заново установленного WordPress блога не должен быть стандартным «wp_» Чем больее сложным будет значение префикса, тем менее вероятна возможность несанкционированного доступа к таблицам вашей MySQL базы данных. Плохо: $table_prefix = "wp_"; . Намного лучше: $table_prefix = "wp4FZ52Y_"; Не стоит бояться забыть это значение - вам необходимо ввести его только один раз, больше оно вам не понадобится.
  • Если у вас на сервере доступно SSL шифрование , рекомендуется включить его для защиты административной зоны. Это можно сделать, добавив следующую команду в файл wp-config.php: define("FORCE_SSL_ADMIN", true);
Также вы можете регулировать другие системные настройки в конфигурационном файле. Четкий и исчерпывающий список доступных настроек доступен на странице Кодекса

Не пренебрегайте установкой правильных ключей безопасности!

3. Переместите файл wp-config.php

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

4. Защитите файл wp-config.php

Не все ISP серверы позволят вам передавать данные на более высокие уровни, чем корневая директория. Другими словами, не у всех хватит прав для осуществления предыдущего шага. Или по другим причинам: например, если у вас несколько блогов, при определенной структуре папок у вас не получится положить в корень все файлы, так как их имена будут совпадать для каждого из блогов. В этом случае мы можем запретить доступ к файлу wp-config.php извне при помощи файла .htaccess . Вот код для этого:

# protect wpconfig.php
Order deny,allow deny from all

Очень важно убедиться, что файл .htaccess находится в той же директории что и файл wp-config.php .

5. Удалите учетную запись администратора.

Во время процесса установки WordPress создает учетную запись администратора с ником «admin» по умолчанию. С одной стороны это вполне логично, с другой - пользователь с известным ником, т.е. ID - 1, обладающий административными правами, является вполне предсказуемой мишенью для хакеров с их программами подбора паролей. Отсюда следует наш совет:
  • Создайте еще одного пользователя с административными правами и вашим ником.
  • Завершите сеанс работы.
  • Залогиньтесь под новым аккаунтом.
  • Удалите учетную запись "admin ".
Если у вас не новый блог и под учетной записью admin вы уже публиковали посты или комментарии, то из предложенных вариантов в момент удаления, выберите пункт «Связать все записи и ссылки с:» и выберите имя нового пользователя:

Примечание: В идеале желательно чтобы логин нового пользователя отличался от отображаемого имени пользователя в постах, чтобы никто не узнал ваш логин.

6. Выберите сильный пароль.

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

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

В WordPress реализован интуитивно понятный индикатор стойкости набираемого пароля, который показывает цветом его уровень сложности:

7. Защитите папку «wp-admin».

Следуя пословице «две головы лучше одной», существует способ вдвое усилить защиту административной зоны. Защита регулируется файлом .htaccess , который должен находится в папке «wp-admin» вместе с файлом .htpasswd , который хранит логин и пароль пользователя. После обращения к папке, вам нужно будет ввести логин и пароль, но разница в том, что в этом случае авторизация контролируется на стороне сервера, а не силами самого WordPress.

Для того чтобы просто и быстро сгенерировать файлы .htaccess и .htpasswd , воспользуйтесь этим сервисом .

8. Запретите отображение ошибок на странице авторизации.

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

Несложно догадаться, как быстро сокращается вероятность подбора комбинации логина/пароля, когда система указывает что именно введено неверно. Простая строка кода, поможет решить эту проблему, достаточно добавить её в файл functions.php вашей темы:

Add_filter("login_errors",create_function("$a", «return null;»));

Изначальный/измененный вид страницы авторизации.

9. Ограничьте количество неудачных попыток авторизации.

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