Не срабатывает запрет по ip в htaccess

mike1111

Создатель
Регистрация
7 Янв 2013
Сообщения
18
Реакции
3
Не хочется создавать новую тему, а вопрос всё тот же.
Идет постоянное прощупывание сайта, с нелепыми запросами.
В .htaccess прописал
#Запрещаем доступ к сайту для методов GET, HEAD, POST с IP адресов AfriNIC, APNIC, LACNIC:

<Limit GET HEAD POST>
Order Deny,Allow
# AfriNIC:
Deny from 41 102 105 197
# APNIC:
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 66.0.0.0/7
Deny from 157.0.0.0/7
Deny from 60.0.0.0/7
и так далее, но всё равно слежение за сайтом показывает
/view_document.php?page=schedule1 date: 08.01.2013 15:12:22 ip: 66.249.78.185
/view_sale.php?id=54 date: 08.01.2013 15:23:28 ip: 157.55.32.96
что с запрещенных ip заходят на сайт.
Подскажите как блокировать известный ip.
 
Не хочется создавать новую тему, а вопрос всё тот же.
Deny from 41 102 105 197
Deny from 1 14 27 36 39
Так нельзя. Если блокировать /8 сетку, то можно указать первый октет, но перечислять их через пробел нельзя. Странно, что 500 ошибку не показывает. Не скупимся и указываем полный синтаксис:

Код:
<Limit GET HEAD POST>
Order Allow,Deny
Allow from all
 
# AfriNIC
Deny from 41.0.0.0/8
Deny from 102.0.0.0/8
Deny from 105.0.0.0/8
Deny from 197.0.0.0/8
 
# APNIC
Deny from 42.0.0.0/7
Deny from 58.0.0.0/7
Deny from 66.0.0.0/7
Deny from 157.0.0.0/7
Deny from 60.0.0.0/7
 
# Это то же самое, что Deny from 49.0.0.0/8
# но лучше полный адрес сети
Deny from 49
</LIMIT>
Чтобы не путаться, лучше указывать полные адреса сеток.
 
Спасибо всем, может этот метод записи .htaccess устарел, вот нашел
Вместо IP-адреса Вы можете указать диапазон:
В таком варианте записи команды доступ будет запрещён для всех пользователей из сети класса C 124.457.729.0/24
и ещё
Также Вы можете указать не какой-то конкретный IP-адрес, а просто его диапазон, т.е. 124.457.729
Хорошо, попробую полный адрес, если получится сообщу.

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

Например:
Код:
<Files Settings*.php>
  Order Allow,Deny
  Deny from 157.0.0.0/7
  Deny from 60.0.0.0/7
</Files>


Или так:
Код:
<Directory "/home/webadmin/site.ru/html">
  Order Allow,Deny
  Deny from 157.0.0.0/7
  Deny from 60.0.0.0/7
</Directory>


А вообще если ты точно уверен, что с этих ИП юзеры не нужны, используй iptables:
Код:
iptables -A INPUT -s 157.0.0.0/255.0.0.0 -j DROP
iptables -A INPUT -s 60.0.0.0/255.0.0.0 -j DROP

Подробности в мане.
 
Почитал про iptable, выяснил, что это только для Линукс, ау меня Винда.

Помогла вот такая комбинация, без всяких Limit
Код:
#Запрет доступа к сайту с IP 
Order allow,deny
allow from all
Deny from 66
Deny from 157
Deny from 178.210.65.38
Allow from all
Deny from env=bad_bot
 
Назад
Сверху