Возникла необходимость фильтровать машины и пускать только те, которые получили ip через dhcpd. Ничего вразумительного нагуглить не удалось, кроме того, что в man dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS), но при этом возникнет проблема с динамическим DNS. Может это можно решать через acl squid'а...?
Даже не знаю где копать, может кто-то решал эту задачу?
>Возникла необходимость фильтровать машины и пускать только те, которые получили ip через
>dhcpd. Ничего вразумительного нагуглить не удалось, кроме того, что в man
>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>но при этом возникнет проблема с динамическим DNS. Может это можно
>решать через acl squid'а...?
>Даже не знаю где копать, может кто-то решал эту задачу?Для начала надо четко поставить задачу а не мешать в кучу iptables dhcp dns squid
>>Возникла необходимость фильтровать машины и пускать только те, которые получили ip через
>>dhcpd. Ничего вразумительного нагуглить не удалось, кроме того, что в man
>>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>>но при этом возникнет проблема с динамическим DNS. Может это можно
>>решать через acl squid'а...?
>>Даже не знаю где копать, может кто-то решал эту задачу?
>
>Для начала надо четко поставить задачу а не мешать в кучу iptables
>dhcp dns squidСогласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP ДОСТУП В ИНТЕРНЕТ
>[оверквотинг удален]
>>>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>>>но при этом возникнет проблема с динамическим DNS. Может это можно
>>>решать через acl squid'а...?
>>>Даже не знаю где копать, может кто-то решал эту задачу?
>>
>>Для начала надо четко поставить задачу а не мешать в кучу iptables
>>dhcp dns squid
>
>Согласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP
>ДОСТУП В ИНТЕРНЕТтупой вопрос: а зачем такое?
>[оверквотинг удален]
>>>>решать через acl squid'а...?
>>>>Даже не знаю где копать, может кто-то решал эту задачу?
>>>
>>>Для начала надо четко поставить задачу а не мешать в кучу iptables
>>>dhcp dns squid
>>
>>Согласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP
>>ДОСТУП В ИНТЕРНЕТ
>
>тупой вопрос: а зачем такое?Почему тупой? Вполне правильный вопрос :-)
Локалка большая на несколько этажей здания и прописывать ручками все машины в dhcp просто нет возможности, поэтому все машины получают адреса и имена в сети динамически. В Инет все ходят через squid. При этом в lightsquid видна четкая привязка имя машины - фамилия сотрудника - отдел - трафик. Начальству нравится... :-)
Но некоторые сотрудники ручками прописываю себе ip из пула адресов и при этом естественно не получают динамически имя в dns. В lightsquid светится только ip-адрес с диким трафиком порносайтов или музыки. Бегать по этажам в поисках ушлого юзера явно неправильное решение. Вот и возникла мысль блокировать такие машины.
> В Инет все ходят через squid.включите авторизацию на прокси.
> Но некоторые сотрудники ручками прописываю себе ip из пула адресов
Отберите у сотрудников право администрировать свои компы.
для этого есть сисадмины..>Вот и возникла мысль блокировать такие машины.
>> В Инет все ходят через squid.
>
>включите авторизацию на прокси.
>Угу, это правильная мысль. В планах стоит поднятие AD и авторизация в прокси через ntlm. Но я работаю здесь недавно и есть более приоритетные задачи. Думалось пока по-быстрому заделать эту дыру блокировкой в iptables.
>> Но некоторые сотрудники ручками прописываю себе ip из пула адресов
>
>Отберите у сотрудников право администрировать свои компы.
>для этого есть сисадмины..
>И это совершенно правильно, но пробежаться по более чем сотне компов и вычистить всё дерьмо за старым админом я пока не в состоянии :-(
>>Вот и возникла мысль блокировать такие машины.
Кроме того, есть обоснованное подозрение, что к какому-то сегменту "присосалась" другая организация, т.к. к сети бегают бродкаст пакеты совсем не моей сети. И если это балуются юзеры "дружественной" организации, то...
>[оверквотинг удален]
>>>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>>>но при этом возникнет проблема с динамическим DNS. Может это можно
>>>решать через acl squid'а...?
>>>Даже не знаю где копать, может кто-то решал эту задачу?
>>
>>Для начала надо четко поставить задачу а не мешать в кучу iptables
>>dhcp dns squid
>
>Согласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP
>ДОСТУП В ИНТЕРНЕТВозможно поможет коммутатор с функцией ip source guard
>>Согласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP
>>ДОСТУП В ИНТЕРНЕТ
>
> Возможно поможет коммутатор с функцией ip source guardХммм... Спасибо за совет, попробую подробнее взглянуть на свои linksys коммутаторы.
Просто интересно, неужели ни у кого не возникало подобной задачи? Или сейчас все "ночные админы" спят и ответы будут только утром следующего дня? :-)))))
>>>Согласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP
>>>ДОСТУП В ИНТЕРНЕТ
>>
>> Возможно поможет коммутатор с функцией ip source guard
>
>Хммм... Спасибо за совет, попробую подробнее взглянуть на свои linksys коммутаторы.
>
>Просто интересно, неужели ни у кого не возникало подобной задачи? Или сейчас
>все "ночные админы" спят и ответы будут только утром следующего дня?
>:-)))))Если быть более точным то ip source guard и DHCP snooping помогает такие варианты разруливать.
>[оверквотинг удален]
>>>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>>>но при этом возникнет проблема с динамическим DNS. Может это можно
>>>решать через acl squid'а...?
>>>Даже не знаю где копать, может кто-то решал эту задачу?
>>
>>Для начала надо четко поставить задачу а не мешать в кучу iptables
>>dhcp dns squid
>
>Согласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP
>ДОСТУП В ИНТЕРНЕТну тогда сам пишеш что можно реагировать на события в dhcp - пиши скрипт и реагируй соответственно
>>Согласен. Четко формулирую: НЕОБХОДИМО ЗАПРЕТИТЬ РАБОЧИМ СТАНЦИЯМ НЕ ПОЛУЧИВШИМ IP ПО DHCP
>>ДОСТУП В ИНТЕРНЕТ
>
>ну тогда сам пишеш что можно реагировать на события в dhcp -
>пиши скрипт и реагируй соответственноЦитата из dhcpd.conf:
REFERENCE: EVENTS
There are three kinds of events that can happen regarding a lease, and it is possible to declare statements that occur when any of these events happen. These events are the commit event, when the server has made a commitment of a certain lease to a client, the release event, when the client has released the server from its commitment, and the expiry event, when the commitment expires.To declare a set of statements to execute when an event happens, you must use the on statement, followed by the name of the event, followed by a series of statements to execute when the event happens, enclosed in braces. Events are used to implement DNS updates, so you should not define your own event handlers if you are using the built-in DNS update mechanism.
The built-in version of the DNS update mechanism is in a text string towards the top of server/dhcpd.c. If you want to use events for things other than DNS updates, and you also want DNS updates, you will have to start out by copying this code into your dhcpd.conf file and modifying it.
Всё понятно или надо переводить?
>Возникла необходимость фильтровать машины и пускать только те, которые получили ip через
>dhcpd. Ничего вразумительного нагуглить не удалось, кроме того, что в man
>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>но при этом возникнет проблема с динамическим DNS. Может это можно
>решать через acl squid'а...?
>Даже не знаю где копать, может кто-то решал эту задачу?ipset
>Возникла необходимость фильтровать машины и пускать только те, которые получили ip через
>dhcpd. Ничего вразумительного нагуглить не удалось, кроме того, что в man
>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>но при этом возникнет проблема с динамическим DNS. Может это можно
>решать через acl squid'а...?
>Даже не знаю где копать, может кто-то решал эту задачу?dhcpd пишет (точно не помню) в /var/lib/... файл с данными кому он че выдал, так вот можно сварганить скрипт, который парсит этот файл, grep'ом и awk'ом и выполняет для каждого ip-адреса правило
iptables -A INPUT -s $addr -p tcp --dport $squid_port -j ACCEPTполучится чето типа
ipaddr="/tmp/adresses #промежуточный файл где будут хранится айпишники
grep _шаблон_адреса_ /var/lib/dhcpd.state > $ipaddr #выцепляем выданные адреса из файла dhcpd
#теперь запускаем цикл и скармливаем ему промежуточный файл с адресами.
while read ipaddress; do
iptables -A INPUT -s $ipaddress -p tcp --dports 3128 -j ACCEPT
done < $ipaddrя бы этот куско воткнул в файл с правилами Iptables. ну и конечно политика по умолчанию DROP
>Возникла необходимость фильтровать машины и пускать только те, которые получили ip через
>dhcpd. Ничего вразумительного нагуглить не удалось, кроме того, что в man
>dhcpd.conf есть информация, что можно как-то реагировать на события (REFERENCE: EVENTS),
>но при этом возникнет проблема с динамическим DNS. Может это можно
>решать через acl squid'а...?
>Даже не знаю где копать, может кто-то решал эту задачу?dhcpd пишет (точно не помню) в /var/lib/... файл с данными кому он че выдал, так вот можно сварганить скрипт, который парсит этот файл, grep'ом и awk'ом и выполняет для каждого ip-адреса правило
iptables -A INPUT -s $addr -p tcp --dport $squid_port -j ACCEPTполучится чето типа
ipaddr="/tmp/adresses #промежуточный файл где будут хранится айпишники
grep _шаблон_адреса_ /var/lib/dhcpd.state > $ipaddr #выцепляем выданные адреса из файла dhcpd
#теперь запускаем цикл и скармливаем ему промежуточный файл с адресами.
while read ipaddress; do
iptables -A INPUT -s $ipaddress -p tcp --dports 3128 -j ACCEPT
done < $ipaddrя бы этот куско воткнул в файл с правилами Iptables. ну и конечно политика по умолчанию DROP
идём в dhcpd.log-и за неделю, 1-минутным скриптом вычерпываем все уникальные MAC (можно по желанию IP) и формируем статики для dhcpd.
в iptables включаем правила проверки связки mac+ip читая их из конфига dhcpd