Борьба с Kazaa и прочими "качальщиками" (iptables limit bandwidth tcp firewall linux)
Ключевые слова: iptables, limit, bandwidth, tcp, firewall, linux, (найти похожие документы)
From: Denis Fedorishenko (NuclearCat) <nuclearcat@nuclearcat.com>
Newsgroups: email
Date: Mon, 13 Oct 2003 14:31:37 +0000 (UTC)
Subject: Борьба с Kazaa и прочими "качальщиками"
Методы обнаружения вредного траффика с помощью Linux.
Есть такая замечательная вещь в Linux, patch-o-matic, которая может
значительно расширить возможности firewall.
К примеру необходимо запретить Kazaa, но основная проблема, есть
множество серверов с нестандартными портами.
Решение:
- собираем поддержку "string" в patch-o-matic.
- смотрим на протокол Kazaa, классический пример применение HTTP
подобного протокола, в заголовках которого содержиться
HTTP/1.0 503 Service Unavailable.Retry-After: 3..X-Kazaa-Username: BlazeTre
e..X-Kazaa-Network: KaZaA..X-Kazaa-IP: 130.58.237.139:2265..X-Kazaa-Superno
deIP: 24.30.229.147:1059..
- добавляем в firewall строчку:
iptables -A FORWARD -m string --string "X-Kazaa-" -j REJECT
Все. Kazaa перестает работать. Возможно что-то частично и будет
работать, но это решаемо тем же методом.
И все таки, если клиенты качают множеством различных других программ,
и обходят эти запреты. К примеру IRC DCC, трансферы больших файлов
через аськи, закачки через браузер файлов .html, которые на самом деле
являются mp3.
Решение также есть в patch-o-matic.
- Собираем поддержку connbytes
- добавляем правило в firewall к примеру:
iptables -A FORWARD --connbytes 100000 -j REJECT
- теперь все TCP сессии более 100 Кбайт будут "обрезаны", необходимо
добавить исключения для протоколов типа ssh, обычные "долгоживущие"
чаты и т.п.
Более рекомендуемо сделать MARK, и загнать все такие трансферы в
какой-либо класс шейпера. Т.е. если например помеченные пакеты - все
их отнести к классу 1:51 где скорость ограничена от 32К до 64К(в
зависимости от свободной полосы). Очень удобно для организаций с
анлимитедом, при необходимости обеспечить интерактивность других
приложений.
tc filter add dev eth1 parent 1:0 protocol ip prio 100 handle 51 fw classid 1:51
tc class add dev eth1 parent 1:2 classid 1:51 htb rate 32Kbit ceil 64Kbit
tc qdisc add dev eth1 parent 1:51 handle 51 sfq perturb 10
|
|
3, TOMY, 09:37, 23/11/2003 [ответить] [смотреть все] [к модератору]
| +/– |
I have a problem. Then I write this line:
"iptables -A FORWARD -m string --string "X-Kazaa-" -j REJECT"
Server write my a following error:
"iptables: No chain/target/match by that name"
It look's that it's a bad syntax...
What I can do?
Please help.
Thank's.
TOMy
|  | |
|
|
Ваш комментарий |
|
|