- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
подскажите как правильно в nginx забанить GET запрос (с локейшен или как )
GET //?s=BYE&x=0&y=0 HTTP/1.1" 503 212 "-"
чтобы if этот GET return 403
ip забанил но странно в nginx - все равно доходит в логи было HTTP/1.1" 499
поставил proxy_ignore_client_abort on; стало 503
типа школоддос
подскажите как правильно в nginx забанить GET запрос (с локейшен или как )
GET //?s=BYE&x=0&y=0 HTTP/1.1" 503 212 "-"
чтобы if этот GET return 403
ip забанил но странно в nginx - все равно доходит в логи было HTTP/1.1" 499
поставил proxy_ignore_client_abort on; стало 503
типа школоддос
Если школоддос из нескольких ипов:
Если IP`ов много и их не отфильтровать руками, можно определять ботов по http://nginx.org/ru/docs/http/ngx_http_limit_conn_module.html
Далее или прикрутить fail2ban или проверять скриптом лог и банить например как описано тут http://habrahabr.ru/post/84172/
iptables -I INPUT 1 -p tcp --dport 80 -m string --string "GET //?s=BYE&x=0&y=0" --algo kmp -j DROP
спасибо. поставил
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;
limit_req zone=one burst=5 nodelay;
и
if ($is_args = "?") {
return 444;
}
все равно везде чпу .
только вот не понимаю - все ip забанены - а в логах nginx идут постоянно - или iptables не работает или не успевает закрывать коннект
Chain ban (0 references)
pkts bytes target prot opt in out source destination
0 0 DROP all -- * * 193.232.107.153 0.0.0.0/0
0 0 DROP all -- * * 91.215.53.191 0.0.0.0/0
0 0 DROP all -- * * 193.93.50.8 0.0.0.0/0
0 0 DROP all -- * * 217.28.223.115 0.0.0.0/0
0 0 DROP all -- * * 91.144.8.15 0.0.0.0/0
0 0 DROP all -- * * 78.159.39.220 0.0.0.0/0
0 0 DROP all -- * * 195.146.72.148 0.0.0.0/0
0 0 DROP all -- * * 195.146.72.146 0.0.0.0/0
итого load average: 1.09, 1.35, 2.87
iptables -I INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 2 --connlimit-mask 24 -j DROP
iptables -I INPUT -p tcp --syn --dport 80 -m hashlimit --hashlimit-above 30/minute --hashlimit-burst 3 --hashlimit-mode srcip --hashlimit-srcmask 24 --hashlimit-name blip -j DROP
окончательно прибило load average: 0.13, 0.10, 0.39
Вы цепочку ban создали, а ссылку на нее в таблице INPUT не сделали.
iptables –A INPUT –j ban
поэтому забанивание у вас и не работает.
---------- Добавлено 07.07.2012 в 23:21 ----------
лимиты в nginx правильнее сделать так
В блок http поставить
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
rate=5r/s; - скорее всего слишком много.
Лучше поставить 1r/s или 2r/s
А в блок location /
поставить
limit_req zone=one burst=10 nodelay;
Что бы ограничивались лишь запросы на бекенд, а статика отдавалась без ограничения.
спасибо zexis, действительно ошибся при внесении цепочек, теперь проблем нет
pkts bytes target prot opt in out source destination
1850 88712 DROP all -- * * 193.93.50.8 0.0.0.0/0
3497 170K DROP all -- * * 91.215.53.191 0.0.0.0/0
Можно самим nginx блокировать такой запрос
if ($request-uri ~* s=BYE&x=0&y=0) {
return 403;
}
не подскажете как сделать цепочку ban в iptables centos 5.8
iptables –A INPUT –j ban не канает
PS: решил