# Mirror Tool — Linux x64 ```sh tar -xzf mirror-tool-linux-x64.tar.gz cd mirror-tool-linux-x64 ./run.sh ``` Панель слушает все IPv4-интерфейсы: **http://IP-СЕРВЕРА:6700**. Пароль по умолчанию: **mirror-tool-change-me**. Настройки — в `mirror.toml`: ```toml [web] listen = "0.0.0.0:6700" password = "mirror-tool-change-me" state_file = "data/state.json" ``` Измените `password` и перезапустите процесс. Минимум12 символов; перед использованием в общей сети замените стандартное значение. Созданный конфиг имеет права0600. Пароль не выводится в логи/API. Если `password` не указан, используется переменная MIRROR_PASSWORD; старый run.sh-пароль из `data/panel-password` также подхватывается. Явный `web.password` имеет приоритет. Запускать от root не требуется для портов выше1023. Обновление с v0.1.0 не перезаписывает ваш конфиг: для доступа по IP измените существующее `[web] listen` на `"0.0.0.0:6700"` и задайте `password` в той же секции. Для локального доступа можно явно оставить `"127.0.0.1:6700"`. Первый запуск создаёт пустой mirror.toml. Добавьте команды и прокси в панели; нажмите название сервиса для настройки слушателя и upstream-порта. Выберите primary, реплики и включите сервис. Порты должны быть свободны. Подмена флагов выключена; системные маршруты/firewall не изменяются. Игровые адреса не угадываются. mirror.example.toml содержит полный пример. Для ForcAD добавьте [scoreboard] в mirror.toml и перезапустите процесс. Подробности в docs/configuration.md. `./run.sh check` проверяет конфиг, но не сетевую доступность или ключ кеша. Остановка: Ctrl+C или SIGTERM. Для постоянной работы используйте tmux либо приложенный шаблон systemd (требует установки бинарника, пользователя и конфигов, как описано в исходном README проекта). С закрытием SSH foreground-процесс может завершиться. run.sh сам автозапуск и системную службу не устанавливает. Сохраняйте mirror.toml и каталог data при обновлении. Архив их не содержит: распаковка обновления не заменяет рабочие настройки/пароль/состояние. Остановите процесс перед обновлением. Настройки команд/сервисов из data/state.json имеют приоритет над TOML. Резервную копию делайте при остановленном процессе. Бинарник статический (musl), базовая архитектура x86-64, без требования AVX. Не нужны glibc, Rust, Python, Node, Docker или отдельная SQLite. Для run.sh нужны обычные /bin/sh, uname, dirname, mkdir и cat. Для распаковки нужен tar с gzip. Linux kernel3.2+ — базовый минимум target Rust; конкретная старая система не считается проверенной только по номеру ядра. Ограничения контейнера, seccomp, права, доступная память, файловые дескрипторы и сеть всё равно действуют. Проверка архива: `sha256sum -c SHA256SUMS` до распаковки. BUILD-COMMIT указывает исходный коммит. Репозиторий и Releases приватные: скачивание требует доступа к GitHub. С GitHub CLI: `gh release download --repo mrvasil/ctf-ad-mirror-tool-rust --pattern 'mirror-tool-linux-x64.tar.gz' --pattern SHA256SUMS` (одной строкой). Перед игрой проверьте checker и переключение на своих сервисах: зеркалирование TCP-запросов не является репликацией БД. Подробнее: docs/flag-protection.md.