2.0 KiB
2.0 KiB
Installation
Deployment contract
- Build выполняется на отдельной Debian 13 amd64 build-machine.
- Production-хост получает готовый Debian-пакет.
- На production-хосте не требуются Rust/cargo/source tree.
- Amnezia должна быть уже установлена и работать через Docker.
- Production-конфиг создаётся вручную;
config.example.tomlне копируется автоматически как боевой конфиг.
A. Build machine
A1. Подготовка build environment
./tools/build.sh --prepare-build-env --bootstrap-rust --yes
A2. Build и тесты
./tools/build.sh --build
A3. Сборка пакета
./tools/build.sh --package
sha256sum -c dist/SHA256SUMS
B. Transfer artifacts
scp dist/awg2-harness_*_amd64.deb root@vpn-host:/root/
scp config.toml root@vpn-host:/root/awg2-harness.config.toml
C. Production host
C1. Install package
apt install ./awg2-harness_*_amd64.deb
C2. Install config
install -d -m 0755 /etc/awg2-harness
install -m 0644 /root/awg2-harness.config.toml /etc/awg2-harness/config.toml
C3. Validate and apply
awg2-harness validate-config --config /etc/awg2-harness/config.toml
awg2-harness validate-runtime --config /etc/awg2-harness/config.toml
awg2-harness apply-limits --config /etc/awg2-harness/config.toml
awg2-harness apply-firewall --config /etc/awg2-harness/config.toml
awg2-harness status --config /etc/awg2-harness/config.toml
C4. Enable services
systemctl enable --now awg2-harness.service
systemctl enable --now awg2-reboot-scheduler.service
D. Manual source-tree install (staging/debug only)
Режим ./tools/build.sh --install предназначен для staging/debug с checkout-репозиторием.
Это не основной production deployment path.