spvd.ru
spvd.ru
Павел Селиванов. Статьи, обзоры, заметки

DHCP RogueChecker – в хозяйстве пригодится

Недавно понадобилось перенести сервер DHCP с Windows 2003 Server на Windows Server 2008 (делается, кстати, очень просто, ниже скажу об этом пару слов). И вспомнил один случай, когда-то давно со мной приключившийся. Имя ему - Rogue DHCP Server.

Сначала обещанная пара слов о переносе DHCP сервера с Windows 2003 Server на Windows Server 2008. Я воспользовался самым простым в данном случае, на мой взгляд, способом. На старом сервере выполняем экспорт в файл:

>netsh dhcp server export <путь и имя файла> all

На новом сервере добавляем роль DHCP server и импортируем:

>netsh dhcp server import <путь и имя файла> all

Если развёрнута AD, удаляем старый сервер из авторизованных и авторизуем новый, сделать это можно из консоли управления DHCP или так:

>netsh dhcp delete server <dns-имя старого сервера> <ip-адрес старого сервера>
>netsh dhcp add server <dns-имя нового сервера> <ip-адрес нового сервера>

Запускаем, проверяем, что всё работает :), удаляем со старого сервера роль DHCP.

Теперь о том давнем случае. Я тогда занимался администрированием небольшой сети, где-то не более сотни рабочих мест. Коллега попросил на несколько дней домой простенький Ethernet-роутер, оставшийся не у дел со времён, когда в компании насчитывался только с десяток компьютеров. Получив от меня роутер, довольный коллега удалился с ним в свой кабинет и решил ознакомиться с его возможностями прямо на месте. Для этого он сбросил настройки роутера к заводским, и не придумал ничего лучше, как подключить LAN-сегмент роутера в нашу корпоративную сеть.

Как известно, большинство недорогих SOHO роутеров поставляются со встроенным DHCP сервером, включенным по умолчанию. И получили мы в сети его - rogue DHCP server. Когда стали истекать сроки аренды, клиенты стали получать адреса от DHCP сервера роутера, и нормальная работа сети оказалась нарушена.

Фальшивый, или неавторизованный, DHCP сервер может появиться не только по ошибке. (Например, не очень опытный ИТ-сотрудник может установить в исследовательских целях непосредственно на рабочем месте софт, в том числе обладающий функцией DHCP сервера, или просто зачем-то включит имеющуюся в Windows функцию ICS.) Всё может быть намного серьёзней, rogue DHCP server может быть началом атаки типа "человек посередине". Поэтому в крупных и ответственных сетях с этим явлением надо бороться заранее, средствами систем IDS и с помощью высокоуровневых управляемых коммутаторов.

Описание таких методов выходит за рамки этой небольшой заметки, а здесь я опишу один из вариантов быстрого обнаружения "левых" DHCP серверов для небольшой или бюджетной сети. Метод всего один – периодически проверять наличие DHCP серверов в сети, отправляя запрос на получение адреса, и сверять ответившие серверы со списком известных "легальных" серверов.

Есть множество готовых утилит для этого, например dhcploc.exe непосредственно от Microsoft, Roadkil's DHCP Find под Windows, dhcp_probe для UNIX и UNIX-like, Rogue Detect, написанный на Perl, и т. п. Но сегодня я хочу отметить маленькую утилиту RogueChecker от Subhash Badri, написана под Windows, с графическим интерфейсом.

DHCP RogueChecker

Инсталляции не требует, после запуска открывает окно и создаёт значок в системном трее. В том числе RogueChecker может показывать авторизованные в AD серверы DHCP.

 

DHCP RogueChecker

На второй вкладке можно выбрать интерфейсы и задать частоту поиска DHCP серверов.

 

DHCP RogueChecker

После первого поиска все найденные DHCP серверы будут считаться неизвестными. Утилита не сверяет найденные серверы со списком авторизованных в AD. Сначала я счёл это недостатком, но потом пришёл к выводу, что всё правильно. Не составит труда отметить галочками правильные серверы, а независимый список авторизованных позволит обнаружить ситуацию, когда DHCP сервер уже не используется, но информация о его авторизации по-прежнему хранится в AD. Кстати, список авторизованных в AD серверов DHCP можно посмотреть, выполнив на сервере:

>netsh dhcp show server

 

DHCP RogueChecker

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

DHCP RogueChecker

Значок в трее меняется, если обнаружен неизвестный DHCP сервер.

Оцените материал: 
twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru rutvit.ru myspace.com blogger.com liveinternet.ru livejournal.ru memori.ru google.com yandex.ru
Комментариев: 2
  1. Какой-то юный воинствующий *nix'оид | 2012-11-03 в 00:39:32

    Windows ставят в качестве сервера? оО

  2. Всякому серверу свои задачи. Если что, я BSD'шник. А вот мой опыт, кстати, говорит, что обычно те, кто в общем говорят, что Windows г-но, чаще всего и в линуксах всяких не очень-то понимают. ;)

Оставить комментарий

Отправка комментария без регистрации. Комментарий публикуется после проверки.

Имя и сайт используются только при регистрации

Комментарий с авторизацией. Также можно сразу зарегистрироваться одновременно с первым комментарием. Для регистрации потребуется указать адрес электронной почты и придумать пароль, на электронную почту придет письмо с дальнейшей инструкцией по завершению регистрации. Комментарий публикуется после проверки.

(обязательно)