Tomsk Sysadmins Forum

Unix => Администрирование => Topic started by: Vladn on April 13, 2007, 05:35:01

Title: Apache: ограничение входящего трафика по методу POST
Post by: Vladn on April 13, 2007, 05:35:01
Есть такая проблема: спаммеры кушают входящий трафик (который у меня ограничен), посылая POST-запросы на разные страницы. Банить по IP адресам бесполезно - каждый раз используются новые адреса. Какими способами можно настроить Apache на выполнение проверки некоторых условий после получения пустой строки между заголовком HTTP-запроса и телом HTTP-запроса, чтобы при несоблюдении условий разорвать соединение со спаммером?
Title: Apache: ограничение входящего трафика по методу POST
Post by: never hood on April 13, 2007, 08:30:08
Quote from: Vladn
Есть такая проблема: спаммеры кушают входящий трафик (который у меня ограничен), посылая POST-запросы на разные страницы. Банить по IP адресам бесполезно - каждый раз используются новые адреса. Какими способами можно настроить Apache на выполнение проверки некоторых условий после получения пустой строки между заголовком HTTP-запроса и телом HTTP-запроса, чтобы при несоблюдении условий разорвать соединение со спаммером?
вам прямая дорога к использованию mod_security
Title: Apache: ограничение входящего трафика по методу POST
Post by: SG_ on April 13, 2007, 14:01:40
Quote from: Vladn
Есть такая проблема: спаммеры кушают входящий трафик (который у меня ограничен), посылая POST-запросы на разные страницы. Банить по IP адресам бесполезно - каждый раз используются новые адреса. Какими способами можно настроить Apache на выполнение проверки некоторых условий после получения пустой строки между заголовком HTTP-запроса и телом HTTP-запроса, чтобы при несоблюдении условий разорвать соединение со спаммером?
твое время стоит дешевле трафика?
Title: Apache: ограничение входящего трафика по методу POST
Post by: SinClaus on April 13, 2007, 19:41:28
на самом деле это просто делается при помощи mod_rewrite
Title: Apache: ограничение входящего трафика по методу POST
Post by: wHATEver on April 17, 2007, 09:51:10
<Limit POST PUT DELETE>

Require valid-user
..
или
Deny from All
</Limit>
Title: Apache: ограничение входящего трафика по методу POST
Post by: Vladn on April 18, 2007, 16:04:04
Quote
твое время стоит дешевле трафика?
1) Если админ не может решить такую проблему (как и борьба со спамом), то его время вообще ничего не стоит, т.к. это не админ.
2) Трафик не платный, он просто ОГРАНИЧЕН. Снять ограничение путём оплаты не предполагается


--------------
Я решил эту проблему так:
LimitRequestBody 300
т.к. по правилам работы сайта в теле нормального POST-запроса будет не более 300 байт.

-------------


Возникла другая проблема:
нужно настроить FreeBSD так, чтобы входящий трафик по 80-му порту из Томска обрабатывался текущей машиной, а из внешки - другой машиной (чтобы входящий трафик кушался другой машиной). Можно ли это сделать с помощью ipfw?



Title: Apache: ограничение входящего трафика по методу POST
Post by: nuclight on April 18, 2007, 17:12:34
Quote from: Vladn
нужно настроить FreeBSD так, чтобы входящий трафик по 80-му порту из Томска обрабатывался текущей машиной, а из внешки - другой машиной (чтобы входящий трафик кушался другой машиной). Можно ли это сделать с помощью ipfw?

Можно. Занести  томские сети в таблицу (man ipfw /table), затем сделать форвардинг приходящего на эту машину на порт 80 не из табллицы на другую машину (man ipfw /fwd), на другой машине, если там тоже фря, сделать форвардинг приходящего на айпишник первой машины на нужный порт на 127.0.0.1 и обрабатывать как хочется.
Title: Apache: ограничение входящего трафика по методу POST
Post by: Vladn on April 19, 2007, 04:53:16
А в случае с форвардингом на какой IP будет посылать пакеты внешняя машина: на адрес основной машины (которая перенаправит пакеты на вторую машину) или на адрес второй машины?
Я так думаю, что  пакеты всё равно будут приходить на IP основной машины и трафик будет кушаться именно для неё. А можно ли сделать так, чтобы при попытке установить TCP-соединение с основной машиной она сказала "а теперь общайся не со мною, а вон с той машиной" ?
Title: Apache: ограничение входящего трафика по методу POST
Post by: nuclight on April 19, 2007, 19:30:22
Quote from: Vladn
А в случае с форвардингом на какой IP будет посылать пакеты внешняя машина: на адрес основной машины (которая перенаправит пакеты на вторую машину) или на адрес второй машины?
Я так думаю, что  пакеты всё равно будут приходить на IP основной машины и трафик будет кушаться именно для неё.

Да.

Quote
А можно ли сделать так, чтобы при попытке установить TCP-соединение с основной машиной она сказала "а теперь общайся не со мною, а вон с той машиной" ?

Единственный вариант - выдавать редирект в хттп-заголовках, то есть возложить реконнект на другой адрес на клиента.