Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 9 additions & 3 deletions docs/en/profiles-and-routing.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ or use the move actions. Selecting a different profile while connected reconnect

| Scope | Settings |
| --- | --- |
| Per profile | Transport, server/Jump addresses, credentials and trust, DNS, IPv6, HTTP/3 preference |
| Per profile | Transport, server/Jump addresses, credentials and trust, DNS, IPv6, HTTP/3 preference, optional authentication check host |
| Shared across profiles | App routing, LAN bypass, fingerprints, SSH authentication/keepalive/channel/rotation settings, failover |
| Device-local, not transferred | MTU, strict source validation and level, language, traffic units, update preferences; DNS security approvals stay local to each profile |

Expand Down Expand Up @@ -52,7 +52,12 @@ Some proxies return a decoy website or stall instead of exposing an authenticati

For a regular **HTTPS** profile, **Authentication check host** is optional. Enter the operator-provided knock hostname, without a URL, path or port. During HTTPS-over-TCP diagnostics the app sends an authenticated CONNECT to that hostname on port 443 through the proxy, bounded to five seconds. An unmasked `407` confirms an authentication rejection and stops the check. `200` only confirms that CONNECT was accepted; the ordinary end-to-end HTTPS test still runs. Other statuses and timeouts are inconclusive and do not get labelled as wrong credentials.

A blank field adds no probe request. The field is imported/exported as per-profile `proxy.knockHost` (legacy `browser.knockHost` is accepted when the shared field is absent; an explicit empty shared value disables the probe); other browser options remain ignored. This probe applies to regular HTTPS over TCP, not HTTPS Jump or selected HTTP/3. Editing the diagnostic host does not reconnect a running VPN; a new check uses it for the same runtime endpoint while preserving runtime credentials. It adds no per-packet checks.
A blank field adds no probe request. JSON uses `profiles[].proxy.knockHost`; legacy
`profiles[].browser.knockHost` is accepted only when the shared field is absent. An
explicit empty shared value disables the probe, even if the legacy alias is set.
Other browser options remain ignored.

This probe applies to regular HTTPS over TCP, not HTTPS Jump or selected HTTP/3. Editing the diagnostic host does not reconnect a running VPN; a new check uses it for the same runtime endpoint while preserving runtime credentials. It adds no per-packet checks.

The shared diagnostic log records `proxy_auth_probe` start, skipped/accepted/rejected/inconclusive outcome, HTTP status, elapsed time and safe failure class. It contains neither the probe/proxy hostname nor IPs, usernames, passwords or response bodies.

Expand Down Expand Up @@ -116,7 +121,8 @@ HTTPS/MASQUE/SOCKS5 endpoints; use JSON for SSH, Jump and other settings.
Passwords and SSH private keys are optional export choices. Omitted secrets preserve existing
values only for the same endpoint/account; explicit empty values clear them. URL query tokens
remain in JSON even when passwords are omitted. Exported credentials/keys are readable: protect
the file. A JSON export is not a full app backup. [Schemas and examples](../../config-schema/).
the file. A JSON export is not a full app backup. [Pinned schemas and examples](../../config-schema/);
[complete field reference](https://github.com/andre487/MegaProxyConfig/blob/main/docs/field-reference.md).

**Settings → Traffic units** selects IEC (default, powers of 1024: KiB/MiB) or SI (1000: KB/MB)
for totals and speeds; traffic-limit inputs remain in MiB. Language is selected separately
Expand Down
5 changes: 5 additions & 0 deletions docs/en/subscriptions.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,3 +85,8 @@ property from the file; this preserves any subscription already configured on th
The complete local profile store is limited to 1,000 profiles, 4,194,304 characters before encoding,
and 8 MiB of encoded JSON. Imports, edits and subscription refreshes exceeding these limits
fail without replacing the previous configuration.

The optional authentication-check host follows the same endpoint/account boundary:
an omitted `proxy.knockHost` (and absent legacy `browser.knockHost`) retains the
local value only for the same account. An explicit empty shared field clears it.
Changing only this diagnostic host does not require a VPN reconnect.
11 changes: 9 additions & 2 deletions docs/ru/profiles-and-routing.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

| Область | Настройки |
| --- | --- |
| Профиль | Транспорт, адреса сервера/Jump, авторизация и доверие, DNS, IPv6, предпочтение HTTP/3 |
| Профиль | Транспорт, адреса сервера/Jump, авторизация и доверие, DNS, IPv6, предпочтение HTTP/3, необязательный хост проверки авторизации |
| Общие для профилей | Маршрутизация приложений, обход LAN, отпечатки, авторизация/keepalive/каналы/ротация SSH, failover |
| Локальные, не переносятся | MTU, строгая проверка источника и её уровень, язык, единицы трафика, обновления; разрешения небезопасного DNS остаются локальными для профиля |

Expand Down Expand Up @@ -54,7 +54,12 @@ TLS приложений остаётся сквозным: MegaProxy не ус

Для обычного профиля **HTTPS** доступно необязательное поле **Хост проверки авторизации**. Укажите предоставленный оператором knock-хост без URL, пути и порта. При диагностике HTTPS по TCP приложение отправляет через прокси CONNECT к этому хосту на порт 443 с учётными данными профиля; проверка ограничена пятью секундами. Явный `407` подтверждает отказ авторизации и останавливает тест. `200` означает только принятие CONNECT; после него выполняется обычная сквозная проверка HTTPS. Остальные статусы и таймауты не доказывают ошибку логина или пароля.

При пустом поле дополнительного запроса нет. Поле импортируется и экспортируется как `proxy.knockHost` профиля (старый `browser.knockHost` читается при отсутствии общего поля; пустое общее поле отключает проверку); остальные браузерные настройки игнорируются. Проверка относится к обычному HTTPS по TCP, а не HTTPS с Jump или выбранному HTTP/3. Изменение диагностического хоста не переподключает работающий VPN; новый тест использует его для того же действующего адреса прокси, сохраняя действующие учётные данные. Дополнительных проверок пакетов нет.
При пустом поле дополнительного запроса нет. В JSON используется
`profiles[].proxy.knockHost`; старый `profiles[].browser.knockHost` читается только
при отсутствии общего поля. Явно пустое общее поле отключает проверку, даже если
старый псевдоним заполнен. Остальные браузерные настройки игнорируются.

Проверка относится к обычному HTTPS по TCP, а не HTTPS с Jump или выбранному HTTP/3. Изменение диагностического хоста не переподключает работающий VPN; новый тест использует его для того же действующего адреса прокси, сохраняя действующие учётные данные. Дополнительных проверок пакетов нет.

Общий журнал диагностики содержит события `proxy_auth_probe`: начало, пропуск, принятие CONNECT, отказ или неопределённый результат, HTTP-статус, время и безопасный класс ошибки. Хосты проверки и прокси, IP, логины, пароли и содержимое ответов в эти события не попадают.

Expand Down Expand Up @@ -131,3 +136,5 @@ JSON — не полный бэкап приложения. [Схемы и пр
хранение объёмом 1–100 MiB. Обратная связь прикладывает его через выбранное почтовое приложение;
просмотрите отчёт перед отправкой. [Диагностика, скорость и видимость](connection-metrics.md#тест-скорость-и-видимость-vpn)
описывают общий журнал тестов и ограничения измерений; [политика конфиденциальности](../../PRIVACY.md).

Полный перечень переносимых и локальных настроек: [справочник полей](https://github.com/andre487/MegaProxyConfig/blob/main/docs/field-reference.md).
5 changes: 5 additions & 0 deletions docs/ru/subscriptions.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,3 +85,8 @@ Basic Auth, интервал и пауза не меняются, даже ес
Общее локальное хранилище ограничено 1 000 профилей, 4 194 304 символами до кодирования
и 8 MiB JSON после кодирования. Превышение лимита при импорте, редактировании или
обновлении подписки приводит к отказу с сохранением прежней конфигурации.

Необязательный хост проверки авторизации сохраняется при отсутствии
`proxy.knockHost` и старого `browser.knockHost` только для того же адреса и учётной
записи прокси. Явно пустое общее поле очищает значение. Изменение только этого
диагностического хоста не требует переподключения VPN.
1 change: 1 addition & 0 deletions fastlane/metadata/android/en-US/full_description.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
<li>DoH by default, optional plain TCP/UDP DNS, TLS/QUIC/SSH presets and custom JA3.</li>
<li>Connection diagnostics and download/upload speed tests with a shared exportable log; VPN visibility and IP reputation.</li>
<li>Traffic totals/rates in IEC or SI, passive TCP/QUIC metrics, F-Droid/GitHub update checks, English and Russian interfaces.</li>
<li>Optional HTTPS authentication diagnostics using an operator-provided knock host.</li>
</ul>

<p>No account, ads or analytics. Passwords and private keys are encrypted at rest; logs stay local unless shared. Diagnostics, enabled app-update checks and configured subscriptions contact external services. SOCKS5 does not encrypt its connection or credentials. MASQUE is experimental.</p>
1 change: 1 addition & 0 deletions fastlane/metadata/android/ru-RU/full_description.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
<li>DoH по умолчанию, обычный TCP/UDP DNS по выбору, профили TLS/QUIC/SSH и ручной JA3.</li>
<li>Диагностика подключения и тесты скачивания/отправки с общим экспортируемым журналом; видимость VPN и репутация IP.</li>
<li>Объёмы/скорость в IEC или SI, пассивные метрики TCP/QUIC, проверка обновлений F-Droid/GitHub, русский и английский интерфейсы.</li>
<li>Необязательная диагностика авторизации HTTPS через knock host, указанный оператором.</li>
</ul>

<p>Без регистрации, рекламы и аналитики. Пароли и приватные ключи зашифрованы при хранении, журналы локальны до отправки по вашему выбору. Диагностика, включённые проверки обновлений и настроенные подписки обращаются к внешним сервисам. SOCKS5 не шифрует соединение и пароль. MASQUE экспериментален.</p>
Loading