ARPWatch
В данном документе вкратце рассказывается об утилите ARPWatch
и о дополнениях к ней, разработанных в Интернет-провайдере Homelink.
Назначение ARPWatch
- отслеживать появление в сети новых устройств
- отслеживать подмену IP-адресов
- обнаруживать атаки ARP-вирусов
Принцип работы
- ARPWatch запускается на Unix-сервере и работает в фоновом режиме как демон
- ARPWatch слушает на указанном сетевом интерфейсе все широковещательные ARP-уведомления вида
"я, устройство с MAC-адресом 11-22-33-44-55-66, имею IP-адрес 77.88.99.111"
- Информация сохраняется во внутренней базе
- При появлении новых устройств или изменении существующих связок MAC-IP
отправляется уведомление по электронной почте
Недостатки
- Каждое уведомление отправляется отдельным сообщением.
Такая отчётность занимает много места, и самое главное - абсолютно лишена наглядности.
- В большой сети не всегда возможно подключить сервер с ARPWatch в каждый сегмент.
Разработанные дополнения
- Необязательный патч, который заменяет отправку писем созданием файлов в каталоге /var/log/arpwatch
- Набор утилит для перекладывания записей из файлов и/или почтового ящика в SQL-таблицу
- Веб-интерфейс для наглядного просмотра сообщений ARPWatch из почтового ящика, каталога с файлами и SQL-таблицы
Варианты хранения
- Для небольшого количества записей используйте почтовый ящик
- Для большого количества записей используйте сохранение в SQL
Установка с почтовым ящиком
- Установите arpwatch
- Убедитесь, что в системе уже существует псевдо-пользователь arpwatch, или создайте его
- Разрешите пользователю, с правами которого Веб-сервер запускает CGI-сценарии, чтение почтового ящика /var/mail/arpwatch
- Запускайте arpwatch с ключом "-m arpwatch@localhost"
Установка с файлами
- Установите arpwatch из исходных текстов с наложением патча
- Создайте каталог /var/log/arpwatch
- Разрешите пользователю arpwatch запись в него
- Разрешите пользователю, с правами которого Веб-сервер запускает CGI-сценарии, чтение из него
Установка с SQL-таблицей
- Проделайте все шаги из варианта с почтовым ящиком или с файлами
- Запустите в нужной базе arpwatch.sql, который создаст SQL-таблицу
- Добавьте в Cron вызов /path/to/arpwatch2sql | mysql ...
- В Webutils.pm исправьте функцию webutils_dbinit: закомментируйте "return undef" и впишите параметры подключения к базе
Установка Веб-интерфейса
- Поместите файлы arpwatch*.cgi и Webutils.pm в папку cgi-bin
Режимы Веб-интерфейса
- Показ сообщений с группировкой по MAC или IP
(пример 1,
пример 2)
- Фильтрация за последний день и час
- Показ всех сообщений для выбранного MAC или IP
(пример 3,
пример 4)
- Статистика по количеству сообщений для MAC и IP
(пример 5)
Скачать!
- ARPWatch доступен во всех основных дистрибутивах Unix/Linux
- Дополнения находятся по адресу http://sources.homelink.ru/arpwatch
- Отзывы принимаются по адресу ilya.evseev@гмайл.ком
Enjoy! :-)