Этот проект представляет собой Telegram-бота, который позволяет мониторить состояние сервера и выполнять команды на нем. Бот предоставляет информацию о загрузке процессора, оперативной памяти, дискового пространства, температуре CPU, а также позволяет выполнять команды на сервере, управлять SSH-ключами и просматривать сетевую активность.
-
Мониторинг состояния сервера:
- Загрузка CPU, RAM, диска.
- Температура CPU.
- Проверка критических событий (например, высокая загрузка CPU или RAM).
-
Выполнение команд на сервере:
- Возможность выполнения произвольных команд через бота.
-
Управление SSH-ключами:
- Добавление и удаление SSH-ключей.
-
Просмотр сетевой активности:
- Просмотр активных сетевых соединений.
- Просмотр сетевого трафика.
-
Топ процессов:
- Просмотр топ-5 процессов по загрузке CPU.
- Клонируйте репозиторий:
git clone https://github.com/ваш-репозиторий.git cd ваш-репозиторий
- Установите зависимости:
pip install -r requirements.txt
- Создайте файл
.env
и добавьте в него токен бота и ID чата:TELEGRAM_BOT_TOKEN=ваш_токен TELEGRAM_CHAT_ID=ваш_chat_id
- Запустите бота:
python main.py
После запуска бота вы можете использовать следующие команды:
- /start - Начать работу с ботом.
- /help - Показать список доступных команд.
- /status - Показать текущее состояние сервера.
- /c <команда> - Выполнить команду на сервере.
- /top - Показать топ процессов.
- /netstat - Показать активные сетевые соединения.
- /traffic - Показать сетевой трафик.
- /ssh <add|remove> <публичный_ключ> - Управление SSH-ключами.
Бот ведет логирование в консоль с уровнем INFO
. Логи содержат информацию о запуске бота, ошибках и других важных событиях.
aiogram
- для работы с Telegram API.psutil
- для получения информации о системе.python-dotenv
- для загрузки переменных окружения из.env
файла.
Этот проект распространяется под лицензией MIT. Подробнее см. в файле LICENSE.