Files
PyGuardian/.history/examples/telegram-commands_20251125204304.md
Andrey K. Choi a24e4e8dc6
Some checks failed
continuous-integration/drone Build is failing
feat: PyGuardian v2.0 - Complete enterprise security system
 New Features:
🔐 Advanced agent authentication with JWT tokens
🌐 RESTful API server with WebSocket support
🐳 Docker multi-stage containerization
🚀 Comprehensive CI/CD with Drone pipeline
📁 Professional project structure reorganization

🛠️ Technical Implementation:
• JWT-based authentication with HMAC-SHA256 signatures
• Unique Agent IDs with automatic credential generation
• Real-time API with CORS and rate limiting
• SQLite extended schema for auth management
• Multi-stage Docker builds (controller/agent/standalone)
• Complete Drone CI/CD with testing and security scanning

�� Key Modules:
• src/auth.py (507 lines) - Authentication system
• src/api_server.py (823 lines) - REST API server
• src/storage.py - Extended database with auth tables
• Dockerfile - Multi-stage containerization
• .drone.yml - Enterprise CI/CD pipeline

🎯 Production Ready:
 Enterprise-grade security with encrypted credentials
 Scalable cluster architecture up to 1000+ agents
 Automated deployment with health checks
 Comprehensive documentation and examples
 Full test coverage and quality assurance

Ready for production deployment and scaling!
2025-11-25 21:07:47 +09:00

11 KiB
Raw Blame History

PyGuardian Telegram Bot Commands Examples

Примеры команд для управления системой через Telegram

#==========================================================================

1. Основные команды безопасности

#==========================================================================

Получить статус системы

/status

Заблокировать IP адрес

/block 192.168.1.100

Разблокировать IP адрес

/unblock 192.168.1.100

Показать активные сессии

/sessions

Завершить сессию пользователя

/kick username

Просмотреть логи безопасности

/logs security

#==========================================================================

2. Команды управления кластером (только для контроллера)

#==========================================================================

Показать все агенты в кластере

/cluster status

Добавить новый сервер в кластер

/cluster add 192.168.1.50 root /path/to/ssh/key

Развернуть агента на сервере

/cluster deploy 192.168.1.50

Проверить соединение с агентом

/cluster ping agent-001

Обновить конфигурацию агента

/cluster update agent-001

Перезапустить агент

/cluster restart agent-001

Удалить агент из кластера

/cluster remove agent-001

Показать логи агента

/cluster logs agent-001

#==========================================================================

3. Интерактивные диалоги

#==========================================================================

Пример диалога добавления сервера в кластер:

👤 User: /cluster add

🤖 Bot:

🔗 Добавление нового сервера в кластер

Введите IP адрес сервера:

👤 User: 192.168.1.50

🤖 Bot:

IP адрес: 192.168.1.50 ✅

Введите имя пользователя для SSH подключения:
(по умолчанию: root)

👤 User: root

🤖 Bot:

Пользователь: root ✅

Выберите метод аутентификации:
[1] SSH ключ
[2] Пароль
[3] Отмена

👤 User: 1

🤖 Bot:

Метод аутентификации: SSH ключ ✅

Отправьте файл приватного ключа или укажите путь к нему:
(например: /root/.ssh/id_rsa)

👤 User: /root/.ssh/cluster_key

🤖 Bot:

SSH ключ: /root/.ssh/cluster_key ✅

Подтвердите добавление сервера:
IP: 192.168.1.50
Пользователь: root
SSH ключ: /root/.ssh/cluster_key

[Подтвердить] [Отмена]

👤 User: Подтвердить

🤖 Bot:

⏳ Подключение к серверу 192.168.1.50...
✅ Соединение установлено
⏳ Установка PyGuardian Agent...
⏳ Настройка конфигурации...
⏳ Запуск службы...
✅ Агент успешно развернут!

🆔 ID агента: agent-003
📡 Статус: Онлайн
🕐 Время развертывания: 2 мин 34 сек

#==========================================================================

4. Уведомления и алерты

#==========================================================================

Уведомления безопасности:

🚨 SECURITY ALERT

🕐 Time: 2024-01-15 14:30:25
🎯 Server: web-server-01 (192.168.1.10)
⚠️ Event: Multiple failed SSH login attempts
📍 Source: 203.0.113.5
📊 Attempts: 5 failed attempts in 2 minutes

Action taken: IP blocked for 5 minutes

Уведомления кластера:

🔄 CLUSTER EVENT

🕐 Time: 2024-01-15 14:35:10
🎯 Agent: database-server-02 (agent-005)
⚠️ Event: Agent disconnected
🔍 Reason: Network timeout

Status: Attempting reconnection...

Уведомления о ресурсах:

📈 RESOURCE ALERT

🕐 Time: 2024-01-15 14:40:15
🎯 Server: app-server-03 (192.168.1.30)
⚠️ Event: High CPU usage
📊 Current: 87% (threshold: 80%)
⏱️ Duration: 5 minutes

Recommendation: Check running processes

#==========================================================================

5. Команды мониторинга

#==========================================================================

Показать ресурсы системы

/resources

Показать статистику файрвола

/firewall stats

Показать активные подключения

/connections

Показать топ процессов

/processes

Проверить обновления системы

/updates

Показать информацию о дисках

/disk

Показать сетевую статистику

/network

#==========================================================================

6. Команды управления файрволом

#==========================================================================

Показать правила файрвола

/firewall rules

Добавить правило файрвола

/firewall add tcp 80 allow

Удалить правило файрвола

/firewall remove tcp 80

Временно отключить файрвол

/firewall disable

Включить файрвол

/firewall enable

Показать заблокированные IP

/firewall blocked

#==========================================================================

7. Команды резервного копирования

#==========================================================================

Создать резервную копию

/backup create

Показать список резервных копий

/backup list

Восстановить из резервной копии

/backup restore backup-20240115.tar.gz

Настроить автоматическое резервное копирование

/backup schedule daily 03:00

#==========================================================================

8. Административные команды

#==========================================================================

Показать конфигурацию

/config show

Обновить конфигурацию

/config update telegram.admin_users [123456789, 987654321]

Перезагрузить конфигурацию

/config reload

Показать версию системы

/version

Обновить систему

/update system

Перезапустить службы

/restart services

#==========================================================================

9. Команды отладки

#==========================================================================

Показать подробные логи

/debug logs

Проверить соединение с базой данных

/debug database

Тестировать уведомления

/debug notify

Показать состояние служб

/debug services

Экспортировать диагностическую информацию

/debug export

#==========================================================================

10. Примеры массового управления кластером

#==========================================================================

Обновить все агенты в кластере

/cluster update all

Перезапустить все агенты

/cluster restart all

Показать сводку по всем агентам

/cluster summary

Выполнить команду на всех агентах

/cluster exec "systemctl status nginx"

Отправить конфигурацию на все агенты

/cluster config push firewall.yaml

Собрать логи со всех агентов

/cluster logs collect

#==========================================================================

11. Интеграция с внешними системами

#==========================================================================

Отправить метрики в Grafana

/metrics export grafana

Синхронизировать с SIEM системой

/siem sync

Обновить базу IP репутации

/reputation update

Отправить отчет по email

/report email weekly

#==========================================================================

12. Примеры автоматических ответов

#==========================================================================

При попытке несанкционированного доступа:

🚨 INTRUSION DETECTED

An unauthorized access attempt has been detected and blocked automatically.

🔹 Details:
• Source IP: 203.0.113.42
• Target: ssh://server-01:22
• Time: 2024-01-15 15:45:30
• Action: IP blocked for 1 hour

🔹 Recommendations:
• Review SSH access policies
• Consider IP whitelisting
• Enable 2FA for critical accounts

Type /unblock 203.0.113.42 to manually unblock if needed

При превышении ресурсов:

⚠️ RESOURCE WARNING

High resource usage detected on multiple servers.

🔹 Affected servers:
• web-01: CPU 85% 📈
• db-01: Memory 92% 🧠
• app-01: Disk 88% 💾

🔹 Auto-scaling:
• Cluster load balancer activated
• Additional instances provisioning...
• ETA: 3 minutes

Type /resources for detailed information

#==========================================================================

13. Кастомные команды через плагины

#==========================================================================

Wordpress специфичные команды

/wp update plugins /wp backup database
/wp security scan

Docker управление

/docker ps /docker restart container_name /docker logs container_name

Nginx управление

/nginx reload /nginx test /nginx status

SSL сертификаты

/ssl check domain.com /ssl renew all /ssl notify expiring

#==========================================================================

14. Голосовые команды (если поддерживается)

#==========================================================================

Примеры голосовых сообщений:

🎤 "Заблокировать IP 192.168.1.100" 🎤 "Показать статус кластера"
🎤 "Перезапустить все службы" 🎤 "Создать резервную копию"

Ответы голосом:

🔊 "IP адрес заблокирован" 🔊 "Все службы кластера работают нормально" 🔊 "Перезапуск служб завершен успешно" 🔊 "Резервная копия создана"