Частые вопросы
Короткие ответы на частые вопросы о Mistgate: Docker, память, приложения, размер флота, IPv6, Cloudflare, переезд, лицензия и куда сообщать о проблемах.
На этой странице
- Почему нет образа Docker?
- Сколько памяти он ест?
- Какие приложения подходят?
- Сколько пользователей и нод он выдержит?
- Поддерживается ли IPv6?
- Можно ли поставить панель за Cloudflare?
- Можно ли переехать с другой панели?
- Есть ли готовый релиз для скачивания?
- Что для меня значит AGPL?
- Куда сообщать об ошибках и уязвимостях?
Почему нет образа Docker?#
Mistgate — это два статических бинарника на Go: панель со встроенной базой SQLite и админкой и агент ноды. Панели больше ничего не нужно. Агент сам управляет хостом: таблицами nftables, настройками sysctl, туннельными интерфейсами, лимитом journald, своим защищённым unit systemd и самообновлением. В контейнере ему всё равно понадобились бы сеть хоста и широкие права, поэтому он работает прямо под systemd с небольшим набором возможностей. См. «Требования».
Сколько памяти он ест?#
- Панель: цель — около 80 МБ RAM в простое (это цель, а не замер). Вход по паролю ненадолго берёт ещё 64 МиБ на хеширование пароля.
- Агент ноды: его unit systemd выставляет лимиты по объёму RAM сервера: среда Go целится примерно в 60% RAM, выше примерно 70% systemd притормаживает агента, выше примерно 85% останавливает. Пункт доктора Память предупреждает, когда памяти на хосте мало (см. «Здоровье»).
Какие приложения подходят?#
Каждый человек получает одну ссылку подписки, а каждое приложение — формат, который умеет читать:
- Hysteria2: приложение для подписок вроде Happ (список URI) или приложение на ядре mihomo, например Clash Verge или FlClash (профиль Mihomo YAML). Браузер по этой ссылке получает страницу человека с инструкциями.
- AmneziaWG: приложение AmneziaVPN, с ключом на каждое устройство.
Профиль Hysteria2 с самоподписанным сертификатом проверен с официальным клиентом Hysteria2 и с Mihomo; с Happ он пока не проверен. Новые форматы подписок (Xray JSON, sing-box) в планах. См. «Подписки».
Сколько пользователей и нод он выдержит?#
Встроенного ограничения на число пользователей и нод нет. Mistgate рассчитан на небольшой флот, который ведёт один человек: одна панель с одной базой SQLite и ноды, каждая из которых держит с ней одно соединение.
Поддерживается ли IPv6?#
- Нодам IPv6 не нужен. Пункт доктора IPv6 предупреждает только тогда, когда у ноды есть IPv6-адрес, через который нельзя выйти наружу: у клиентов, получивших AAAA-записи, сайты тогда подвисают.
- WARP ходит через свой IPv4-адрес, поэтому для WARP нода без IPv6 подходит.
- Панель слушает тот адрес, который задан в
--listen;:443— это и IPv4, и IPv6. - Ограничения частоты и блокировки входа считают одну сеть IPv6 /64 одним клиентом.
Можно ли поставить панель за Cloudflare?#
Сайт-ширму, админку и подписки можно спрятать за прокси Cloudflare, если настроить три вещи:
- Сертификаты. Let's Encrypt через
--acme-domainрассчитывает, что к панели подключаются напрямую. За прокси дайте панели свой сертификат через--tls-certи--tls-key, например origin-сертификат Cloudflare. - Адреса клиентов. Перечислите диапазоны адресов Cloudflare в
--trusted-proxy, чтобы ограничения частоты, сессии и журнал аудита видели настоящие адреса клиентов. - Агенты нод. Агентам нужно прямое TLS-соединение: они работают по взаимному TLS с собственным CA панели и выбирают точку подключения секретным именем SNI, а прокси, который сам завершает TLS, это ломает. Дайте им отдельный адрес через
--agent-listenи укажите в--agent-addrадрес, который не проксируется (IP или имя без прокси в DNS). Ноды, подключённые раньше, продолжают ходить по адресу из своей команды установки: подключите их заново новой командой установки.
При этом Cloudflare видит трафик админки, включая её секретный адрес. Проверка Cloudflare Turnstile на входе с этим не связана и работает в обоих случаях (см. «Безопасность»). Флаги — в «Конфигурации», работа за обратным прокси — в «Установке панели».
Можно ли переехать с другой панели?#
Инструмента для переезда нет. Поставьте панель, добавьте серверы как ноды и заведите пользователей заново. На сервере, где раньше стоял другой VPN, пункты доктора Следы других VPN и Чужие правила файрвола покажут, что от него осталось (x-ui, Xray, старые интерфейсы WireGuard, чужие правила nftables); удалять ли это, решаете вы.
Есть ли готовый релиз для скачивания?#
Пока нет: собирайте из исходников командой make build. До версии 1.0 API, хранимые настройки и протокол ноды ещё могут меняться.
Что для меня значит AGPL?#
Mistgate распространяется по лицензии GNU Affero General Public License v3.0 only. Чтобы пользоваться им без изменений для себя и своих пользователей, ничего особенного не нужно. Если вы изменили панель и даёте другим пользоваться своей версией по сети, раздел 13 лицензии требует предложить им исходный код вашей версии.
Рядом с версией в админке есть ссылка Исходный код. По умолчанию она ведёт в репозиторий проекта; форк указывает свой через serve --source-url <url> (или MISTGATE_SOURCE_URL). Пустое значение скрывает ссылку. Это краткий пересказ, а не юридическая консультация: решает файл LICENSE в репозитории.
Куда сообщать об ошибках и уязвимостях?#
- Ошибки и вопросы: откройте issue в репозитории на GitHub. Укажите версию панели (видна в админке, её печатает
mistgate version) и версию агента ноды. - Уязвимости: только закрыто, никогда не в публичном issue: откройте вкладку Security репозитория и выберите Report a vulnerability. См. «Безопасность».