67 lines
3.2 KiB
Markdown
67 lines
3.2 KiB
Markdown
|
|
# Bill of Materials
|
|||
|
|
|
|||
|
|
Версия: **2026-05-18**
|
|||
|
|
|
|||
|
|
## VPN-узлы (FI/FRA/US, Ubuntu 22.04/24.04)
|
|||
|
|
|
|||
|
|
| Компонент | Версия | Источник | Лицензия | Назначение |
|
|||
|
|
|---|---|---|---|---|
|
|||
|
|
| Xray-core | 26.2.6 | https://github.com/XTLS/Xray-core | MPL-2.0 | VPN inbound (vless+reality+xtls-rprx-vision) |
|
|||
|
|
| Xray-install | v25.10.21 (pinned) | https://github.com/XTLS/Xray-install | MIT | Установщик systemd-юнита |
|
|||
|
|
| fail2ban | apt default | https://github.com/fail2ban/fail2ban | GPL-2.0 | SSH brute-force защита |
|
|||
|
|
| ufw | apt default | system | GPL-3.0 | Firewall |
|
|||
|
|
| OpenSSH | apt default | system | BSD | Доступ admin |
|
|||
|
|
| systemd | apt default | system | LGPL | Process supervision |
|
|||
|
|
| montana-node | (см. genesis-manifest.json) | hub.montana.quest/Node/bin/ | Apache-2.0 / MIT | TimeChain p2p (M8) |
|
|||
|
|
|
|||
|
|
### Дополнительно на FRA
|
|||
|
|
|
|||
|
|
| Компонент | Версия | Назначение |
|
|||
|
|
|---|---|---|
|
|||
|
|
| CrowdSec | apt | Distributed IPS, whitelist кластерных IP |
|
|||
|
|
|
|||
|
|
## Orchestrator (Moscow, Ubuntu 22.04)
|
|||
|
|
|
|||
|
|
| Компонент | Версия | Источник | Лицензия |
|
|||
|
|
|---|---|---|---|
|
|||
|
|
| Python | 3.10+ | system | PSF |
|
|||
|
|
| Flask | system (apt: python3-flask) | https://flask.palletsprojects.com | BSD-3 |
|
|||
|
|
| nginx | apt default | http://nginx.org | BSD-2 |
|
|||
|
|
| gunicorn (для /vpn/sub :5008) | apt | https://gunicorn.org | MIT |
|
|||
|
|
|
|||
|
|
## Управляющий слой
|
|||
|
|
|
|||
|
|
| Компонент | Версия | Источник | Назначение |
|
|||
|
|
|---|---|---|---|
|
|||
|
|
| Cloudflare API v4 | live | https://api.cloudflare.com/client/v4/ | DNS multi-A |
|
|||
|
|
| macOS Keychain | system | Apple | Хранилище токенов admin |
|
|||
|
|
|
|||
|
|
## Клиент
|
|||
|
|
|
|||
|
|
| Платформа | Приложение | Источник | Версия |
|
|||
|
|
|---|---|---|---|
|
|||
|
|
| iOS | Happ | App Store | актуальная |
|
|||
|
|
| Android | v2rayNG (rebrand «Монтана») | hub.montana.quest/Android/ | 4.0.0 |
|
|||
|
|
| macOS | v2rayU / Hiddify | open source | актуальная |
|
|||
|
|
|
|||
|
|
## Зависимости с прямым воздействием на безопасность
|
|||
|
|
|
|||
|
|
- **Xray-core 26.2.6** — основная implementation Reality. Обновлять при обнаружении CVE.
|
|||
|
|
- **OpenSSL** (system, через TLS-handshake probe) — проверка cert chain в watchdog.
|
|||
|
|
- **fail2ban + ufw + crowdsec** — defence-in-depth для SSH/HTTP вектора.
|
|||
|
|
- **Cloudflare** — single trust anchor для DNS управления.
|
|||
|
|
|
|||
|
|
## Pinned vs floating
|
|||
|
|
|
|||
|
|
| Что pinned | Что floating |
|
|||
|
|
|---|---|
|
|||
|
|
| Xray-install installer URL (`v25.10.21`) | Xray-core (берётся latest installer'ом — TODO: pin) |
|
|||
|
|
| Universal Reality keypair (фиксирован до ротации) | Все system packages (apt) |
|
|||
|
|
| Cloudflare API token | montana-node бинарь (берётся с хаба, без checksum — TODO: SHA256 в manifest) |
|
|||
|
|
|
|||
|
|
## Open TODO для SBOM-уровня (P2)
|
|||
|
|
|
|||
|
|
- Pin конкретной версии xray-core в install (через `--version` флаг)
|
|||
|
|
- SHA256 для бинаря montana-node в genesis-manifest.json + verify в join.sh
|
|||
|
|
- Подпись manifest'а (cosign / minisign) с публичным ключом в публичных артефактах
|