Skip to content
/ Alerter Public

Инструмент для мониторинга сетевой активности, предназначенный для обнаружения и оповещения о несанкционированных подключениях в локальной сети. Ниже ссылка на документацию⬇️:

License

Notifications You must be signed in to change notification settings

dim5x/Alerter

Repository files navigation

Openned issues Closed issues Lines of code Commits License: Unlicense Last commit

Actions Status Codacy Badge Maintainability

Docker size - Alerter.

Docker size - Web_view.

Alerter

Alerter — это инструмент для мониторинга и оповещения о сетевых событиях в локальной сети на основе входящих syslog-сообщений. Подходит для использования дома или в небольших офисах.

🚀 Возможности:

Скриншот программы Alerter.

  • Прием и хранение syslog-сообщений от сетевых устройств (например, роутеров).
  • Веб-интерфейс для просмотра логов.
  • Фильтрация по MAC-адресам, источникам и другим параметрам.
  • Управление списком доверенных MAC-адресов.
  • Авторизация пользователей.
  • Развертывание через Docker.

🗂️ Структура проекта:

Alerter/
├── alerter.py           # SYSLOG-сервер
├── web_view.py          # Веб-интерфейс
├── static/              # Статические файлы (JS, CSS)
├── templates/           # HTML-шаблоны
├── cicd/                # Docker, CI/CD, тесты
├── global.config        # Глобальные настройки
└── options.ini          # Настройки веб-интерфейса

📦 Установка:

1. Клонируйте репозиторий:

git clone https://github.com/dim5x/Alerter.git
cd Alerter

2. Установите зависимости:

Для запуска вручную требуется Python 3.9+ и PostgreSQL. Установите зависимости:

pip install -r requirements.txt

3. Настройте базу данных PostgreSQL:

NB: База данных, учетные данные должны соответствовать указанным в настройках *.config.

Установка (для linux): https://www.postgresql.org/download/linux/ubuntu/

Настройка базы данных:

3.1. Логинимся под системным пользователем:

 su - postgres

3.2. Запускаем утилиту:

psql

3.3. Создаём пользователя для сервиса:

create user alerter with password 'alerter';

3.4. Создаём базу данных:

create database alerter_destination;

3.5. Предоставляем пользователю права на базу данных:

grant all privileges on database alerter_destination to alerter;

4. Настройте параметры подключения:

Прослушиваемый интерфейс:

listen_addresses = '*'

Предоставляем доступ, например, для всех пользователей во всей локальной сети:

host	all	all	0.0.0.0/0	md5

5. Запустите сервер логов:

python3 alerter.py
  • Настройка: в роутере прописать IP-адрес SYSLOG сервера.
  • Примечание: роутер и ПК с которого запущен скрипт должны быть в одной сети.

6. Запустите веб-интерфейс:

python3 web_view.py

📦 Развертывание через Docker:

В каталоге cicd находятся Dockerfile и инструкции. Пример запуска:

cd cicd
docker-compose up --build

🌐 Веб-интерфейс:

Интерфейс доступен по адресу: http://localhost:5000

Возможности:

  • Просмотр логов в реальном времени
  • Фильтрация по времени, источнику, MAC-адресу
  • Управление белыми списками MAC-адресов

Скриншот: Скриншот программы Alerter.

🧪 Тестирование:

В папке cicd есть инструменты и скрипты для тестирования, включая симуляцию syslog-сообщений.

🧑‍💻 Автор:


Alerter — ваш первый шаг к прозрачному мониторингу.

About

Инструмент для мониторинга сетевой активности, предназначенный для обнаружения и оповещения о несанкционированных подключениях в локальной сети. Ниже ссылка на документацию⬇️:

Topics

Resources

License

Stars

Watchers

Forks

Contributors 5