Всем доброго времени суток.
Ниже будут перечислены основные меры защиты своего блога на движке WordPress. Кому-то они покажутся наивными, но о них написать все равно нужно. Особенно советы пригодятся тем, кто имеет интернет магазин для wordpress.
Предлагаю двигаться от простого к сложному:
Во-первых, нужно придумать хороший пароль к своему админскому аккаунту. Под хорошим паролем понимаю пароль из 10-15 цифр и букв разного регистра. В идеале можно разбавить пароль знаками препинания, такими как #@&)%.
Последние версии WordPress’а изначально создают надежные пароли для аккаунта, а вот логин используют один и тот же: admin. Если кто-то захочет взломать Вас, то скорее всего и будет подбирать пароль к такому логину. Поэтому рекомендую изменить его.
Во-вторых, нужно своевременно обновлять версии WordPress’a и всех плагинов. Программисты пишут новые версии вовсе не потому, что у них кончились деньги на пиво и нужно заработать новые. В каждой новой версии исправляются какие-то баги, возможно и угрожающие безопасности. Процесс обновления автоматизирован и не должен потребовать особых усилий. Однако рекомендую заранее сделать бэкап (о нем ниже).
Бэкап — резервное копирование — создание и сохранение копии всех данных на своем носителе. Можно использовать плагин WordPress Database Backup. Бэкапами нельзя пренебрегать. Мало ли что может придти в голову хостерам или злобным хакерам. Будет очень обидно, если Ваш блог с кучей хороших постов бесследно исчезнет.
О том, для чего устанавливать антиспам-плагины, думаю, говорить не нужно. Можно установить один из них. Работают они все почти одинаково: при наличии N ссылок в комменте отправляют его в спам-список. Может по ошибке отправить туда нормальный коммент. Плюсом таких плагинов является и то, что они сравнивают IP комментатора с черным списком.
Плагин же Bad Behavior вообще не пускает IP из черного списка на блог.
Полезен будет плагин Limit Login Attempts. Он блокирует доступ к блогу после четырехкратного ввода неправильного пароля. Блокирует на 20 мин. Благодаря этому плагину процесс подбора пароля растянется еще на 10-20 веков…
Одним (ли) из наиболее популярных плагинов для обеспечения безопасности является WP security scan. Главная его функция — сканирование блога на предмет дыр. Например, он может сравнить права доступа на ваши файлы и папки с правами, которые должны на них стоять. Точнее не должны… а быть максимально узкими без потери функционала. Есть в плагине функция быстрой смены прав доступа. Кроме этого WP Security Scan может изменять названия таблиц в базе данных. По умолчанию они начинаются с «wp-«.НЕ ЗАБУДЬТЕ бэкапнуться перед этим процессом. Смысл смены имен такой же, как и с админским логином — меньше знает злоумышленник — крепче спишь ты.
Ну и на последок поговорим о файле.htaccess. При каждом обращении к вашему блогу сервер проверяет этот файл. В нем находятся настройки сервера конкретно для вашего блога. .htaccess — возможность перенастроить файл httpd.conf — главные конфиги сервера. Инструкции в фале .htaccess действуют на все файлы и папки, вложенные в ту, где лежит сам файл и кроме тех, в которых находится другой «.htaccess». Кроме всех прелестей и возможностей .htaccess нас сейчас больше всего интересует возможность не пускать на блог определенные/все кроме определенных IP. Рекомендую запретить доступ в админку с не ваших IP. Для этого нужно поместить .htaccess в папку wp-admin и прописать в нем
AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName “Access Control”
AuthType Basic
order deny,allow
deny from all
allow from xxx.xxx.xxx.xxx
Что означают первые строки точно не скажу, а вот последние две означают следующее «запрещать доступ всем, кроме данного IP». Можно писать несколько IPшников с новой строки, после последнего ставится точка.
А вообще нашел удобный сервис — генератор .htaccess Здесь с помощью простого интерфейса можно сделать мощный файл .htaccess
Ну, вот, пожалуй, и все. Ах да, забыл самое главное — не разбалтывайте свои пароли за кружкой пива в общественных местах! 🙂
Роман Швыков 06.06.2009
>> Плагин же Bad Behavior вообще не пускает IP из черного списка на блог.
Ни за что бы не поставил, так как у нас в основном динамические IP адреса, если кто то из моей сети напакостит, то соответственно и я не смогу зайти на блог — ИМХО это не правильно!
Насчет логина — согласен, странно что он после установки ставит только admin, а не предлагает ввести свой, хотя это тоже спорный момент! Если в движке нет SQL инъекций, то подобрать пароль к учетке admin можно только с применением жесткой силы (брутфорс), а это почти не реал….
Но опять таки есть и другие методы взлома….так что я за то что бы включили ввод логина админа!
Кста вроде с 10.06 будет новая версия WP 2.8!
Кочнев Илья 06.06.2009
«WP security scan» вот с ним не сталкивался. Надо посмотреть поближе 8) Спс )
TiamatInc 06.06.2009
Банить доступ на блог по IP это слишком жестоко, далеко не у всех он разный, из-за одного мудака, может пострадать много людей.
Вот к админке — совсем другое дело 😉
Стрекоза 06.06.2009
Интересная статья, спасибо ))) Я интуитивно чувствовала что пароль надо позабористей подобрать, а вот насчет логина… как то в голову не приходило ))
Макс 06.06.2009
Спасибо, полезная статья 🙂 Только насчет антиспам плагинов — ИМХО крутовато. Я вообще пользую простую каптчу и модерирую комментарии. И региться не позволяю, а то повадились делать так: регить акк, комментить без ссылки, а после аппрува через некоторое время ставить ссыль в профиль.
Iceman 07.06.2009
Чем больше плагинов — тем больше дыр и тем медленнее ваш блог. имхо
Сhief 08.06.2009
Смена пароля — обычное дело, должно войти в привычку. Хакеры народ такой, им все «интересно»…
Freebies 08.06.2009
Еще бы добавил один плагин — belavir (php MD5). Обеспечивает проверку целостности файлов WordPress.
IBOX 08.06.2009
Регистрируйтесь на блогах IBOX. Этот сервис позволяет размещать свою рекламу. А за рекламу размещенную самим сервисом на страницах написанных пользователями последним выплачиваются комиссионные.
D_hunter_ 08.06.2009
Вот кстати)) боольшой плевок в сторону безопасности давать права скриптам сторонних контор
Купе 09.06.2009
Плагины обеспечивающие безопасность нужно ставить первыми ни в коем случае ими не пренебрегать…..
Насчет безопасного пароля все просто:
1. В пароле должны быть буквы, цифры и какой-то знак.
2. Длина пароля не должна быть менее 8 символов.
3. Пароль должен меняться не реже 60-ти дней.
TiamatInc 09.06.2009
А смысл в смене пароля? Если он изначально сгенерирован с учетом нормальных требований к безопасности, то менять его совершенно незачем.
Купе 09.06.2009
пароль могут подсмотреть
пароль могут отловить снифером
пароль могут достать с кеша браузера
и самая главная причина — у некоторых людей пароль один на несколько систем и это очень плохо. Например, зная ваш пароль входа в чат, админ этого чата может попробовать зайти с ним в админку вашего сайта или на вашу почту.
D_hunter_ 09.06.2009
Кстати есть еще совет не храните пароль на рабочем столе рабочего компьютера в файле «пароль от админки»
TiamatInc 09.06.2009
Точно, ещё надежнее его хранить на бумажке прилепленной к монитору 🙂
D_hunter_ 09.06.2009
или под клавой))
VitaliyRain 15.06.2009
Или если на то пошло в сейфе), менять пароль раз в неделю должно стать привычкой. Вы правы, использование одного и того же пароля, ни к чему хорошему не приведет
Infato 16.06.2009
Просто надо быть внимательней и особо не загонятся на безопасности, чтобы не сделать только хуже пользователям, которые зарегистрированы у вас в блоге…не будешь же прописывать каждому пользователю айпишник..
но и писать пароль от админки на листочке не стоит 🙂
Дизайнер-художник 01.07.2009
А меня вчера вечером взломали, точнее видимо как-то прочухали пароль. Версия вордпресса 2.8 от Лекактуса. Сам пароль надёжный был, символы, цифры, регистр. В общем опубликовали статью под названием: «Интересный сайт о жизни в интернете: программирование, верстка, seo». Куча текста напихали, 3 ссылки и от моего (якобы) имени администратора опубликовано. И под рубрикой новости (которой у меня не существует). Больше никаких следов, IP тоже не знаю как узнать, кто заходил? Обнаружил час спустя после публикации (хорошо, что недолго), но думаю, что в ридер попала публикация.
Кому интересно, вот скриншот этой статьи
Никогда не думал, что в версии 2.8 это возможно? Может кто разъяснит? Было бы интересно почитать мнения знающих людей.
Судя по whois размещенным ссылкам, автор 3-х сайтов один и тот же — некий Aleksey V Bertram из Ижевска. Будьте бдительны, а я пока пароли поменял все..
Темыч 01.07.2009
А я вчера в ридере читал — подумал еще что за чушь.
Про IP не знаю, зато можно письмо хостеру накатать, если таковой имеется. Совсем уже охренели со своими ГС.
Илья 27.04.2010
Можно еще вставить в function.php код для скрытия ненужной информации из тега :
remove_action(‘wp_head’,’wp_generator’);
remove_action(‘wp_head’,’rsd_link’);
remove_action(‘wp_head’,’wlwmanifest_link’);
remove_action(‘wp_head’,’index_rel_link’);
remove_action(‘wp_head’,’parent_post_rel_link’, 10, 0);
remove_action(‘wp_head’,’start_post_rel_link’, 10, 0);
remove_action(‘wp_head’,’adjacent_posts_rel_link’, 10, 0);
Еще видел плагин для подмены версии WordPress в теге
remove_action(‘wp_head’, ‘wlwmanifest_link’);
Андрей Лем 15.12.2011
Есть еще один хороший плагин для WP. Называется TAC (Theme Authenticity Checker). Он проверяет Файлы темы на наличие нежелательного кода. Если такой код находится, плагин показывает в каком файле, полный путь к файлу и номер строки. При помощи этого плагина отсеял кучу тем с кодированными исходящими ссылками и хайджеками. Очень советую его устанавливать если вы часто меняете темы оформления.