Конфигурация TLS¶
tls¶
Включить tls, применяется только к протоколам, использующим tls, протокол trojan принудительно включает
sni/servername¶
Server Name Indication, в VMess/VLESS - servername, если пусто, то используется адрес из поля server
fingerprint¶
Отпечаток сертификата, применяется только к протоколам, использующим tls, можно получить с помощью
Warning
-
При вводе конечного сертификата (т.е. сертификата, содержащего имя SNI) проверяется только отпечаток сертификата, отправленного сервером; дополнительные проверки не выполняются.
-
При вводе отпечатка сертификатов других типов (например, промежуточных или корневых сертификатов) будет проверено, была ли цепочка сертификатов, отправленная сервером, выдана этим сертификатом. Начиная с версии 1.19.20, также должно выполняться требование SNI/имени сервера.
-
Отпечаток в этом поле — это отпечаток всего сертификата, а не «отпечаток открытого ключа сертификата», определенный в HPKP. Пожалуйста, не путайте их.
alpn¶
Список поддерживаемых протоколов согласования прикладного уровня, расположенных в порядке приоритета.
Если обе стороны поддерживают ALPN, выбранный протокол будет одним из этого списка, если нет взаимно поддерживаемых протоколов, соединение не будет установлено.
См. Application-Layer Protocol Negotiation
skip-cert-verify¶
Пропустить проверку сертификата, применяется только к протоколам, использующим tls
certificate¶
Если заполнено, включает mTLS (необходимо указать private-key). Содержимое — сертификат в формате PEM или путь к сертификату.
private-key¶
Если заполнено, включает mTLS (необходимо указать certificate). Содержимое — закрытый ключ, соответствующий сертификату в формате PEM, или путь к закрытому ключу.
client-fingerprint¶
Отпечаток клиента utls, применяется только к протоколам VMess/VLESS/Trojan/AnyTLS.
Note
Возможные значения: chrome, firefox, safari, iOS, android, edge, 360, qq, random. При выборе random генерируется отпечаток современного браузера на основе данных вероятности Cloudflare Radar.
reality-opts¶
Настройки reality, если не пусто, включает reality
reality-opts.public-key¶
Публичный ключ, соответствующий приватному ключу сервера reality
reality-opts.short-id¶
Один из short id сервера
reality-opts.support-x25519mlkem768¶
Поддержка обмена ключами X25519-MLKEM768.
ech-opts¶
Настройки ECH (Encrypted Client Hello), если enable установлено в true, то ECH будет включен.
ech-opts.enable¶
Включает ECH (Encrypted Client Hello). Установка значения true включает ECH.
ech-opts.config¶
Конфигурация ECH: Если поле пустое, используется разрешение DNS; в противном случае значение указывается в виде параметра ech, закодированного в base64 (Например, AEn+DQBFKwAgACABWIHUGj4u+PIggYXcR5JF0gYk3dCRioBW8uJq9H4mKAAIAAEAAQABAANAEnB1YmxpYy50bHMtZWNoLmRldgAA).
Info
Вы можете использовать команду mihomo generate ech-keypair test.com для генерации совместимой пары самоподписанных конфигурационных ключей ECH как для сервера, так и для клиента. Пожалуйста, замените test.com на имя домена SNI, который вы хотите сделать доступным. Содержимое после Config: в выводе можно заполнить здесь, а содержимое после Key: следует заполнить в конфигурации ECH на стороне сервера (ech-key в списке слушателей mihomo).
ech-opts.query-server-name¶
Этот параметр необязателен; если он не пуст, он используется для указания доменного имени при разрешении через DNS.
tlsmirror-opts¶
Когда tls установлен в true, наличие tlsmirror-opts включает tlsmirror. TLS carrier, используемый tlsmirror, берет servername, alpn, skip-cert-verify, fingerprint, certificate, private-key, client-fingerprint и ech-opts из того же outbound. Если servername пустой, используется server.
Note
Сейчас включение tlsmirror поддерживает только VMess. Не используйте его с другими протоколами.
tlsmirror-opts.primary-key¶
Обязательно, base64-кодирование 32-байтового основного ключа.
tlsmirror-opts.explicit-nonce-ciphersuites¶
Наборы шифров с явным nonce для носителя TLS 1.2.
tlsmirror-opts.defer-instance-derived-write-time¶
Задержка перед первой записью.
tlsmirror-opts.transport-layer-padding¶
Настройки заполнения транспортного уровня.
tlsmirror-opts.connection-enrolment¶
v2ray-совместимые настройки регистрации соединения. Для исходящего VMess в mihomo primary-egress-outbound обычно оставляют пустым.
tlsmirror-opts.connection-enrolment.primary-ingress-outbound¶
Тег контрольного исходящего соединения на стороне inbound для регистрации соединения. Обычно используется для соответствия v2ray-совместимой серверной конфигурации.
tlsmirror-opts.connection-enrolment.primary-egress-outbound¶
Тег контрольного исходящего соединения на стороне outbound для регистрации соединения. Для исходящего VMess в mihomo обычно оставляют пустым; в v2ray можно указать отдельный контрольный outbound tag.
tlsmirror-opts.sequence-watermarking-enabled¶
Включать ли sequence watermarking.
tlsmirror-opts.embedded-traffic-generator¶
Генерирует дополнительный HTTP carrier-трафик. Протокол определяется alpn. Если steps не настроен, генератор не включается.
tlsmirror-opts.embedded-traffic-generator.steps¶
Список шагов HTTP carrier-трафика. Шаги выполняются по порядку, если next-step не выбрал другой шаг.
tlsmirror-opts.embedded-traffic-generator.steps.name¶
Имя шага, используется только как идентификатор.
tlsmirror-opts.embedded-traffic-generator.steps.host¶
Целевой host HTTP-запроса.
tlsmirror-opts.embedded-traffic-generator.steps.path¶
Путь HTTP-запроса.
tlsmirror-opts.embedded-traffic-generator.steps.method¶
Метод HTTP-запроса.
tlsmirror-opts.embedded-traffic-generator.steps.headers¶
Список HTTP-заголовков. В каждом элементе name задает имя заголовка, value задает одно значение, а values задает несколько значений.
tlsmirror-opts.embedded-traffic-generator.steps.connection-ready¶
Передать proxy-соединение после завершения этого шага.
tlsmirror-opts.embedded-traffic-generator.steps.connection-recall-exit¶
Завершить carrier-трафик после закрытия proxy-соединения.
tlsmirror-opts.embedded-traffic-generator.steps.h2-do-not-wait-for-download-finish¶
Если carrier-протокол — h2, не ждать завершения чтения тела ответа.
tlsmirror-opts.embedded-traffic-generator.steps.wait-time¶
Время ожидания после завершения шага. Поля совпадают с tlsmirror-opts.defer-instance-derived-write-time.
tlsmirror-opts.embedded-traffic-generator.steps.next-step¶
Взвешенный список кандидатов для следующего шага. weight — вес, goto-location — индекс целевого шага.