Как прикрыть ICQ?

mango
Повторюсь - это ШКОЛА, млять! Там нихера нет! Какие хабы? какие свичи? Вы о чём? Денег нет вообще.
Файрвол+прокся - буду поднимать на машинке 6-7 летней давности, которую соберу из 4-5 убитых тачек.
ну так компы учеников в какой либо свич воткнуты, не? комп учителя одной сетевухой в свич (хаб), второй смотрит в инет.

если без свича, то каким образом ВСЕ компы учеников получают доступ к компу учителя, там по топологии типа “шина” все скоммутировано что ли?

если все таки свич есть - из компа учителя выдрать второю сетевуху.
все компы в первом классе (включая комп учителя) в одной логической подсети и физическом сегменте, с дефолт маршрутом до прокси (с тремя сетевухами, две из которых экспоприированны из компов учителей)
во втором классе - аналогично, но в другой подсети.
в качестве рутера-прокси сервера любой древний комп с тремя сетевухами. одна в сторону инета, вторая и третья в сторону классов.

в качве дистрибутива для рутера могу предложить попробовать pfsense (фряха) или vyatta (дебиан) - с вебмордами и удобным управлением. дада - лучше всего арч, но на таких дистрах простейший шлюз развернуть можно за 30-40 минут. сквид пакетами там присутсвует, но я не в курсе, поможет ли он в плане анализа пакетов. но забанить сервера аськи для компов учеников, при этом, разрешить эти адреса для учителей - дело 2-3 минут.
А может какое расширение для iptables, которое анализирует тип трафика на более высоком уровне (может и есть что-то), и если это трафик протокола icq, то под нож его..

может быть что-то из этого:
http://ru.wikipedia.org/wiki/L7-filter - что-то интересное, но непонятно заброшено или нет..
http://habrahabr.ru/blogs/sysadm/108280/ - пишут что даже патчей ненадо никаких..

Надо посмотреть что там за расширения для iptables есть в репах..
Ошибся, не в репах
aur/xtables-addons 1.30-1 (23)
    Successor to patch-o-matic(-ng). Additional extensions for iptables, ip6tables, etc. CHAOS, TARPIT, TEE, DELUDE and other 
    targets; condition, geoip, ipp2p and other matches. Includes ipset package. 
Среди этих расширений должен быть какой то сыромятный метод фильтрации по содержимому.

Вот еще может быть будет интересно: http://www.magxak.ru/xa128/116/1.htm

ps: хотя все это может быть и лишнее, можно ведь отдохнуть и кино посмотреть, а не запариваться, средства все равно не совсем коробочные.. проще обойтись сквидом
gard
Вот еще может быть будет интересно: http://www.magxak.ru/xa128/116/1.htm
а вот это как раз интересно! особенно мне нравится конструкция
iptables -A FORWARD -m layer7 –l7proto bittorrent -j DROP
iptables -A FORWARD -m layer7 –l7proto aim -j DROP
iptables -A FORWARD -m layer7 –l7proto skypetoskype -j DROP
iptables -A FORWARD -m layer7 –l7proto skypeout -j DROP
Ещё раз про условия:
1. На виндовые компы учеников - лазить не собираюсь. Там рулят учителя информатики. И порой часто переставляют винду ;-) Так что настройки на машинках учеников надо будет постоянно контролировать, что как бы не в ходит в мои обязанности, да и не собираюсь я туда лезть.
2. По поводу свичей - картина получается вот такая

В компе учителя стоят две сетевые. Почему так было сделано? Хз. Мне оно такое уже досталось. ;-)

По этому у трех классов информатики получается подсеть 192.168.0.0/24
У учителей подсеть 192.168.1.0/24 Компов учителей порядка 45 шт.
gard
Надо посмотреть что там за расширения для iptables есть в репах..
Ошибся, не в репах

Код: Выделить всё
aur/xtables-addons 1.30-1 (23)
Successor to patch-o-matic(-ng). Additional extensions for iptables, ip6tables, etc. CHAOS, TARPIT, TEE, DELUDE and other
targets; condition, geoip, ipp2p and other matches. Includes ipset package.

Среди этих расширений должен быть какой то сыромятный метод фильтрации по содержимому.

Вот еще может быть будет интересно: http://www.magxak.ru/xa128/116/1.htm

Спасибо - возму на заметку.
mango
cac2s
1. iptables
2. l7-filter
И что там закрывать? когда портов соединения аски вагон и маленькая тележка?
не помешает:
1. прочитать что это за штука такая
2. понять, что l7 - классификатор, анализирующий не порты, а IP-пакеты
3. проанализировать верность/уместность вышеуказанных изреканий

upd:
iptables -A FORWARD -m layer7 –l7proto aim -j DROP
это так… для 3-го пункта, чтобы легче было анализировать :)
mango
Ещё раз про условия:
1. На виндовые компы учеников - лазить не собираюсь. Там рулят учителя информатики. И порой часто переставляют винду ;-) Так что настройки на машинках учеников надо будет постоянно контролировать, что как бы не в ходит в мои обязанности, да и не собираюсь я туда лезть.
2. По поводу свичей - картина получается вот такая

Существенное замечание про сеть учителей.

во. порождение безумного разума. нужен анализатор-рутер трафика после сетей учеников + нат из сети учителей в наружу.
как я понимаю, нат наружу уже кто то делает. его не трогаем.

на пограничном анализаторе-рутере анализируем исходящий трафик, пускаем или не пускаем в сеть учителей, заворачиваем запросы учеников в инет, транслируем трафик из сети учетилей к компам учителей в комп классах.


можно проксю поставить на нем же. в настройках компов учетилей ставить адрес “внешнего” интерфейса
у учеников ничего прописывать не надо будет проксироваться по умолчанию - повестить слушать проксю еще и на лупбак.
Я еще раз повторю свою мысль, которую все почему-то проигнорировали - самый простой способ отличить трафик клиента за натом от прямого трафика - TTL. На все сервера аськи все пакеты с TTL<128 (если машины все виндовые) -j DROP. В iptables для этого есть вполне стандартный модуль ttl, который умеет анализировать заголовок пакета на предмет этого поля.
_AND_
Я еще раз повторю свою мысль, которую все почему-то проигнорировали - самый простой способ отличить трафик клиента за натом от прямого трафика - TTL. На все сервера аськи все пакеты с TTL<128 (если машины все виндовые) -j DROP. В iptables для этого есть вполне стандартный модуль ttl, который умеет анализировать заголовок пакета на предмет этого поля.

хм. как вы будете траффик аськи чреез 80 или 443 от обычного http отличать, чтобы не рубать все под корень от учеников?
zubastiy
_AND_
Я еще раз повторю свою мысль, которую все почему-то проигнорировали - самый простой способ отличить трафик клиента за натом от прямого трафика - TTL. На все сервера аськи все пакеты с TTL<128 (если машины все виндовые) -j DROP. В iptables для этого есть вполне стандартный модуль ttl, который умеет анализировать заголовок пакета на предмет этого поля.

хм. как вы будете траффик аськи чреез 80 или 443 от обычного http отличать, чтобы не рубать все под корень от учеников?
iptables -A FORWARD -i eth1 -m ttl ! --ttl-eq 128 -d 205.188.0.0/255.255.0.0 -j DROP
iptables -A FORWARD -i eth1 -m ttl ! --ttl-eq 128 -d 64.12.0.0/255.255.0.0 -j DROP
и т.д. Где eth1 - интерфейс, смотрящий во внутреннюю сеть.

Ну или скомбинировать эти правила с layer7, чтобы вычленять именно ICQ трафик, а потом разбираться модулем ttl от кого он пришел - от компа учителя или кого-то, кто за его натом.
 
Зарегистрироваться или войдите чтобы оставить сообщение.