ГлавнаяВёрстка WordPress › 8 способов защиты сайта на WordPress через Htaccess!


8 способов защиты сайта на WordPress через Htaccess!


Защита сайта

Здравствуйте, дорогие друзья и читатели – Sozdaiblog.ru!

Сегодня у нас очень серьёзная тема — Защита сайта.

Не так давно, я поднимал эту тему в статье – «Как защитить блог от взлома», но читая Ваши комментарии, в которых Вы стали часто говорить о том, что Ваш Веб-ресурс взломали, я решил её продолжить. Если Вы помните, то вся защита сайта была построена при помощи плагинов. Больше мы не будем их устанавливать, а поколдуем с WordPress htaccess.

Файл htaccess, находится в корневой папке Вашего ресурса.

Если у Вас такого файла нет, то нужно его создать. Это не сложно, создаёте любой текстовый документ на рабочем столе компьютера, присваиваете ему имя – «.htaccess» и через ftp-клиент вставляете его в корневую папку Вашего ресурса.

Затем, открываете его на редактирование и вставляете следующий код:

 

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

 

Этот код стандартный и устанавливается практически во всех файлах htaccess.

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

Все ниже приведённые коды, ставим строго после — # END WordPress.

 

Защита сайта в wp-config.php.

Все, кто сам устанавливал WordPress, знают файл – «wp-config.php». В нём хранится имя базы данных, пароль и логин. Думаю, ни кто из нас не хочет, чтобы эти данные попали в чужие руки.

Для предотвращения несанкционированного доступа к этому документу, вписываем в наш htaccess файл, следующий код:

 


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

Админ доступ, только с Вашего IP адреса.

Для нежелательного редактирования данных Вашего ресурса посторонними людьми, Вы можете ограничить доступ к папке администратора (wp-admin), при помощи блокировки IP адресов.

Чтобы это сделать, нужно создать новый файл htaccess и закинуть его в папку – «wp-admin». Затем, открываем его на редактирование и вписываем код, заменяя существующий IP адрес своим:

 

order deny,allow
allow from 237.070.33.1 (replace with your IP address)
deny from all

 

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

 

файл htaccess

Блокировка определённого пользователя.

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

 

<Limit GET POST PUT>
order allow,deny
allow from all
deny from 46.160.64.94
</LIMIT>

 

Таким образом, можно добавлять новых недоброжелателей, дописывая строчки:

 

deny from 205.095.41.1

Запретить доступ к wp-content.

В папке – «wp-content», хранятся Ваши темы, плагины, картинки и многое другое. Поэтому, будет не лишним обезопасить её от злоумышленников.

Вам снова потребуется создать новый файл htaccess, вписать в него код и закинуть в — «wp-content»:

 

<Files ~ ".(xml|css|jpe?g|png|gif|js)">
Allow from all
</Files>

 

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

 

Индивидуальная защита файлов.

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

 

<FilesMatch \.(?i:gif|jpe?g|png)$>
Order allow,deny
Deny from all
</FilesMatch>

 

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

 

защита сайта

Защита от спама.

При помощи htaccess файла, можно сделать блокировку от спама. Совместно с плагинами, это будет дополнительная защита сайта:

 

# protect from spam comments
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*Ваш домен.ru.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]

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

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

Чтобы прекратить бесконечное сканирование и показать этим гадам, где Ваш Robots.txt зимует, достаточно в файле htaccess вписать код с точным адресом:

 


RewriteBase /
RewriteCond %{REQUEST_URI} !^/robots.txt$ [NC]
RewriteCond %{REQUEST_URI} robots\.txt [NC]
RewriteRule .* http://Ваш сайт.ru/robots.txt [R=301,L]

Защита htaccess.

Смешно так звучит, правда? Мы столько времени потратили на защиту сайта при помощи различных плагинов и блокировок, а про то, что сам файл htaccess остаётся уязвим, забыли.

Следующий кусок кода, защищает все файлы, начинающиеся с — «hta», от просмотра ненужными людьми:

 


<Files ~ "^.*\.([Hh][Tt][Aa])">
    order allow,deny
    deny from all
    satisfy all
    </Files>

 

Теперь, защита Вашего сайта стала надёжная, как дом у Наф-Нафа из трёх поросят и ни один волк Вам не страшен.

А какие коды используете Вы? Поделитесь с читателями своими наработками!

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

На сегодня это всё…

 

С уважением, Денис Черников!




Сделайте, пожалуйста, доброе дело, расскажите о блоге своим друзьям:




254 комментарияА что думаете Вы?

  1. Михаил

    Полезная информация! Надо пробовать. Но вопрос, для некоторых способов, нужно создавать новый файл htaccess. Всмысле, я не понял, на сервере будут .htaccess, .htaccess1, .htaccess2 ? или просто 3 файла htaccess (например)?

    [Ответить]

    Денис Черников ответил:

    Именно так, но они будут отвечать за те папки в которых Вы будите устанавливать блокировки! Подписывать их 1-2...10 не нужно. Все они будут — .htaccess, но в разных папках!

    [Ответить]

    Михаил ответил:

    Все понял, разобрался) Когда прочитал, не так понял, Сейчас когда стал делать — дошло!

    [Ответить]

    Денис Черников ответил:

    Отлично, занимайтесь Михаил!

    [Ответить]

  2. Надежда Хачатурова

    Денис, с прошедшим Днем программиста! Спасибо за обещанную статью! Делаю закладку именно на нее. Насчет IP — на sweb можно ограничить доступ через хостинг, но меня именно и остановило то, что IP динамический.

    [Ответить]

    Денис Черников ответил:

    Спасибо за поздравление, Вас тоже с праздником!

    IP статический можно подключить у провайдера интернета, у моего это стоит 60 рублей в месяц!

    [Ответить]

    Надежда Хачатурова ответил:

    Вот, заодно и о статическом ip расскажу. Звонила провайдеру. МТС в России такую услугу оказывает только корпорациям. А вообще хотела сказать, что после добавления кода для блокировки спама ошибку 500 выдало. Пришлось удалить, к сожалению. Ух, много почистила сегодня гадости всякой. Спасибо Вам, Денис! Что бы без Вас делала? Научиться бы еще коды вредоносные удалять. Кодов-то нет уже, а лазеек полно.

    [Ответить]

    Денис Черников ответил:

    От лазеек Вы не избавитесь некоторые из них отвечают за правильную работу определённых вещей на сайте. У меня статический IP каждая собака может установить. Плати только абонентскую плату каждый месяц и всё.

    [Ответить]

  3. Юлия

    Очень полезная и нужная информация, но как все сложно-))

    [Ответить]

    Денис Черников ответил:

    А разве кто-то говорил, что будет легко! Пробуйте, Юлия! Только резервные копии делайте!

    [Ответить]

    Юлия ответил:

    Денис, плохо выучила вашу инструкцию, написала Вам на почту.Может поможете?

    [Ответить]

    Денис Черников ответил:

    Хорошо, обязательно посмотрю!

    [Ответить]

    Юлия ответил:

    Денис, возможно Вы знаете человека, который может проверить и удалить заражение на аккаунте? Очень надо.

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

    Юлия ответил:

    Конечно не бесплатно, это уж слишком нудное занятие, даже для самаритянина-))

    [Ответить]

    Денис Черников ответил:

    А вы сами не пытались проверить на вирусы, через ftp?

    [Ответить]

    Юлия ответил:

    Пыталась, но ничего у меня не получается.Хорошо, если знаешь как это делается, а если нет...

    [Ответить]

    Денис Черников ответил:

    Юлия, давайте так! Скиньте мне на почтовый ящик все данный по Вашему хостингу и сайту! Пароль и логин входа на хостинг, пароль и логин входа на сайт, адрес для ftp! В течении дня я посмотрю что там твориться, потом Вам на почту напишу, что и как! Я сейчас на работе, поэтому, в течении дня!

    [Ответить]

    Юлия ответил:

    Спасибо,Денис. Я все напишу на странице Вашей странице «Контакты».

    [Ответить]

    Денис Черников ответил:

    Хорошо, буду ждать!

    [Ответить]

    Юлия ответил:

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

    [Ответить]

    Денис Черников ответил:

    Пока не передумал!

    [Ответить]

    Юлия ответил:

    Денис, а если в настоящее время на все сайты установить Better WP Security

    толку не будет?

    [Ответить]

    Денис Черников ответил:

    Нужно пробовать!

    [Ответить]

    Юлия ответил:

    А я вам не помешаю в настройках?

    [Ответить]

    Денис Черников ответил:

    Юлия, Вы о чём?

    [Ответить]

    Юлия ответил:

    Я Вам отправила данные по хостингу, думала, что Вы посмотрите...

    [Ответить]

    Денис Черников ответил:

    Я ни чего не получил!

    [Ответить]

    Юлия ответил:

    Я написала на странице «Контакты» Я тогда попробую еще раз установить плагин, а Вы если не сложно напишите мне на почту, чтобы мне тоже на почту Вам данные отправить.

    [Ответить]

    Денис Черников ответил:

    Хорошо, сейчас напишу!

    [Ответить]

    Юлия ответил:

    Денис, извините, что напоминаю о себе. Но Вы мне не написали.Я установила плагин Better WP Security, стали приходить письма на почту о неудачных попытках взлома, а сегодня опять взломали, но тех поддержка активность прекратила, но в следующий раз отключит сайты.Может Вы можете что-то подсказать в настройках плагина...

    [Ответить]

    Денис Черников ответил:

    Юлия, я так и не получил ни одного Вашего письма!

    [Ответить]

    Юлия ответил:

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

    [Ответить]

    Денис Черников ответил:

    Не секрет — SOZDAIBLOG@yandex.ru

    [Ответить]

  4. blogrub

    Как то я на одном блоге прочитал статью пару «благодарных комментариев» это про эту статью :)

    [Ответить]

    Денис Черников ответил:

    Что не так?

    [Ответить]

    blogrub ответил:

    ждем очередную жесть :)

    [Ответить]

    Денис Черников ответил:

    Позже, сейчас нужно работать над безопасностью и раскруткой!

    [Ответить]

  5. Василий

    Нужно заняться защитой блога и ваша статья Денис мне в этом поможет.

    [Ответить]

    Денис Черников ответил:

    Да, Василий вперёд и с песней, только бэкапы делайте пожалуйста!

    [Ответить]

  6. Анастасия

    Я добавила в свой файл .htaccess четыре кода из приведенных здесь и сайт выдал мне internal server error... Так что стерла все до первоначального состояния) Даже не знаю, какой из четырех кодов так повлиял.

    [Ответить]

    Денис Черников ответил:

    Проверяйте, Анастасия! Я все коды на своём блоге протестировал и проблем нету!

    [Ответить]

    Анастасия ответил:

    Я не в претензии, просто забавно — Вы меня уже второй раз чужим именем называете :D То Юлией, то Светланой... =)))

    Проверю =) Все по очереди буду добавлять и смотреть, какой не сработал (может просто с шаблоном не сочетаются? у меня так плагин один не заработал...)

    [Ответить]

    Денис Черников ответил:

    Не обижайтесь, Анастасия!

    Я наверное заработался,очень тяжёлая неделя выдалась, иногда просто в полусонном состоянии отвечаю, почти не сплю! Извините, ещё раз!

    [Ответить]

    Svetlana ответил:

    Настя, это наверное потому, что я частенько Дениса мучаю вопросами, так что теперь проекция — если вопрос, то я ...

    Но я неспециально, просто хочу узнать,а кроме Дениса спросить не у кого.

    [Ответить]

    Анастасия ответил:

    Денис, все в порядке, ни в коем случае не обижаюсь =) Просто стало любопытно )))

    Светлана, может и так :) ))

    [Ответить]

    Денис Черников ответил:

    Вот и ладушки!

    Юлия ответил:

    Ну, Юлия, тоже понятно. Я тоже люблю подоставать с вопросами-))

    [Ответить]

  7. Svetlana

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

    А я правильно поняла, ели я с этим файлом все проверну, то можно убрать разные плагины по защите и акимест от спама или нет?

    Кстати, я участвую в семейном конкурсе, не хотите присоединиться и изложить свою теорию по идеальной семье?

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

    Svetlana ответил:

    Жаль, что не можете принять участие в конкурсе, но может успеете конкурс до 30 октября. Хотелось бы увидеть ваше мировидение не только на тему сайтов, но и простые человеческие.

    [Ответить]

    Денис Черников ответил:

    С человеческим намного сложнее чем с сайтом, там свои тараканы и заморочки!

    [Ответить]

  8. Раиса

    Денис,добрый день! Похоже мне сегодня везёт на актуальные статьи для меня. Именно эта тема для меня архиважна со дня создания моего сайта, и я просто не понимаю как её разрешить. В консоли ежедневно в красной рамочке висит сообщение переместить файл .htacctss в wp-content/plugins/wp-dbmanager и т. д. А я никак не пойму где находится этот файл, откуда его взять и как его переместить. Пробовала не однажды,папку wp-content нашла, а переместить этот файл не могу, потому как не знаю, где его найти. Если ясно описала свою проблему, могли бы дать подсказку? С уважением к вам,Раиса.

    [Ответить]

    Денис Черников ответил:

    Думаю, теперь Вы одолеете этого зверя и сможете защитить свой ресурс!

    [Ответить]

  9. Андрей

    я далек пока от этого

    [Ответить]

    Денис Черников ответил:

    Я так тоже себе говорил, когда тестировал такие коды, но ничего всё работает! Не бойтесь делать первые шаги!

    [Ответить]

  10. Михаил

    Денис, у меня в файле стоит такой код: Options -Indexes

    Options -Indexes

    # BEGIN WordPress

    RewriteEngine On

    RewriteBase /

    RewriteRule ^index\.php$ — [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    Меня интересует, что это у меня кроме стандартного кода занесено в файл?

    Спасибо!

    [Ответить]

    Денис Черников ответил:

    Это команда разрешающая или запрещающая просматривать просматривать каталоги Вашего ресурса.

    [Ответить]

  11. Михаил

    IfModule mod_rewrite.c

    /IfModule

    [Ответить]

  12. Денис Черников

    Всё копируется, не вижу проблемы!

    [Ответить]

  13. Олег

    Прямо Линия Маннергейма, враг не пройдет. А вообще, это удобно все фишки с htaccess в одном месте. Спасибо!

    [Ответить]

    Денис Черников ответил:

    Ну — Линия Маннергейма, это конечно сильно!)) Так маленький постик в помощь всем блоггерам!

    [Ответить]

  14. Андрей Бас

    Здравствуйте Денис, скажите (может не совсем по теме) Вы защищали свой блог от хотлинка?

    [Ответить]

    Денис Черников ответил:

    Да конечно защищал, а почему спрашиваете?

    [Ответить]

    Svetlana ответил:

    А что такое хотлинк?

    [Ответить]

    Денис Черников ответил:

    Защита картинок!

    [Ответить]

  15. Михаил

    Поставил блокировку от спама. При попытке зайти на блог получил сообщение:

    "Доступ запрещен (403)

    Доступ к запрошенной вами странице запрещен. Пожалуйста, обращайтесь к администратору...

    "

    [Ответить]

    Денис Черников ответил:

    Удалите последние две строчки, вордпрес их сам добавил гад!

    [Ответить]

  16. Андрей Бас

    Денис, только у меня так отображается Ваш блог? http:// s2.ipicture.ru/uploads/20120914/RBU76H3Q.jpg

    [Ответить]

    Денис Черников ответил:

    Нет, у меня всё в порядке!

    [Ответить]

  17. Алексей

    а как возобновить доступ, если запретить по IP, но IP вдруг изменится?

    [Ответить]

    Денис Черников ответил:

    Перепишите IP на новый, или просто код удалите и всё!

    [Ответить]

  18. Надежда, aka DivaDii

    Я в этот файл в deny from (закрыто доступ с...) отправляю особо злостных спаммеров.

    [Ответить]

    Денис Черников ответил:

    Так с ними и нужно, но у них может адрес быть динамический, тогда не прокатит!

    [Ответить]

  19. Андрей Бас

    Сегодня вроде попустило, виновником оказался, как и предполагал — RDS.

    Денис, я вот почему спросил про хотлинк: дело в том, что на самом деле мер против hotlinka нет (моё имхо)... Адрес картинки снял у всех, кто защищал свой блог, даже у Е. Попова. Простите что не по теме.

    [Ответить]

    Денис Черников ответил:

    Рад, что Вы справились с проблемой!

    Насчёт — hotlinka, я проверял, брал адреса, устанавливал картинки на другом блоге, всё работало, картинки не показывались!

    [Ответить]

  20. Андрей Бас

    Здравствуйте Денис. Вот пример: http:// s1.ipicture.ru/uploads/20120917/E65DTJSY.jpg

    Всё отображается...

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

    С ув. Андрей

    [Ответить]

    Денис Черников ответил:

    Привет, Андрей!

    Я только что проверял на двух блогах, с одного брал картинки, вставлял в другой и делал защиту, всё работает!

    Как Вы вставляете картинки?

    [Ответить]

  21. Vadar

    Спасибо большое! У вас тут стокому можно научиться! От меня твит!

    [Ответить]

    Денис Черников ответил:

    Пожалуйста и спасибо за твит! Заходите ещё!

    [Ответить]

  22. Михаил

    Спасибо за информацию. Был спамер — тупой и наглый бот, я поставил блокировку отдельного пользователя. Спамер исчез как дым :-) . Внес статью в закладки, если опять возникнут проблемы — буду штудировать ее дальше.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста, Михаил! Рад, что помогла моя статейка!

    [Ответить]

  23. Юлия

    А откуда может появиться активность вредоносного ПО на блоге?Это был взлом?

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

    Юлия ответил:

    А может, что сбой в работе плагина, который я активировала не как обычный, а через вставку скрина в код, дал такой эффект ПО?

    [Ответить]

    Денис Черников ответил:

    Этого я уже не знаю, вспоминайте, что Вы делали и пробуйте применить другие действия!

    [Ответить]

  24. Руслан

    Скажите а код из пункта «Ограничения для вредоносных пауков и приложений.» не запретит яндексу или гуглу сайт индексировать?

    [Ответить]

    Денис Черников ответил:

    Ни коим образом, у меня стоит и хлеба не просит. Всё индексируется и работает! Я не советую того, что я не проверил на себе.

    [Ответить]

  25. Юлия

    Денис, скажите, а в приведенных Вами кодах ведь надо заменять, где выделено другим цветом? Например меня интересует все коды, что связаны с защитой блога, кроме спама, блокировки адреса и защиты индивидуальных файлов.

    Вот например # BEGIN WordPress

    RewriteEngine On

    RewriteBase /

    RewriteRule ^index\.php$ — [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    # END WordPress

    Добавляется без изменений в любое любое есто файла?

    [Ответить]

    Денис Черников ответил:

    В приведённых кодах нужно заменять только там, где я дописываю разные фразы (например Ваш сайт/). В сё остальное вставляется, как есть. Цвет просто для красоты сюжета!

    [Ответить]

    Юлия ответил:

    А допустим вот этот код

    order allow,deny

    deny from all

    Куда конкретно его нужно вставить?

    [Ответить]

    Денис Черников ответил:

    Всё вставляется в самом конце!

    [Ответить]

    Юлия ответил:

    А в аккаунте только один Файл htaccess, вне зависимости от количества сайтов, или нужно редактировать в каждом сайте?

    [Ответить]

    Денис Черников ответил:

    Вы не тот файл редактируете, нужно не внутри аккаунта редактировать, а внутри корневой папке сайта!

    [Ответить]

    Юлия ответил:

    Просто у меня там на аккаунте четыре сайта, а первый почему-то идет как основной и его файл по-другому расположен почему-то...А вот когда делаем защиту папки – «wp-content» место куда загружать файл htaccess с вписанным кодом не принципиально? Просто в статье точно не указано, а он ведь состоит из нескольких каталогов. А просто отдельной папкой не вставляется...Я его в каталог index вставила-так можно? или должно быть конкретное место? Извините, Денис за назойливость, мне правда спросить не у кого-)) Это действительно надежно? Плагин мне пришлось деактивировать...

    [Ответить]

    Денис Черников ответил:

    Дорогая, Юлия, Вы мне сейчас рассказываете про мою же статью и говорите, что там не указано конкретно куда вставлять новый файл!)) Там всё написано чётко! Цитата из статьи по вашему вопросу:

    Вам снова потребуется создать новый файл htaccess, вписать в него код и закинуть в — «wp-content».

    Что именно Вы здесь не поняли? Создали файл новый и просто кинули в эту папку, если он там уже есть, то дописали в него новый код!

    Сам господь бог не даст 100% гарантии и плагин кстати тоже!

    [Ответить]

    Юлия ответил:

    Денис, а не подскажите насколько эффективна настройка почты на хостинге в «Почтовом менеджере».Мне пришло письмо с хостинга, что это необходимо для защиты электронной почты и собственных блогов через почту. Если это достойно внимания, может напишите-))

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

  26. Татьяна Чиронова

    Денис! Какой у Вас классный сайт, уже час не могу уйти с него. Спасибо Вам!

    [Ответить]

    Денис Черников ответил:

    Спасибо, Татьяна! Много работаю над этим!

    [Ответить]

  27. Александр

    Хммм можно добавить следующие виды кода

    //Защищаем install.php

    # for install.php

    Order Allow,deny

    deny from all

    Satisfy all

    ______________________________________________

    // неплохой Фаервол для вашего сайта

    # 5G FIREWALL from PerishablePress.com

    # 5G:[QUERY STRINGS]

    RewriteEngine On

    RewriteBase /

    RewriteCond %{QUERY_STRING} (environ|localhost|mosconfig|scanner) [NC,OR]

    RewriteCond %{QUERY_STRING} (menu|mod|path|tag)\=\.?/? [NC,OR]

    RewriteCond %{QUERY_STRING} boot\.ini [NC,OR]

    RewriteCond %{QUERY_STRING} echo.*kae [NC,OR]

    RewriteCond %{QUERY_STRING} etc/passwd [NC,OR]

    RewriteCond %{QUERY_STRING} \=\\%27$ [NC,OR]

    RewriteCond %{QUERY_STRING} \=\\\'$ [NC,OR]

    RewriteCond %{QUERY_STRING} \.\./ [NC,OR]

    RewriteCond %{QUERY_STRING} \: [NC,OR]

    RewriteCond %{QUERY_STRING} \[ [NC,OR]

    RewriteCond %{QUERY_STRING} \] [NC]

    RewriteRule .* — [F]

    # 5G:[USER AGENTS]

    SetEnvIfNoCase User-Agent ^$ keep_out

    SetEnvIfNoCase User-Agent (casper|cmsworldmap|diavol|dotbot) keep_out

    SetEnvIfNoCase User-Agent (flicky|ia_archiver|jakarta|kmccrew) keep_out

    SetEnvIfNoCase User-Agent (libwww|planetwork|pycurl|skygrid) keep_out

    Order Allow,Deny

    Allow from all

    Deny from env=keep_out

    # 5G:[REQUEST STRINGS]

    RedirectMatch 403 (https?|ftp|php)\://

    RedirectMatch 403 /(cgi|https?|ima|ucp)/

    RedirectMatch 403 (\=\\\'|\=\\%27|/\\\'/?|\)\.css\()$

    RedirectMatch 403 (\,|//|\)\+|/\,/|\{0\}|\(/\(|\.\.\.|\+\+\+|\|)

    RedirectMatch 403 \.(cgi|asp|aspx|cfg|dll|exe|jsp|mdb|sql|ini|rar)$

    RedirectMatch 403 /(contac|fpw|install|pingserver|register)\.php

    RedirectMatch 403 (base64|crossdomain|localhost|wwwroot)

    RedirectMatch 403 (eval\(|\_vti\_|\(null\)|echo.*kae)

    RedirectMatch 403 \.well\-known/host\-meta

    RedirectMatch 403 /function\.array\-rand

    RedirectMatch 403 \)\;\$\(this\)\.html\(

    RedirectMatch 403 proc/self/environ

    RedirectMatch 403 msnbot\.htm\)\.\_

    RedirectMatch 403 /ref\.outcontrol

    RedirectMatch 403 com\_cropimage

    RedirectMatch 403 indonesia\.htm

    RedirectMatch 403 \{\$itemURL\}

    RedirectMatch 403 function\(\)

    RedirectMatch 403 labels\.rdf

    _____________________________________________________

    // Блокировка входа из прокси серверов

    # Proxy

    RewriteEngine on

    RewriteCond %{HTTP:VIA} !^$ [OR]

    RewriteCond %{HTTP:FORWARDED} !^$ [OR]

    RewriteCond %{HTTP:USERAGENT_VIA} !^$ [OR]

    RewriteCond %{HTTP:X_FORWARDED_FOR} !^$ [OR]

    RewriteCond %{HTTP:PROXY_CONNECTION} !^$ [OR]

    RewriteCond %{HTTP:XPROXY_CONNECTION} !^$ [OR]

    RewriteCond %{HTTP:HTTP_PC_REMOTE_ADDR} !^$ [OR]

    RewriteCond %{HTTP:HTTP_CLIENT_IP} !^$

    RewriteRule ^(.*)$ — [F]

    Пожалуй достаточно

    [Ответить]

    Денис Черников ответил:

    Спасибо, Александр! Думаю, что читателям будут полезны эти коды!

    [Ответить]

    Ромка ответил:

    Куда вставлять этот код? И Правда ли он работает!

    [Ответить]

  28. Андрей

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

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

  29. Ольга

    Спасибо! Обязательно воспользуюсь вашими советами.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста, используйте на здоровье! Заходите в гости!

    [Ответить]

  30. Butch Bun

    Статья безусловно полезная, кое-что для себя почерпнул.

    Не понял только, почему столько женских комментов? :)

    [Ответить]

    Денис Черников ответил:

    Рад, что понравилось!

    Видимо девушки относятся более серьёзно к таким вещам!

    [Ответить]

  31. Diaz

    Здравствуйте Денис, учусь создавать сайт на wordpress, по рекомендаций плагина WSD security перенес файл .htaccess с корнея сайта в папку wd-admin, и по причине этого созданные странице на сайте перестали открываться, когда возвращаю файл обрат в корень, то все начинает работать, как мне решить эту проблему, заранее спасибо.

    [Ответить]

    Денис Черников ответил:

    А зачем Вы вообще его туда переносите?

    [Ответить]

  32. Diaz

    По рекомендаций WSD security, в начале он пишет что нужно сделать что обезопасить сайт, было около 6 пунктов, последний был красного цвета а остальные зеленые, в последнем пункте было написано на англ, как я понял нужно перенести фал в wd-admin, я перенес его, последний пункт стал зеленым, но потом обнаруживаю то что созданные страницы на сайте выдают ошибку и кидает на сайт хостинга

    [Ответить]

    Денис Черников ответил:

    А может нужно не файл перенести а настройки файла, или создать новый файл в wp-admin!!!

    [Ответить]

  33. Diaz

    То ли я что не так понял, сделал следующее действие скопировал файл .htaccess и записал его в корень, после этого все стало работать, и последний пункт остался зеленым, как это можно объяснить?

    [Ответить]

    Diaz ответил:

    Вот эти пункты

    A new version of WordPress (3.5.1) is available. You should upgrade to the latest version.

    Your table prefix is not wp_.

    Your WordPress version is successfully hidden.

    WordPress DB Errors turned off.

    WP ID META tag removed form WordPress core

    No user «admin».

    .htaccess file found in wp-admin/

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

  34. Людмила

    Очень полезная статья, главное, что доступно. Но, простите «чайника», после END WordPress можно вставлять два или три кода поочерёдно без пустых строк?

    [Ответить]

    Денис Черников ответил:

    Ставить нужно до «END WordPress», а не после!

    [Ответить]

  35. Людмила

    Ещё один глупый вопрос «корневая папка ресурса» это то что открывается сразу при Фтп соединении или это каталог, который называется так же как мой сайт, или это папка, которая носит моё имя пользователя на хостинге, или это папка publik?(С конфигом и контентом понятно, а вот самый первый .htaccess не уверена, что вставила туда куда надо.) Спасибо большое заранее (Очень хочется защитить сайт)(твинула и фейсбукнула)

    [Ответить]

    Денис Черников ответил:

    Корневая папка — это та которая называется, как Ваш сайт. В ней и находятся все файлы, которыми мы постоянно манипулируем. (htaccess тоже там)

    [Ответить]

  36. Людмила

    Последнее предложение первой части Вашей статьи гласит «Все ниже приведённые коды, ставим строго после — # END WordPress.» А все файлы, про которые идёт речь у меня находятся в папке publik.html рядом с папкой, которая называется как мой сайт. Может это особенность хостинга (ТаймВэб)? А ещё вчера всё было нормально, а сегодня на сайте можно видеть только главную страницу. Нажимаешь на метку или страницу выдает ошибка — запрашиваемая страница не найдена на этом сервере.Удалила все htaccess поочерёдно всё по-прежнему.

    [Ответить]

    Денис Черников ответил:

    Есть две папки, с названием блога. В одной все файлы а другая РЕЗЕРВНАЯ!

    [Ответить]

  37. Людмила

    Откатила! Фу-у-у! Всё работает. Начнём с начала? (Если я Вам не очень надоела).

    [Ответить]

    Денис Черников ответил:

    Начнёмс!))

    [Ответить]

  38. Людмила

    # BEGIN WordPress

    RewriteEngine On

    RewriteBase /

    RewriteRule ^index\.php$ — [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    # END WordPress

    Вот такой стоял в корневой папке, он отличается второй строчкой и пробелом перед #END.

    [Ответить]

    Денис Черников ответил:

    Ну и???

    [Ответить]

  39. Людмила

    А что это значит? А почему? Может это незначительно.Но любопытно. А пробел для чего, или специально, что бы дополнения вставлять.

    [Ответить]

    Денис Черников ответил:

    Людмила, Вам это зачем? Делайте, пока, как описано в статье. Со временем Вы во всём разберётесь. Не нужно идти в атаку на динозавра с авторучкой в руках.

    [Ответить]

  40. Людмила

    Так ведь мне так и непонятно куда вставлять куски кода между строками 1 и 9 или после строки 9 стандартного кода?

    [Ответить]

    Денис Черников ответил:

    Ставьте до #END WordPress!

    [Ответить]

  41. Людмила

    Спасибо и на этом.

    [Ответить]

  42. Валентина

    Здравствуйте, Денис!

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

    Денис, но как длоя блондинки, помогите, пожалуйста. Правильно ли я вставила код в файл .htaccess?

    #php_admin_flag safe_mode off

    #

    #order allow,deny

    #deny from all

    #

    order allow,deny

    deny from 83.222.109.110

    allow from all

    Options -Indexes

    RewriteEngine On

    RewriteBase /

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    # BEGIN WordPress

    RewriteEngine On

    RewriteBase /

    RewriteRule ^index\.php$ — [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    # END WordPress

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Валентина!

    Если Вы имеете ввиду:

    order allow,deny

    deny from 83.222.109.110

    allow from all

    то он стоит правильно, но лучше его переместить перед:

    # END WordPress

    [Ответить]

  43. Валентина

    Увы, код файла в комментарий попал не весь. Идет блокировка некоторых строк.

    [Ответить]

  44. Валентина

    Спасибо Вам огромное, Денис! Переставила код. Надеюсь, что атаку блокировала.

    [Ответить]

    Денис Черников ответил:

    А Вы посмотрите в логах! Если тот кто атакует получает 403 ошибку, то всё нормально.

    [Ответить]

    Валентина ответил:

    Ой, Денис! А для блондинки, плз, можно подробнее, в каких это логах я должна посмотреть? Извините, не знаю.

    [Ответить]

    Денис Черников ответил:

    Статьи поищите у меня про DDOS атаки — «Как выбить деньги из веб-мастера»

    [Ответить]

    Валентина ответил:

    Денис, спасибо Вам за помощь. Свои мытарства с блокировкой АйПи посетителя описала в статье http: //vdemchenko.com/sajt-svoimi-rukami/chto-delat-esli-na-sayt-idet-ataka/, у помянув и Ваше имя.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста, Валентина! Обращайтесь, чем смогу тем помогу!

    [Ответить]

  45. Дима

    здравствуйте, волнует вопрос при доступе только по 1 ip, может ли злоумышленник просканировать htaccess и узнав мой ip ему будет легче взломать сайт? Что тогда менять ip?

    [Ответить]

    Денис Черников ответил:

    Злоумышленнику не нужен Ваш ip для взлома сайта.

    [Ответить]

  46. Дима

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

    [Ответить]

    Денис Черников ответил:

    Да, на сервере в папке logs записываются все обращения к Вашему ресурсу в том числе и ложные. Защитится Вы от этого сможете лишь в том случае если закроете доступ всем ip адресам кроме своего.

    [Ответить]

    Надежда Хачатурова ответил:

    Я даже прибежала! Можно, Денис? Только ботам поисковым не запретите, Дима. Осторожно! К папкам или файлам — да, а к страницам — аккуратно. :)

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

  47. Дима

    хотел бы добавить, что в моем случае: я скачал бесплатный шаблон, потом его удалил полностью из папки фтп, но он успел заразить вредным кодом базы данных. Ломился зломышленник вовсю, в журнале прям отображались у меня весь его перебор — вызов функций, админку скрыл и переиминовал wp-admin, но он всё равно вызывал логин меню, и в итоге я сделал всё как у вас написано. Теперь перестал барабанить. Вывод: никогда не скачиваете бесплатные шаблоны и ваши советы помогли.

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

  48. Дима

    Здравствуйте, хотел бы у вас узнать: возможно ли заражение ftp ? например в моём случае я удалил базы данных и папку сайта в фтп, а потом поставил новый сайт и проделал ваши рекомендации, но мог ли вирус стать невидимым и заразить весь фтп сервер например?)

    [Ответить]

    Денис Черников ответил:

    Заражение через ftp возможно, но опять же весь сервер заразить сложно так как провайдер тоже не дремлет.

    [Ответить]

  49. Надежда Хачатурова

    Нет, Денис! Я поспешила в том, что не смогла правильно донести мысль. Если намеренно запрещать, то можно, естественно. У меня роботы получали 403 ошибку, в обеих поисковых системах. В Гугле, например, пишут, что это был общий сбой, потому что коснулось не меня одной. А у меня такие подозрения, что и сама могла переусердствовать в определенный период с запретами.

    [Ответить]

    Денис Черников ответил:

    Так мы и говором о намеренном запрете!)))

    [Ответить]

  50. Дмирий

    Денис здравствуйте! Почитал ваш блог и решил попробовать защитить свой сайт от постоянной нагрузки от определённых IP-адресов. Но вот проблема возникла с вашим кодом "Limit GET POST PUT>

    order allow,deny

    allow from all

    deny from 81.177.140.22

    deny from 37.99.30.103

    "

    Этот код я вставляю до «# END WordPress» и всё, сайт не работает. Может поямните в чём проблема? Так же не работают коды и парочку других. Я их все по одному проверил, но на данном этапе меня интересует только этот код. Спасибо!

    [Ответить]

    Денис Черников ответил:

    А кодировку Вы меняли на UTF-8. У меня все эти коды стоят и всё работает.

    [Ответить]

    Надежда Хачатурова ответил:

    Денис, я как птичка на веточке — сижу в своей почте и все вижу. :) Слушайте, а почему ДО wordpress? После же! Или я уже забыла? В новой строке после слова WordPress вставляем правило. Не так?

    [Ответить]

    Денис Черников ответил:

    Надежда, желательно ставить ДО. Если будет работать после, то ради бога.)))

    [Ответить]

  51. Надежда Хачатурова

    Странно, Денис! Усвоила для себя, что все вставляется строго после, и работает, кстати? — не раз приходилось через хостинг входить со своего динамического IP. Правда, странно. А сейчас посмотрела — прислали для другого сайта файл — там До. Ладно, спорить и что-то доказывать не буду — не специалист. Как показали, так и делала. Но у меня на 100% после.

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

  52. Влад

    Спасибо, очень полезные советы.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста и спасибо за одобрение!

    [Ответить]

  53. Светлана

    Денис, здравствуйте!

    Изучаю Ваши статьи. Все очень просто и доступно. Спасибо за Ваш труд.

    У меня вопрос. В начале статьи вы пишите что: «Все ниже приведённые коды, ставим строго после — # END WordPress.». А в комментариях пишите, что надо ставить до # END WordPress. Я немного запуталась. Как все же будет правильно?

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Светлана!

    Ставьте ДО!

    [Ответить]

    Светлана ответил:

    Спасибо!!!

    [Ответить]

    Денис Черников ответил:

    Обращайтесь!

    [Ответить]

    Надежда Хачатурова ответил:

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

    [Ответить]

    Денис Черников ответил:

    Вижу, Надежда!

    Вы правильно делаете, что пытаетесь разобраться во всём вот и Светлана теперь в наших рядах. Рад всхх Вас видеть.

    [Ответить]

    Надежда Хачатурова ответил:

    Денис, мое мнение о Вас справедливое: Вам можно доверять полностью. И пишу это не для Вас лично, а для тех, кто прочитает комментарий. Хорошо, конечно, что Светлана помогла отбросить сомнения насчет моих умственных способностей. :)

    Ура! Воскресенье начинается обменом любезностей!

    [Ответить]

    Денис Черников ответил:

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

  54. Светлана

    Денис, еще вопрос!

    В файл htaccess, который находится в корневой папке обязательно необходим код

    # BEGIN WordPress

    RewriteEngine On

    RewriteBase /

    RewriteRule ^index\.php$ — [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    # END WordPress

    А при создании данного файла в «wp-config.php» и «wp-admin» такой код нужен или нет?

    [Ответить]

    Денис Черников ответил:

    Именно в этом файле он необходим, а в остальных нет.

    [Ответить]

    Светлана ответил:

    Спасибо, Денис!

    [Ответить]

    Денис Черников ответил:

    Пожалуйста, Светлана!

    [Ответить]

  55. Надежда Хачатурова

    Ну, щеголяйте, а я вдогонку еще напишу. Почему-то представляла Вас со стандартной фигурой. :) Ошибалась?

    [Ответить]

    Денис Черников ответил:

    Фигура-то у меня стандартная, меня просто пошив не устраивает! Сейчас такие дудольки шить начали, как будто все Геи. Мне нравятся стандартные американские джинсы которые в своё время славились своей прочностью и долговечностью так как изготавливались из материала схожего с крылом паруса на яхте, а пошив был прямой без сужения.

    [Ответить]

    Надежда Хачатурова ответил:

    Тогда понятно. О качестве вообще речи идти не может. У меня внук полноватенький («ботаник» малоподвижный), пришлось покупать недавно джинсы во взрослом отделе. Попа торчит — ремень не помогает, хотя они для него, по идее, высокие. Оторвался лэйбл с мясом. В общем, кошмар. Правда, Вам повезло. Идите хвастайте!

    [Ответить]

    Денис Черников ответил:

    Хорошо, Надежда! Пойду косточки разомну. Готовлю для Вас очередной пост, а солнышко так и играет за окном.

    [Ответить]

  56. Антон

    Здравствуйте! В файл .htaccess периодически вписывают код перенаправления. WP плагины обновил и всячески защитил адмнику. Так же вписал в .htaccess код, защищающий его самого. Но .htaccess все равно продолжают менять, вписывают один и тот же зловредный код. Что же это значит? Что это происходит через админку хостинга? Пароль не однократно менял на сложные. Вычитал в одном месте, что могли взломать ISP-manager на хостинге и получить доступы к аккаунтам. Но хостер говорит, что вина на WP. WP несколько раз чистил от всего подозрительного и обновлял. Все равно продолжается насилие над .htaccess. Что делать?

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Антон! Ваша ситуация мне знакома! В данный момент у меня аналогичная проблема! Во всём виноват зловредный скрипт, который запускается из вне. Я так же как и Вы всё почистил и проверил. Теперь жду, когда это повториться, тогда вместе с хостингом мы сможем отследить путь этого гада и ликвидировать. Если всё выгорит, тот я обязательно напишу статью на эту тему. Но опять же я не знаю, когда будет следующая атака и изменение в .htaccess. Будем ждать и мониторить. Когда это произойдёт советую ничего не трогать иначе его не отследить. Сразу стучите на хостинг, пусть они выявляют паразита.

    [Ответить]

    Антон ответил:

    Ясно, спасибо. А если хостер говорит «мы не занимаемся вирусами, это ваша проблема» — лукавит?

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

    валентин ответил:

    во во и у меня такая же фигня, началась

    [Ответить]

  57. Дмитрий

    Здравствуйте, подскажите как прописать бан. когда неизвестный постоянно вводит wp-content? например http: //sozdaiblog.ru/wp-content я ввёл и бан получил как это сделать? php?

    [Ответить]

    Денис Черников ответил:

    Ограничьте доступ к каталогам в htaccess.

    [Ответить]

  58. Дмитрий

    Доступ ограничен, просто хочется сделать, чтоб когда доброжелатель вписывал wp-content или admin или ещё что то, чем нибудь удивить его и бан поставить или какую нибудь картинку страшную показывать именно на эти слова, а не на ошибку 404 страница не найдена.

    [Ответить]

    Денис Черников ответил:

    Сделайте редирект на необходимую Вам страницу с издёвкой!

    [Ответить]

  59. Дмитрий

    Здравствуйте. такой вопрос есть ли смысл в постоянном ip? Доброжелатель каким то образом узнал мой постоянный ip и перебирает h t t p: //hghltd.yandex.net/yandbtm?fmode=inject&url=http%3A%2F%2Fwww.мойсайт.ru%2F&tld=ru&text=%D0%B7%D0%B0%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D1%8C%20%D1%81%D0%B0%D0%B9%D1%82&l10n=ru&mime=html&sign=66126d84efecf72c6824034a75e6c439&keyno=0 and landed on http: //www.мойсайт/wp-content/themes/ifeature/cyberchimps/lib/js/jquery.jcarousel.min.js — хаха с моего ip Что это может быть?

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Дмитрий! Смысла в статическом IP нету, если Вы только не хотите, например, чтобы кроме Вас на сайт ни кто больше не заходил! Для всего остального это бредятина. На счёт перебирания с Вашего IP, не знаю! Сам пару раз сталкивался с этим, но проблему не решил.

    [Ответить]

  60. Дмитрий

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

    [Ответить]

    Денис Черников ответил:

    Думаю, что нет! Но за это можно и суд подать!

    [Ответить]

  61. olga

    Денис, а что вы думаете по поводу защиты папки плагины при помощи пустого index.html Я недавно прочитала на одном иностранном сайте. Что через браузер можно увидеть какие плагины установлены. Для безопасности в папку нужно закачать пустой index.html

    [Ответить]

    Денис Черников ответил:

    Ольга, нужно просто скрыть доступ к папке! На счёт index.html, где-то слышал!

    [Ответить]

  62. olga

    После того как я закрыла доступ к robots.txt. Он сможет выполнять свою функцию для индексации в Яндекс? После установки кода защиты, Яндекс не может его проанализировать.

    [Ответить]

    Денис Черников ответил:

    Вообще не понятно, зачем закрывать доступ к robots.txt. Он у всех открыт. Да и не нужен он никому! Яндекс и без него всё индексирует.

    [Ответить]

  63. валентин

    Здравствуйте Денис, а последний код, про защиту самого файла htaccess, куда вставлять? если я правильно понял, то вставлять надо в этот же htaccess?

    [Ответить]

    Денис Черников ответил:

    Привет, Валентин! Вы всё правильно поняли!

    [Ответить]

    валентин ответил:

    Понял не дурак, дурак бы не понял :)

    [Ответить]

    Илья ответил:

    уточнение: в каждый файл htaccess?

    [Ответить]

    Денис Черников ответил:

    Да!

  64. Наталия

    Очередной раз задаю вопрос про вставку кодов.

    В статье написано — Все ниже приведённые коды, ставим строго после — # END WordPress.

    В комментариях — перед # END WordPress.

    Где истина?)))

    [Ответить]

    Денис Черников ответил:

    Там особой роли это не играет. # END WordPress — это просто надпись показывающая конец кода.

    [Ответить]

  65. Илья

    Добрый день!

    При создании файлов .htaccess

    начальный код один и тот же как и в корневой папке:

    # BEGIN WordPress

    RewriteEngine On

    RewriteBase /

    RewriteRule ^index\.php$ — [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    # END WordPress

    а уж потом в конце в нем нужно дописывать дополнительный код ?

    Просто смущают эти куски кода взятие из корневого .htaccess "RewriteRule . /index.php [L]", index.php хотя новые .htaccess будут уже в других папках

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Илья! Рекомендую делать всё по инструкции, если не получится просто всё удалите!

    [Ответить]

    Tony ответил:

    После # END WordPress можно писать любой код для .htaccess, какой хотите. Я там дописал всякие коды, защищающие директории движка и сам .htaccess А еще дописал бан для всякой нечисти, которая баловалась POST-запросами и пыталась достучаться до директорий и файлов движка.

    [Ответить]

    Денис Черников ответил:

    Можно и до # END WordPress и после, просто это стандартная разметка.

    [Ответить]

  66. Илья

    Делаю по вашей инструкции) но этот момент не совсем ясный. Если не получится то узнаю когда снова взломают блог?

    Сделал скриншоты:

    http: //imger.ru/jpg/GvTpbFPcJrGmkan2/

    http: //imger.ru/jpg/GVzc11YIFjudMv9L/

    подскажите пожалуйста

    [Ответить]

    Денис Черников ответил:

    А почему код разный? По виду всё правильно!

    [Ответить]

    Илья ответил:

    Код разный так как в файле что в корне стоит код для защиты wp-config.php, а тот что в wp-content защищает его... так понял. Ну и в каждый из етих .htaccess добавил код по из защите.

    Что-то ссылки с картинками с предыдущего сообщения перестали работать (

    [Ответить]

    Денис Черников ответил:

    Ссылки я отключил, кому нужно вставят в окно браузера! Илья, просто сделайте то о чём написано в посте и не заморачивайтесь.

    [Ответить]

  67. Маша

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

    order deny,allow #Запрешено все, что не разрешено

    deny from all #Запрещено всем

    allow from ххх #Разрешено только мне:)

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

    Помогите, пожалуйста.

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Маша!

    Чем Вам помочь? Код прописан верно, пояснения есть! Может кодировку не соблюдаете!

    [Ответить]

    Маша ответил:

    Да вроде все соблюдаю... А еще не подскажите, если запретить доступ в папку wp-content, не повлияет ли это на карту сайта? Возможно, после моих ковыряний в этих файлах карта сайта, гененрируемая гугловским плагином для создания карты сайта, стала появляться с ошибкой. Ошибка загрузки таблицы стилей: Во время загрузки таблицы стилей XSLT произошла ошибка в сети Вообще не понимаю, откуда это взялось и как вернуть все обратно. Уже и плагин переустанавливала, и откат делала, результат тот же ((

    [Ответить]

    Денис Черников ответил:

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

    [Ответить]

  68. Маша

    Что-то не дописалось. Это для Files wp-login.php — доступ только моего IP

    [Ответить]

  69. Олег

    Здравствуйте Денис. Не могли бы Вы обьяснить мне смысл моего файла htaccess:

    # BEGIN WordPress

    RewriteEngine On

    RewriteBase /

    RewriteRule ^index\.php$ — [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule . /index.php [L]

    # END WordPress

    AuthName «public_html»

    AuthUserFile «/home/cp210195/.htpasswds/public_html/passwd»

    C «public_html» понятно, а откуда «IfModule», не ясно.

    [Ответить]

    Денис Черников ответил:

    В приведённом Вами коде IfModule я не увидел!

    [Ответить]

  70. Олег

    Опять не вышло. В начале файло идет код:

    (IfModule mod_rewrite.c) и потом закрывается: (/IfModule).

    Скобки я заменил, Ваш редактор их не хочет копировать.

    [Ответить]

    Денис Черников ответил:

    IfModule mod_rewrite.c — это просто условие установлен ли такой модуль на Апаче. Если установлен — то выполняются команды, заключенные между IfModule mod_rewrite.c и /IfModule. Просто если команды выполнять без проверки на установку модуля — может вылетать ошибка. А так ошибки не будет никогда.

    [Ответить]

    Олег ответил:

    Большое спасибо

    [Ответить]

    Денис Черников ответил:

    Не за что!

    [Ответить]

  71. stann

    добрый день. позвольте такой вопрос задать:

    каким образом в .htacess запретить доступ с ip принадлежащих стране, например, китаю?

    [Ответить]

    Денис Черников ответил:

    Здравствуйте!

    С ходу не скажу, но буквально сегодня такой код попадался!

    [Ответить]

  72. Валентина

    Денис! С Новым годом Вас!

    Нарыла код для блокировки стран:

    Order Deny,Allow

    # APNIC — azija

    Deny from 1 14 27 36 39

    Deny from 42.0.0.0/7

    Deny from 49

    Deny from 58.0.0.0/7

    Deny from 60.0.0.0/7

    Deny from 101 103 106

    Deny from 110.0.0.0/7

    Deny from 112.0.0.0/5

    Deny from 120.0.0.0/6

    Deny from 124.0.0.0/7

    Deny from 126 133 175 180

    Deny from 182.0.0.0/7

    Deny from 202.0.0.0/7

    Deny from 210.0.0.0/7

    Deny from 218.0.0.0/7

    Deny from 220.0.0.0/6

    Deny from all

    Надеюсь, я правильно поняла автора статьи

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Валентина!

    Вас тоже с Новым Годом!

    Спасибо за код!

    [Ответить]

  73. Валентина

    Ой! Не весь код Ваш блог пропустил! Там нет директивы LimitExcept. Может дополните текст статьи верным кодом для блокировки стран?

    Заранее спасибо!

    [Ответить]

  74. Валентина

    Не весь текст комментария Ваш блог пропустил! В коде предыдущего комментария не прошла директива LimitExcept. Денис, может дополните текст статьи правильным кодом для блокировки стран? Заранее спасибо!

    [Ответить]

    Денис Черников ответил:

    Хорошо, если не забуду обязательно сделаю!

    [Ответить]

  75. Сергей

    Денис, спасибо за статью, очень полезная информация!

    Защитят ли эти способы от взломов сайта через места ввода? Адресная строка, комментарии, гостевая книга.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста, Сергей!

    Каждый день придумывается что-то новое, поэтому 100% защиты нет!

    [Ответить]

    Сергей ответил:

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

    [Ответить]

    Денис Черников ответил:

    Плагин не посоветую, так как сам не использую. Советую прикупить статический ip адрес и поставить доступ только для него!

    [Ответить]

    Сергей ответил:

    Спасибо!

    Денис Черников ответил:

    Не за что!

  76. Яна

    Очень полезная информация! СПАСИБО! Понравилось про Наф-Нафа, так вы еще и с юмором, молодец.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста, Яна!

    Да иногда люблю пошутить немного!

    [Ответить]

  77. Кеша Аксенов

    у меня прописано:

    Options +FollowSymLinks

    RewriteEngine On

    RewriteCond %{HTTP_HOST} ^www.axe-pyrus\.ru$ [NC]

    RewriteRule ^(.*)$ http: //axe-pyrus.ru/$1 [R=301,L]

    мне прописывать код для robots.txt?

    или код 301 директа убрать или после него написать?

    [Ответить]

    Денис Черников ответил:

    Вы о чём?

    [Ответить]

    Кеша Аксенов ответил:

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

    И вопрос в следующем, у меня в файле htaccess прописан 301 директ, который я Вам прописал. А ваш код, мне куда вставлять после директа или перед, и будут ли они конфликтовать?

    Спасибо

    [Ответить]

    Денис Черников ответил:

    По идеи не должны конфликтовать, Вы ведь просто уточняете, где у Вас Robots.txt! Ставьте после!

    [Ответить]

  78. Кеша Аксенов

    и еще это код — его вставлять в конце или в начале файла

    order allow,deny

    deny from all

    satisfy all

    Спасибо

    [Ответить]

    Денис Черников ответил:

    В середине!

    [Ответить]

    Кеша Аксенов ответил:

    А в середине, это куда?

    [Ответить]

    Денис Черников ответил:

    Это туда!

    [Ответить]

  79. Юлия

    Спасибо большое, очень интересная инфоромация. А как быть с такими «чайниками» как я.Я никогда не разрабатывала сайт, только его наполняла. СЕйчас мой сайт взломали и выяснилось, что ключевые коды по перепосту на другие сайты вклинили в .htacess. В нем много мусора, но что мусор, что нет, я не понимаю. Скажите, пожалуйста,реально ли мне самой почистить его и как это сделать??? Я вроде не дура, но ощущаю, что знания прошли мимо меня.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста! Да, Вы можете сделать копию и удалить всё из этого файла оставив лишь один код для, который Вы можете взять из чистого движка на котором работает Ваш сайт! А потом при желании можете добавлять по одному из старого в новый, каждый раз проверяя и выявляя пиратский код!

    [Ответить]

  80. Гузель

    Здравствуйте Денис! Вы мне однажды помогли, поэтому учусь на вашем блоге. А просьба о помощи такая: С одного IP 178.216.76.26

    10.04 16:43:22 ru (472) 1166 обращений на одну страничку моего сайта в течении короткого времени. Обратилась в поддержку, такой ответ: «Заблокировали указанные IP добавив в файл .htaccess следующий код:

    deny from 178.216.76.26 178.216.76.58 178.216.76.39»

    Проблема в том, что обращения с этого IP не прекратились, а продолжаются с такой же скоростью. Это привело к Позиции в яндексе и гугле 0 с этого дня. Служба поддержки Джино отвечает на это:"IP заблокирован, при обращении он получает 403 ошибку. И не влияет на работу Вашего сайта"

    Помогите!!! Вы такой опытный и умный, уже наверняка встречались с такой ситуацией. Что делать?

    Ваша подписчица.

    [Ответить]

    Денис Черников ответил:

    Здравствуйте, Гузель!

    Если данный IP действительно получает 403 ошибку, то на сайт это не влияет! Для этого нужно посмотреть лог-файлы! Обычно, когда такое происходит, вероятнее всего, что кто-то устроил небольшую досс атаку или ктото пытается просканировать, скачать Ваш сайт! Нужно смотреть и наблюдать!

    [Ответить]

  81. Гузель

    Спасибо за ответ.Обращения с этого IP продолжаются. Служба поддержки говорит, что не видят проблем, советуют ждать. Буду смотреть и наблюдать.

    [Ответить]

    Денис Черников ответил:

    Пожалуйста! Обращайтесь!

    [Ответить]

  82. KursyManikura.ru

    Стыдно. Это не рабочий код

    Allow from all

    Должно быть обязательно

    Order deny,allow

    deny from all

    [Ответить]

    Денис Черников ответил:

    Какой именно код, целиком напишите!

    [Ответить]

  83. Мария

    Спасибо за отличную статью! Все очень по делу и простым языком ))

    [Ответить]

    Денис Черников ответил:

    Пожалуйста! Заходите ещё!

    [Ответить]

  84. Дмитрий

    Отличная, подробная и понятная статья! После того как мой сайт скопировали «один в один», вместе с дизайном и БД — пришлось серьезно заняться безопасностью и этот пост мне в этом помог.

    Спасибо, Денис!

    [Ответить]

    Денис Черников ответил:

    Пожалуйста, Дмитрий!

    [Ответить]

Оставить комментарий!

Вверх