Запретить доступ к сайту по IP через htaccess – дело трех минут

Привет, друзья! Сегодня решила продолжить вчерашний разговор о логах, чтобы рассказать о том, каким мой путь был дальше. В каких только вариациях я ни вводила поисковый запрос «как запретить доступ к сайту по IP через htaccess» и получала один и тот же результат. Объясняю: во-первых, на всех сайтах наверху поиска копипаст сплошной, слово в слово. Сталкивались уже с таким. Полистала дальше, где пошел хороший рерайт, но суть оставалась той же. Меня интересовал один вопрос: в какое именно место файла htaccess вставлять запрещающий код. 

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

Доступ к управлению логами у меня был. В административной панели хостинга заархивировала и скачала на компьютер файл access_ log. К сожалению, так и не освоила NotePad+, поэтому после открытия файла искать вредителя пришлось вручную, глазами. Труда это не составило, потому что весь текст был просто испещрен цифрами 213.87.240.227. Посмотрела, с какой периодичностью был запрос к блогу – каждую минуту. Даже проверила для гарантии, что этот IP зарегистрирован в Екатеринбурге.

Теперь мне нужно было забанить его – запретить доступ в файле htaccess.

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

Order Allow,Deny
Allow from all
Deny from 213.87.240.227 213.87.241.187

На страх и риск вставила в конце имеющейся записи, и все получилось. Как было 664 просмотра из Екатеринбурга, так они и замерли. И с блогом ничего не случилось, слава Богу!

Действительно, файл htaccess дает множество возможностей для управления сайтом, но если вам надо, сходите в поисковую систему. Там общих слов о различных функциях написано много — в расчете на продвинутых, вероятно. Можно, например, всем запретить, а только кому-то разрешить, если переставить местами Allow и Deny. АйПи можно дописывать, каждый с новой строки. Есть возможность запретить и динамические IP, и придется это сделать, вероятно, потому как в комментарии у затейника, который меня вынудил все это освоить, две циферки в IP стоят другие. Если он продолжит, буду поступать уже более решительно.

Отредактировала файл htaccess непосредственно на хостинге, сохранила, проверила работу блога – все в порядке.

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

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

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

как запретить доступ к сайту по IP

Запретить доступ к сайту по IP через htaccess – дело трех минут: 27 комментариев
  1. Если честно, то мне уже смешно, причем смеюсь не над вами, а над Игорем. Так спалиться, по IP. Просто капец…
    Допустим, вы добавили IP данного человека в htacсess, что этот человек увидит, когда войдет на ваш блог?

    1. Увидит он сообщение Forbidden, но в плане нагрузки это поможет только частично… запросы то идут… Но всё же непонятно как эти запросы фиксирует счётчик… ну рази что по логам сервера определить нагруз можно было бы…

      1. Не знаю, Костя. Вероятно, работают студенты, потому что профессионалы и не стали бы х-ней маяться. Мне самой стало интересно — а не стать ли хакером. Счетчик LI не показывает ничего, нагрузка на сервере тоже упала. Но как все закручено! Не просто IP пользователей, а переходы с сайтов! Обалдеть! Может, играют во что? И по два тычка с одного IP. Не больше. Если Вам интересно, могу лог-файл прислать голову поломать. Там немного — за 2 дня 7 тысяч строк. 🙂

  2. Вы же понимаете, что это троль, которому заниматься больше нечем, причем, тупой. Нормальный человек стал бы это делать? Оргазм, наверное, испытывает.
    Что увидит, не знаю. Можно создать страницу переадресации, где ему будет написано, что сайт удален за то-то и то-то. Возможно, у меня просто ошибку какую-то выдает. Кстати, банить надо не по полному IP, а только по первым 5-6 цифрам. Вот такие мелочи познаются. У какого адрес фиксированный? Ни у кого, наверное. Единственное, что сейчас все в городе, пользующиеся услугами данного провайдера, не смогут зайти.
    Точно, Вы мне мысль одну подсказали.

  3. Надежда, вы правильно подметили, что данная тема актуальна только для статического IP. В тоже время я не советовал бы блокировать целый массив IP, т.е. указывать часть IP-адреса — заблокируете невинных людей. Обойти же запред через Proxy не составит особого труда… для знающего человека.

    Отмечу и то, что такой запрет не особо спасает ситуацию и в плане нагрузки. Да, человеку не получает содержание запрашиваемой веб-страницы, но запрос то к сайту осуществляется. Таким образом идёт накрутка по лимитам хостинга, что и приводит к падению сайта и даже его блокировки хостингом… за превышение упомянутых лимитов.

    Что тут делать? Надо просто делать то, что можно, а дальше уповать на высшие силы… Вы всё сделали правильно Надежда. Я бы ещё рекомендовал поставить полномасштабный запрет (с небольшой лазейкой для себя) на файл wp-login.php (именно его в основном и дидосят, т.е. через него пытаются взломать блог), ссылку я на эту тему вам уже как-то давал. Удачи!

    1. Вы правы, во-первых, в том, что мер недостаточно оказалось. Пошли бомбить якобы из США. Мастера на все руки. Да и во всем остальном Вы правы. Спасибо за поддержку.

  4. Мне просто интерестно, а чего они хотели добиться, нагружая сайт каждую минуту?
    Более того, это ведь не Нагрузка и никак не DDOS, раз вот так, с одного IP.

    1. Да нет, Роман, с одного только сначала. Потом была куча или туча. Думаю, кто-то просто практиковался. Тем более, вряд ли без алкогольного возлияния. Правильно мне ответили на форуме вебмастеров google о мальчишках, дразнящих собаку. Я им пригрозила теоретически, они ответили, но сразу делом. Все стоит перед глазами эта карикатура бабки за компом — реклама курсов пенсионного фонда или что-то такое «Ну, хакеры, держитесь!» Из жизни сюжет. 🙂
      Насчет плагина — спасибо большое. Совет просто бесценный. Применю обязательно. Для меня же разницы никакой — чистит и чистит.

  5. А ещё рекомендую Вам использовать плагин «W3 Total Cache» вместо используемого Вами «WP-Super-Cache».
    В предложенном мой намного больше настроек и возможностей кэширования и тогда запросы вот таких вот Перцев просто будут фоновым шумом 🙂
    Но в идеале конечно, настройка плагина должна быть в тандеме настройки веб-сервера (nginx+php-fpm/apache) на высокую производительность.

    1. Роман, караул! Там такие настройки требуются! Что там менять или оставлять по умолчанию? Гида надо. Деактивировала пока, к сожалению. Классная вещь, конечно, но у меня сейчас перегруз мозгов от технарских тем. Я же «музукант» по профессии. 🙂 Тайм-аут хоть бы на денек.

      1. Добрый день! Подписан на комменты, много нового и интересного узнаю из них. 🙂
        Надежда, вот статья по этому плагину _www.web-ideas.com.ua/plugins-wp/uskorit-zagruzku-wordpress-cherez-w3-total-cache-plugin.html

        1. Да, неплохая статья.
          Но там описано кэширование на Диск. Это конечно же не самый быстрый вариант, но то, что нужно включать кэширование Database и Object — это просто маст. Minify тоже. А вот у кэширования браузером есть подводные камни, лучше с ним не играться, а то может вылезти боком для посетителей (а вот DDOSеров таким точно не напугаешь).

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

          2. Роман, я так понимаю, что у меня доступно в плагине все. С самого начала горит зеленым «включен». Все совместимо прекрасно. Метод кэширования стоит везде по умолчанию «Диск», и есть еще несколько вариантов (не все). Насчет браузерного поняла, кстати, в нем галочка стоит уже.

            1. Вот как-раз меня и интересует доступные пункты методов кэширования (помимо «Диск»). От этого напрямую зависит эффективность.

              1. Там в середине есть 4 opcode (правильно написала? пока шла, забыла). Пассивны 3 последних (кроме верхнего). Остальные все активно. Везде же, наверное, в одинаковом порядке они идут?

              2. В общем, получается три варианта: диск, альтернативный и последняя строчка mem…

              3. О, так это отлично, если есть Memcached, но нужно знать его адрес и порт. Это наверное стоит узнать у хостера.
                Так что проще всего сейчас настроить «Opcode: Alternative PHP Cache (APC)», это лучше быстрее чем на Диск раз в 10 точно.

              4. Рома, Вы уже спите, наверное, а я только добралась до плагина. Все сделала, но вверху такая надпись в русском переводе: Предварительный просмотр активном режиме: Изменены настройки не вступят в силу до тех пор пока режим предварительного просмотра является или . любого изменения параметров (без установки), или внести дополнительные изменения.
                Что с этим делать? Там слова пропустились «развернуть» или «свернуть». Буду ждать Ваших ЦУ. А все остальное внизу сделать отключенным? Оно так и есть, кроме браузерного кэша. Его отключила.

              5. Там 3 кнопки «Deploy», «Disable» и «Preview».
                Необходимо нажать на «Deploy» и тогда сделанные Вами твики увидят все пользователи, а не только Вы (это специально так сделано).

              6. Я видел, мелькнули оптимизации с использованием кэша в APC.
                Как Вы понимаете, это только верхушка айсберга и все остальные настройки непосредственно каждого из типов кэширования (Database, Object, Minify, …) ещё предстоит впереди 🙂
                Думаю что проще будет через личку, чем писать сюда.
                А потом можете подытожить это всё в виде статьи 🙂

              7. Мне уже некуда Вам отвечать. А Вы скайпом не пользуетесь? Конечно, лучше в личку. Завтра продолжу, ок? Опять 12 ночи, а еще статьи висят. Поняла, что ничего не поняла в настройках. Надо начинать все сначала. Спасибо огромное за то, что тратите на меня столько времени.

              8. А Вы скайпом не пользуетесь? Конечно, лучше в личку.

                У меня на сайте есть все контакты.
                Пишите завтра.

      2. Прежде всего нужно посмотреть какие опции вам доступны из выпадающего списка вариантов методов кэширования («*** Cache Method»).
        Можете их перечислить (только доступные)?

        1. Все поняла. Прямо сейчас не могу — заказы «горят». Но сегодня обязательно сделаю. Какое Вам спасибо!

        2. Вы хоть скажите, что такое твики. 🙂 А как это потом работает, в автоматическом режиме?

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

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