Автор Тема: DHCP-сервер  (Прочитано 6952 раз)

Оффлайн xdsl

  • Участник
  • *
  • Сообщений: 255
Re: DHCP-сервер
« Ответ #15 : 17.11.2011 13:32:30 »
Вот как сделать это с помощью пакетного фильтра, причем и под Windows и под *nix платформы я знаю. Но похоже вам это не интересно.
Очень интересно. Расскажите, пожалуйста. Кодом или воспроизводимой последовательностью действий. Заранее спасибо.

Знайка

  • Гость
Re: DHCP-сервер
« Ответ #16 : 17.11.2011 16:48:34 »
Прежде всего, стоит помнить, что любую софтверную защиту, можно обойти.

Вот как сделать это с помощью пакетного фильтра, причем и под Windows и под *nix платформы я знаю. Но похоже вам это не интересно.
Очень интересно. Расскажите, пожалуйста. Кодом или воспроизводимой последовательностью действий. Заранее спасибо.
Решение в лоб, через пакетный фильтр. Последовательность проста. Фильтруете пакеты приходящие от DHCP сервера по MAC адресу. В Windows это чуть посложнее, но то же возможно. Например файрвол от DrWeb в легкую с этим справится. На юниксе, одна строчка в конфиг пакетника.
Если задача только для Linux машин, то тут есть еще варианты. Смещение DHCP портов, или простенькое криптование DHCP трафика.

Если на клиентах не использовать продукцию от альтов, можно использовать PPPoE.

И для гугля, железные решения:
Compex PS2216
http://www.dlink.ru/ru/products/8/407.html
http://www.nix.ru/autocatalog/networking_3com/hp_3com_V190524_3CBLSF26H_JD990A_Baseline_2226SFP_Plus_26_24UTP_1000Mbps_SFP_91474.html


Оффлайн xdsl

  • Участник
  • *
  • Сообщений: 255
Re: DHCP-сервер
« Ответ #17 : 18.11.2011 14:34:46 »
Прежде всего, стоит помнить, что любую софтверную защиту, можно обойти.

Вот как сделать это с помощью пакетного фильтра, причем и под Windows и под *nix платформы я знаю. Но похоже вам это не интересно.
Очень интересно. Расскажите, пожалуйста. Кодом или воспроизводимой последовательностью действий. Заранее спасибо.
Решение в лоб, через пакетный фильтр. Последовательность проста. Фильтруете пакеты приходящие от DHCP сервера по MAC адресу. В Windows это чуть посложнее, но то же возможно. Например файрвол от DrWeb в легкую с этим справится. На юниксе, одна строчка в конфиг пакетника.
Если задача только для Linux машин, то тут есть еще варианты. Смещение DHCP портов, или простенькое криптование DHCP трафика.

Если на клиентах не использовать продукцию от альтов, можно использовать PPPoE.

И для гугля, железные решения:
Compex PS2216
http://www.dlink.ru/ru/products/8/407.html
http://www.nix.ru/autocatalog/networking_3com/hp_3com_V190524_3CBLSF26H_JD990A_Baseline_2226SFP_Plus_26_24UTP_1000Mbps_SFP_91474.html
Спасибо за развернутый ответ, но ни кода, ни воспроизводимой последовательности действий я в нем не увидел. Только рассуждения. А хотелось-бы, к примеру, конкретную строчку конфига вместо слов "На юниксе, одна строчка в конфиг пакетника.". Что конкретно нужно забить, например, в /etc/sysconfig/iptables, чтобы раз и навсегда решить проблему левых DHCP-серверов в ethernet-сетке? Если нет желания, знаний или возможности ответить конкретно на этот вопрос, можете просто проигнорировать данный пост. Заранее спасибо.

Что касается железных решений, они лично мне не особо интересны, о чем я уже говорил выше. Они мне известны. К примеру, корневым коммутатором в моей сетке стоит D-Link DGS-1224T, с настроеной assymetric vlan. При этом сегменты связи друг с другом не имеют, общаясь только с серверами, которые под моим контролем. Соответственно один сегмент не может завалить другой лишними DHCP-серверами. Но проблемы внутри сегментов остаются. И аппаратные решения меня не прельщают, ибо подразумевают замену абсолютно работоспособных простеньких свитчей. За живые деньги. Вообщем, в ближайшем будущем не окупается.

Оффлайн VadimZelenin

  • Участник
  • *
  • Сообщений: 116
    • МИС Самсон
Re: DHCP-сервер
« Ответ #18 : 18.11.2011 16:19:06 »
Пытаюсь найти выход из ситуации: Сеть ethernet из виндовых и линуксовых клиентских машин, которые получают адреса и все остальное с DHCP-сервера. Вопрос: кто может помешать любому юзеру в сети поднять у себя на локальной машине еще один DHCP-сервер, и тем самым, потенциально, заблокировать нормальный вход в сеть других клиентов? Как с этим бороться?

Если у Вас есть "злодей" поднимающий левый dhcpd , то бороться с ним можно blacklist-ом
man dhcpcd.conf:

    blacklist address
             Ignores all DHCP messages which have this address as the server ID. 
             This may be expanded in future releases to ignore all packets matching either the IP or hardware address.

Мне приходилось использовать blacklist из командной строки (далее хватало разъяснений с обсуждением что такое хорошо и что такое плохо), но из dhcpcd.conf - нет.


В принципе наверное можно воспользоваться require
    require option
             Requires the option to be present in all DHCP messages, otherwise the message is ignored. 
             It can be a variable to be used in dhcpcd-run-hooks(8) or the numerical value.
             You can specify more options seperated by commas, spaces or more require lines.
заведёте себе "секретную" опцию, ваши сервера будут отдавать её, а другие (без специальных хлопот) не будут. Ваши клиенты, соответственно, будут отвергать сообщения без этой опции.
Не оно?

Тогда ставьте более свежий dhcpcd, там есть whitelist.

Против целенаправленных атак не спасёт, но от глупостей поможет.

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: DHCP-сервер
« Ответ #19 : 18.11.2011 16:54:00 »
Решил тут поэкспериментировать, вбил правило:
iptables -A INPUT -m mac --mac-source 00:14:38:c4:ea:a1  -j DROP
тут mac адрес моего dhcp сервера, все перестало работать, но dhcp отрабатывает, как мне кажется dhcp отрабатывает, до netfilter. Так что Знайка тут не прав, ну или может у него есть рабочий вариант?
А вот товарищ VadimZelenin абсолютно прав, вбил в конфиг dhcpcd.conf строчку blacklistt 10.8.21.3 (это ip моего dhcp) и в логах увидел:
Nov 18 15:34:52 admin dhcpcd[10218]: eth0: ignoring blacklisted server 10.8.21.3
Адрес я не получил. У меня бранч 6 и тут версия dhcpcd:
dhcpcd-4.0.15-alt5
В сизифе есть: dhcpcd-5.2.12-alt1 и в этой версии действительно есть whitelist, т.е. если сильно надо ставьте из сизифа пишите whitelist ip.add.re.ss и все, проблема решена.
With best regards, Yury Konovalov aka 2:453/53

Знайка

  • Гость
Re: DHCP-сервер
« Ответ #20 : 18.11.2011 17:02:54 »
Решил тут поэкспериментировать, вбил правило:
iptables -A INPUT -m mac --mac-source 00:14:38:c4:ea:a1  -j DROP
тут mac адрес моего dhcp сервера, все перестало работать, но dhcp отрабатывает, как мне кажется dhcp отрабатывает, до netfilter. Так что Знайка тут не прав, ну или может у него есть рабочий вариант?
Никто не отрабатывает до пакетного фильтра. Учите матчасть. А потом разглагольствуйте кто прав, а кто нет. И на "слабо" меня брать не нужно.
« Последнее редактирование: 18.11.2011 17:04:43 от Знайка »

Оффлайн ksa

  • Модератор глобальный
  • *****
  • Сообщений: 9 049
Re: DHCP-сервер
« Ответ #21 : 18.11.2011 17:23:07 »
Знайка, Вы и так попались на слабе  :) Зачем было начинать говорить про то, о чем представления не имеете? Фильтровать  по мак, это прямо скажем, для начинающего. Мало того, что в виндах сменить мак проблем не составит (при этом сервер из сети просто пропадет и не будет выдавать никаких данных клиенту или будет, но этот процесс никак не поддается прогнозированию), так еще бывают матери (сам лично видел две таких) у которых при перезагрузке мак встроенной сетевухи менялся каждый раз! Пришлось руками опять же прибивать его гвоздями. А Вы говорите фильтрация DHCP трафика по мак. Лучше бы не говорили, если точно не уверены.

Знайка

  • Гость
Re: DHCP-сервер
« Ответ #22 : 18.11.2011 17:28:17 »
Знайка, Вы и так попались на слабе  :)
Пруф?

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: DHCP-сервер
« Ответ #23 : 18.11.2011 17:54:42 »
Знайка, Вы и так попались на слабе  :)
Пруф?
http://www.mail-archive.com/netfilter@lists.samba.org/msg03189.html
http://lists.netfilter.org/pipermail/netfilter/2006-May/065825.html
И наберите в гугле dhcp netfilter ...
В общем да, матчасть нужно учить.
With best regards, Yury Konovalov aka 2:453/53

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 370
Re: DHCP-сервер
« Ответ #24 : 18.11.2011 18:51:06 »
http://www.mail-archive.com/netfilter@lists.samba.org/msg03189.html
О как... "However, the ISC DHCP server uses an Internet Socket of protocol Raw"
А это подстава... Его тут и ebtables не возьмёт. Честно говоря, думал, что оно фильтруется всё же.
« Последнее редактирование: 18.11.2011 19:02:52 от asy »

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: DHCP-сервер
« Ответ #25 : 18.11.2011 19:07:49 »
И arptables тоже не берет, все же только опция whitelist.
With best regards, Yury Konovalov aka 2:453/53

Знайка

  • Гость
Re: DHCP-сервер
« Ответ #26 : 18.11.2011 20:13:58 »
:)

Оффлайн xdsl

  • Участник
  • *
  • Сообщений: 255
Re: DHCP-сервер
« Ответ #27 : 25.11.2011 07:34:35 »
Нда. Выходит iptables и dhcpcd ортогональны. И вообще, заблокировать на линуксе входящие raw-соединения нельзя. Никак.

Любопытно, а на winxp такие проблемы есть? Т.е. там dhcp-клиент, тоже помимо файрвола с сервером общается?
« Последнее редактирование: 25.11.2011 09:05:53 от xdsl »

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 370
Re: DHCP-сервер
« Ответ #28 : 25.11.2011 10:51:40 »
Нда. Выходит iptables и dhcpcd ортогональны. И вообще, заблокировать на линуксе входящие raw-соединения нельзя. Никак.
Знайка, судя по картинке, воспользовался блокировкой исходящих. Хотя, судя по его фразе "Никто не отрабатывает до пакетного фильтра", он просто заблокировал и вход, и выход, и "что-то сработало".
« Последнее редактирование: 25.11.2011 11:05:20 от asy »

Оффлайн speccyfan

  • Участник
  • *
  • Сообщений: 522
  • CCNA
    • speccyfan (Примеры различных конфигураций сетевых сервисов)
Re: DHCP-сервер
« Ответ #29 : 25.11.2011 11:15:39 »
Не знаю, что он там заблокировал, но ip адрес он получил, и роутинг какой-то тоже, то что событие попало в log iptables, так оно и у меня попадало, толку только с этого ноль. Нижние строчки только непонятны, что-то действительно не проходит. Только что это лень разбираться, добиться похожего результата можно разными способами, а знайка кстати правила никакие не показывает.
With best regards, Yury Konovalov aka 2:453/53