Ваш WordPress блог один хрен сломают!

Так и есть. Если вы делаете много блогов, сплогов, дорвеев, или блоги на авто контенте, то в один прекрасный день обнаружите, что ваши блоги «сломали». Как минимум вы будете чистить папки и файлы и гадать насколько все плохо. Как максимум удаление (замена) файлов, или доры на ваших доменах.

Я перепробовал разные методы защиты. Их всех обходили. И вот к какой защите я пришел на данный момент исходя их самых очевидных методов взлома.

Вот так выглядит мой файл .htaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

<Files wp-login.php>
order allow,deny
deny from all
</Files>

<files wp-config.php>
order allow,deny
deny from all
</files>

<files xmlrpc.php>
order allow,deny
deny from all
</files>
# END WordPress

RewriteEngine On
#majestic.com
RewriteCond %{HTTP_USER_AGENT} MJ12bot [OR]
#semrush.com
RewriteCond %{HTTP_USER_AGENT} SemrushBot [OR]
#moz.com
RewriteCond %{HTTP_USER_AGENT} DotBot [OR]
#ahrefs.com
RewriteCond %{HTTP_USER_AGENT} AhrefsBot
RewriteRule .* – [F]

 

Эта часть отвечает за работу ЧПУ.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

 

Собственно эта часть блокирует файлы, которые самые уязвимые.

<Files wp-login.php>
order allow,deny
deny from all
</Files>

<files wp-config.php>
order allow,deny
deny from all
</files>

<files xmlrpc.php>
order allow,deny
deny from all
</files>
# END WordPress

 

А эта часть для снятия нагрузки с сервера. Блокировка основных ботов (тут не Гугл, или Яндекс), которые нагружают сервер больше чем сами поисковики.

RewriteEngine On
#majestic.com
RewriteCond %{HTTP_USER_AGENT} MJ12bot [OR]
#semrush.com
RewriteCond %{HTTP_USER_AGENT} SemrushBot [OR]
#moz.com
RewriteCond %{HTTP_USER_AGENT} DotBot [OR]
#ahrefs.com
RewriteCond %{HTTP_USER_AGENT} AhrefsBot
RewriteRule .* – [F]

Как это сделать?

создаем файл .htaccess (можно любой текстовый, а переименовать уже на сервере) и загружаем в корень домена (в корень самого блога, если блог в папке).

Я не могу попасть в админку блога? Да, как и любые кулхацкеры. И вам придется каждый раз менять (переименовывать) файл .htaccess. Но вы мне еще скажете спасибо за это 🙂

А еще:

  • Используем минимальное количество плагинов
  • Только авторитетные плагины
  • Любые отключенные, не использованные плагины удаляем (физически) с сервера
  • Ставим темы только с wordpress.org
  • Любые отключенные, не использованные темы удаляем (физически) с сервера

15 thoughts to “Ваш WordPress блог один хрен сломают!”

  1. каждый раз переименовывать файл запарно
    я ставлю двойную авторизацию на админку через .htpasswd

    AuthType Basic
    AuthName «Protected Area»
    AuthUserFile /home/***/public_html/.htpasswd
    require valid-user

    1. каждый который? куки держит до сутки. утром авторизовался, до вечера остается.
      или приходится выходить, входить несколько раз в сутки? именно делая sign out

    1. точно проще? прям вот проще, чем заливать один файл .htaccess на все блоги и спать спокойно? )

      1. «И вам придется каждый раз менять (переименовывать) файл .htaccess.»

        Если нужно постоянно переходить в админку + доступ у нескольких авторов; То конечно же проще изменить URL админки, чтобы его знали только те, кому нужно.

        ..даже если делать для кучи ГС, не понимаю этого фетиша по постоянному изменению htaccess, . Напиши php или bash скрипт, который будет автоматически URL админки изменять, и вместе с htaccess заливай этот скрипт (а лучше вообще это всё в один скрипт объединить).

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

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

    1. а кто ноет?
      дохрена плагинов, тем, модификаций, лояльность Гугл, годы разработок…
      но разумеется проще писать свою CMS, скрипт, или делать на статике 🙂

  3. Хуйню несешь. Такой же, как я. Где-то кто-то пернул, а кто понятия не имею. Закрой свой отсталый мозг от индексации и тогда тебя никакие кошки в задницу не выебут!

    1. я не спец, на самом деле. тоже прочитал тут и там, начал тестировать. у меня работает.

  4. Зачем эти переименовывания? Чтобы не переименовывать постоянно htaccess, просто разреши доступ к wp-login.php только для своего ip или подсети

    order deny,allow
    deny from all
    allow from 1.1.1.1

    где 1.1.1.1 — твой ip
    И всё, только ты сможешь получить доступ к админке с веба.

    И wp-config.php нет смысла закрывать. Там только объявляются константы и вывода на экран в принципе нет.

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

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