Расширена документация secure-проекта

This commit is contained in:
2026-08-02 22:47:32 +03:00
parent e54dc03864
commit b748701009
+41 -2
View File
@@ -1,3 +1,42 @@
# Proxmox-VPS-Panel-secure # Proxmox VPS Panel Secure
Защищённая версия self-hosted панели для управления VM и LXC в Proxmox VE Защищённая переработка `Proxmox-VPS-Panel`.
## Реализовано в базовой версии
- запуск запрещён с демонстрационным `SECRET_KEY`;
- TLS-проверка Proxmox включена по умолчанию;
- пароли обрабатываются через Argon2id;
- access token имеет короткий срок жизни;
- CORS принимает только явно заданные origins;
- backend работает от non-root пользователя;
- backend не публикуется наружу напрямую;
- добавлены healthcheck и readiness-проверка PostgreSQL;
- добавлены security-заголовки Nginx;
- зависимости Python зафиксированы по версиям;
- конфигурация отделена от исходного кода.
## Запуск
```bash
cp .env.example .env
# задайте SECRET_KEY длиной не менее 32 символов,
# POSTGRES_PASSWORD, параметры Proxmox и ALLOW_ORIGINS
docker compose up -d --build
```
Frontend будет доступен на `http://host:5173`. Для production следует использовать HTTPS на внешнем reverse-proxy.
## Следующие этапы переноса функциональности
1. Перенести модели пользователей, шаблонов и инстансов.
2. Добавить Alembic-миграции.
3. Реализовать очередь провижининга и резервирование VMID.
4. Перенести Proxmox client с ожиданием и повторными попытками задач.
5. Передавать VM credentials через cloud-init, а LXC credentials — через API создания контейнера.
6. Не хранить пароли гостевых систем после однократной выдачи.
7. Добавить rate limiting, аудит и автоматические тесты.
## Безопасность
Не используйте `root@pam` для API-токена. Создайте отдельного Proxmox-пользователя с минимальным набором прав. Не публикуйте `.env`, не отключайте TLS-проверку и настройте резервное копирование PostgreSQL.