| Server IP : 85.155.190.233 / Your IP : 216.73.216.103 Web Server : nginx/1.24.0 System : Linux antigravity-cli 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 x86_64 User : wp-moonbloom ( 1001) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /opt/Gemini_Swarm_Core/ |
Upload File : |
# Отчет по безопасности и конфигурации VPS ## 1. Результаты комплексного аудита (25.05.2026) ### Инфраструктура (Hardening) - **SSH:** Перенесен на защищенный порт `50022`. - **Авторизация:** Пароли полностью отключены (`PasswordAuthentication no`). Доступ только по ED25519 ключам. - **Root-доступ:** `PermitRootLogin prohibit-password` (только по ключам). - **Firewall (UFW):** Активен. Разрешены только порты `50022` (SSH), `80`, `443`. Все остальные входящие соединения блокируются. - **Fail2ban:** Настроен на порт `50022`. Бан на 24 часа после 3 неудачных попыток. ### Сетевая безопасность (Live Analysis) - **Службы:** Внешние подключения принимает только SSH. - **Бот (tg_bridge.py):** Работает в режиме polling (исходящие соединения). Не открывает порты во внешний интернет. - **DNS:** Службы `systemd-resolve` изолированы на `127.0.0.53/54`. ### Управление сессиями и процессами - **Зомби-сессии:** Все висящие сессии (logind) принудительно завершены. - **Оптимизация:** Включен `KillUserProcesses=yes` в `logind.conf` для автоматической очистки ресурсов после выхода пользователя. - **Изоляция:** Приложение роя работает под выделенным пользователем `swarm` без sudo-прав. - **Дополнительный изолированный пользователь:** Создан пользователь `sheets-agent` (без парольного входа) для изоляции среды выполнения Google GenAI SDK (ADK) агентов. - **Директория приложения:** `/home/sheets-agent/app` - **Авторизация:** Беспарольная, доступ только по выделенному SSH-ключу `id_ed25519_sheets_agent`. - **Права Docker:** Пользователь добавлен в группу `docker` для управления контейнерами без sudo. ### Секреты (Secret Management) - **Хранение:** API-ключи (Tavily, Firecrawl, Exa) хранятся в **GCP Secret Manager**. - **Инъекция:** Ключи попадают в память процесса через `secretHelper.js`, на диске в открытом виде не хранятся. --- ## 2. План по внедрению улучшений (Roadmap) ### Этап 1: Мгновенные уведомления (Telegram Alerts) - **SSH Login Alert:** Скрипт-хук, отправляющий сообщение в Telegram при каждом успешном входе на сервер. - **Fail2ban Alert:** Уведомление о каждом забаненном IP-адресе. ### Этап 2: Проактивный мониторинг - **Anomaly Detection:** Настройка уведомлений на использование команд `sudo` или попытки чтения файлов в `/etc/`. - **Auditd:** Внедрение системы аудита файловых операций над критическими конфигами роя. ### Этап 3: Автоматизация обслуживания - **Unattended Upgrades:** Настройка автоматической установки патчей безопасности Linux. - **Log Rotation:** Оптимизация ротации `auth.log` для предотвращения накопления отпечатков ключей. --- ## Технический стек - **Backend:** `tg_bridge.py` (aiogram). - **Security:** PAM, loginctl, ufw, fail2ban. - **Cloud:** Google Cloud Secret Manager.