Что происходит в вашей сети? Знакомьтесь Pi.Alert – ваш личный страж Wi-Fi

08 Feb, 2024

Репозиторий давно не обновлялся

Последнее обновление было 2 года назад.

2,522
🔱 153
👥 48

Наверняка вы хоть раз задумывались: а кто ещё сидит на моём Wi-Fi? Или, что хуже, не отключился ли от сети жизненно важный IoT-гаджет, пока вы спали? В мире, где каждый второй тостер "умный", а роутер — проходной двор, сетевая безопасность становится не просто прихотью, а необходимостью. Мы подключаем к сети всё подряд: от умных лампочек до систем видеонаблюдения, и порой забываем, что каждое новое устройство — это потенциальная точка входа для злоумышленников или просто "соседских" любителей бесплатного интернета.

Именно здесь на сцену выходит Pi.Alert – проект, который превратит ваш скромный Raspberry Pi (или любую другую Linux-машину) в настоящего цербера домашней или офисной сети. Это не просто сканер устройств, это полноценная система обнаружения вторжений (IDS) для вашей локальной сети, которая работает в фоновом режиме и бдительно следит за каждым битом трафика.

Главный экран Pi.Alert

Что умеет этот сетевой детектив?

Pi.Alert – это не просто утилита, которая раз в час пробежится по сети. Это система, которая постоянно мониторит вашу LAN/Wi-Fi и фиксирует любое изменение. Представьте, что у вас есть круглосуточный охранник, который знает в лицо (по MAC-адресу) каждого, кто имеет право находиться в вашем доме, и тут же бьёт тревогу при появлении незнакомца.

Ключевые возможности, которые меня зацепили:

  1. Непрерывный мониторинг и мгновенные оповещения. Pi.Alert не дремлет. Он постоянно сканирует сеть на предмет:

    Реклама
    • Новых устройств: Кто-то подключился впервые? Вы сразу узнаете.
    • Переподключений: Устройство, которое было отключено, снова в сети.
    • Отключений: Ваш "всегда подключенный" сервер или камера наблюдения вдруг пропали? Получите уведомление.
    • Изменений IP-адресов: Если устройство вдруг сменило свой внутренний IP, это тоже не останется незамеченным.
    • Изменений внешнего IP: Если ваш провайдер сменил вам внешний IP, Pi.Alert и об этом сообщит.
  2. Многоуровневый подход к сканированию. Вместо того чтобы полагаться на один метод, Pi.Alert использует до трёх способов обнаружения, что значительно повышает точность и надёжность:

    • Метод 1: arp-scan. Классика жанра. Утилита arp-scan использует ARP-фреймы для поиска устройств в сети. Это базовый, но очень эффективный способ.
    • Метод 2: Интеграция с Pi-hole (опционально). Если у вас уже работает Pi-hole (отличный DNS-сервер с блокировкой рекламы и трекеров), Pi.Alert может анализировать его активность. Устройства, которые не были обнаружены ARP-сканом, но активно используют DNS через Pi-hole, будут найдены. Это как дополнительный глаз, который видит скрытое.
    • Метод 3: Интеграция с dnsmasq (опционально). Если вы используете dnsmasq как DHCP-сервер, Pi.Alert может проверять выданные DHCP-аренды. Это позволяет обнаружить устройства, которым был назначен IP-адрес, но которые по какой-то причине "проскочили" мимо других методов сканирования.
  3. Интуитивно понятный веб-интерфейс. Ну какой же мониторинг без красивой визуализации? Pi.Alert предлагает удобный веб-фронтенд, который позволяет:

    • Вести инвентаризацию устройств, давать им понятные имена, помечать как "известные" или "неизвестные".
    • Визуально отслеживать сессии, подключенные устройства, избранные гаджеты, события, присутствие и даже количество одновременно подключенных устройств.
    • Получать детальную информацию по каждому устройству, включая историю подключений и IP-адресов.

    | Детали устройства | Сессии устройства | | -------------------- | -------------------- | | Присутствие устройства | Общее присутствие |

    Кстати, система также умеет отправлять отчёты по электронной почте, так что вы всегда будете в курсе событий, даже если нет возможности зайти в веб-интерфейс.

    | Пример отчета 1 | Пример отчета 2 | | -------------------- | -------------------- |

Под капотом: немного о технике

Проект состоит из двух основных частей:

  • Бэкенд: Написан на Python. Именно он отвечает за сканирование сети, сбор данных и их хранение в легковесной базе данных SQLite. Также он занимается отправкой уведомлений.
  • Фронтенд: Это веб-интерфейс, созданный с использованием PHP и JavaScript. Для красоты и удобства используются фреймворки Bootstrap и Admin.LTE, а также компонент FullCalendar для визуализации событий. В качестве веб-сервера по умолчанию используется Lighttpd.

Интересно, что автор проекта скромно извиняется за свой английский и "ограниченные знания Python, PHP и JavaScript". Но, на мой взгляд, результат получился более чем достойным! Это лишний раз доказывает, что главное – идея и желание её реализовать.

Установка: проще не бывает

Изначально Pi.Alert разрабатывался для Raspberry Pi, но без проблем запустится на большинстве других Linux-дистрибутивов. Установка максимально упрощена – достаточно одной команды:

curl -sSL https://github.com/pucherot/Pi.Alert/raw/main/install/pialert_install.sh | bash

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

Кому это будет полезно?

  • Домашним пользователям с "умным домом": Если у вас куча IoT-устройств, Pi.Alert поможет убедиться, что никто посторонний не подключился к вашей сети и что все ваши гаджеты на месте и работают.
  • Владельцам малого бизнеса: Для небольшого офиса, где нет сложных систем безопасности, Pi.Alert может стать простым и эффективным решением для базового мониторинга сети.
  • Энтузиастам и любителям Raspberry Pi: Это отличный проект для тех, кто хочет глубже погрузиться в сетевой мониторинг, понять принципы работы ARP, DHCP и DNS, а также попрактиковаться с Python и веб-разработкой.
  • Тем, кто просто хочет спать спокойно: Знать, что ваша сеть под присмотром, дорогого стоит.

Выводы: стоит ли пробовать Pi.Alert?

Однозначно да! Pi.Alert – это прекрасный пример того, как относительно простые инструменты и технологии могут быть объединены для решения очень актуальной и важной задачи. Проект легко развернуть, он предоставляет исчерпывающую информацию о вашей сети и, самое главное, даёт вам контроль и уверенность в безопасности. Если вы ищете надёжный и удобный способ отслеживать активность в вашей локальной сети, Pi.Alert определённо заслуживает вашего внимания. Попробуйте, и ваша сеть скажет вам "спасибо"!

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.