Техническая документация
Инфраструктура, конфигурация и эксплуатация ve-playground.
Что где
- Подключение инструментов — инструкция для аналитика
- Хост — характеристики, ОС, SSH, файрвол, fail2ban, SSL, бэкапы
- Nginx — виртуальные хосты, allow-листы
- DokuWiki — версия, неймспейсы, ACL, Remote API
- ToolMesh — MCP-сервер, инструменты, DADL
- Открытые риски — незакрытые проблемы
Схема
Интернет
│
▼
┌──────────────────────┐
│ nginx (хост, 80/443)│ HTTPS, allow-листы
└──────────┬───────────┘
│ proxy_pass на 127.0.0.1
┌───────────┼────────────┬──────────────┐
▼ ▼ ▼ ▼
:8080 :8123 :8443 (не публикуется)
DokuWiki ToolMesh Telegram-бот KeyDB
│ │ │ │
└───────────┴────────────┴──────────────┘
docker network: ve-playground
Все контейнеры публикуются только на loopback. Единственный процесс, слушающий публичные интерфейсы — nginx.
Принципы, которых придерживаемся
Версии образов фиксируются
Ни один образ не разворачивается по тегу latest. Для проектов без релизов
фиксируется commit SHA, для внешних файлов — sha256.
Модель не имеет прав на собственную конфигурацию
У пользователя claude, под которым работает модель, на неймспейс
ai:claude:system-prompts: стоит только чтение.
Запись промптов идёт под отдельной учётной записью, минуя модель.
Границы безопасности не полагаются на поведение модели
Там, где важно ограничить действия, ограничение делается технически (ACL, allow-лист, отдельный сервис с узким API), а не инструкцией в промпте. Модель может отказаться делать опасное действие — но проверка не должна на это опираться.