Prepare 0.1.0 for lab release: durable handlers, HTTP Compose, CI, and pulumi-tests.
- Harden DB-backed handlers and seed profiles; align client wire shapes for cluster resources, QEMU config, and node SSL fields - Serve plain HTTP on Compose :8006; keep TLS optional (--profile tls) and terminate HTTPS at Kubernetes Ingress - Add pulumi-tests (full contract surface majors 6–9 + BPG lifecycle) and make pulumi-tests - Ship bilingual docs, CHANGELOG, SECURITY, CONTRIBUTING, and GitHub Actions (make ci + Compose/Helm validation)
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
**Language / Язык:** [English](../security.md) | [Русский](security.md)
|
||||
|
||||
# Безопасность
|
||||
|
||||
Политика репозитория и репортинг: [SECURITY.md](../../SECURITY.md).
|
||||
|
||||
## Модель угроз лаборатории
|
||||
|
||||
Этот проект — **локальный / CI лабораторный симулятор**. Он не закалён как
|
||||
multi-tenant публичный сервис Proxmox. Учётные данные по умолчанию, demo-контролы UI
|
||||
и эндпоинты совместимости удобны для разработки и намеренно открыты в стандартном
|
||||
Compose-стеке.
|
||||
|
||||
Не выставляйте порт `8006` в недоверенные сети без дополнительных мер,
|
||||
которые вы обеспечите сами. Хост `:8006` — lab HTTPS API-шлюз (у реального PVE
|
||||
на этом порту HTTPS). Хост **`:8007` этим стеком не используется** (на железе
|
||||
обычно PBS). См. [Порты и TLS](configuration.md#порты-и-tls).
|
||||
|
||||
## Учётные данные и секреты
|
||||
|
||||
- Пароли и секреты API-токенов хранятся как scrypt-хеши.
|
||||
- Значения тикетов подписываются HMAC и краткоживущие.
|
||||
- CSRF привязывает мутации к сессиям по тикету.
|
||||
- Логи редактируют распознанные представления тикетов, паролей и токенов.
|
||||
- Ответы create/regenerate токена показывают секрет один раз; GET его никогда не
|
||||
выводит.
|
||||
|
||||
Меняйте `TICKET_SIGNING_KEY` для любой общей лаборатории. Замените seeded-пароли и
|
||||
токены перед демонстрацией другим людям.
|
||||
|
||||
## TLS-материалы
|
||||
|
||||
`docker/tls/` содержит встроенный self-signed сертификат для локального шлюза. Он
|
||||
нужен, чтобы неизменённые TLS-клиенты (например, proxmoxer) могли подключаться.
|
||||
**Никогда** не переиспользуйте эти файлы в production.
|
||||
|
||||
## Администрирование симулятора
|
||||
|
||||
Сейчас **нет** отдельно аутентифицированной control plane `/_simulator`.
|
||||
Helper-маршруты Web UI под `/ui/api/*` и `/admin/compatibility*` доступны, когда
|
||||
процесс достижим. Считайте границей доверия сетевую экспозицию.
|
||||
|
||||
## Симулированные внешние системы
|
||||
|
||||
LDAP sync stamps, pending-состояние OpenID, ACME и эндпоинты Ceph сохраняют только
|
||||
локальное состояние симулятора. Они не открывают реальные подключения к внешним IdP
|
||||
или кластерам. Не полагайтесь на симулятор для тестирования защиты от утечки
|
||||
учётных данных к реальным провайдерам.
|
||||
Reference in New Issue
Block a user