Правила

Chute может перенаправлять запросы на другой прокси-сервер или подключаться к хосту напрямую, в зависимости от пользовательских правил.

Приоритет

Правила сопоставляются от первого к последнему в порядке их появления в файле конфигурации. Другими словами, правила в начале списка имеют более высокий приоритет, чем последующие.

Состав

Каждое правило состоит из 3 частей: тип правила, сопоставитель трафика (кроме правила FINAL) и прокси-политика: TYPE, VALUE, POLICY. Например: DOMAIN-SUFFIX,apple.com, DIRECT IP-CIDR, 192.168.0.0/16,ProxyA

Прокси-политика должна быть названа в соответствии с одним из имен политик, включая прокси, группу политик, DIRECT или REJECT. Правилам следует заканчиваться правилом FINAL для определения поведения по умолчанию. Если конфигурация не содержит правила FINAL, Chute ведет себя так, как если бы в конец было добавлено FINAL,DIRECT.

Пример:

[Rule]
DOMAIN-SUFFIX,company.com,ProxyA
DOMAIN-KEYWORD,google,DIRECT
GEOIP,US,DIRECT
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,ProxyB

Типы правил

Правила на основе доменов

Тип Синтаксис Совпадение
DOMAIN DOMAIN,www.apple.com,Proxy Точное совпадение домена
DOMAIN-SUFFIX DOMAIN-SUFFIX,apple.com,Proxy Совпадение суффикса домена
DOMAIN-KEYWORD DOMAIN-KEYWORD,google,Proxy Домен содержит ключевое слово
DOMAIN-WILDCARD DOMAIN-WILDCARD,*.apple.com,Proxy Совпадение с подстановочным знаком
DOMAIN-REGEX DOMAIN-REGEX,^mail\..+\.com$,Proxy Совпадение домена по регулярному выражению
DOMAIN-SET DOMAIN-SET,https://example.com/domains.txt,DIRECT Набор доменов, загружаемый с URL

Правила на основе IP

Тип Синтаксис Совпадение
IP-CIDR IP-CIDR,192.168.0.0/16,DIRECT IP-адрес в диапазоне CIDR
IP-CIDR6 IP-CIDR6,2001:db8::/32,DIRECT IPv6-адрес в диапазоне CIDR
GEOIP GEOIP,US,DIRECT Код страны из базы GeoIP
IP-ASN IP-ASN,13335,DIRECT IP-адрес принадлежит ASN

Правила уровня HTTP

Тип Синтаксис Совпадение
USER-AGENT USER-AGENT,Instagram*,DIRECT Заголовок User-Agent
URL-REGEX URL-REGEX,^http://google\.com,DIRECT URL совпадает с регулярным выражением
PROTOCOL PROTOCOL,TLS,Proxy Определенный протокол (HTTP/TLS/QUIC и др.)

Правила процессов (только Mac)

Тип Синтаксис Совпадение
PROCESS-NAME PROCESS-NAME,Telegram,Proxy Имя процесса (сопоставление с подстановочными знаками)
PROCESS-PATH PROCESS-PATH,/Applications/Safari.app,Proxy Полный путь процесса (сопоставление с подстановочными знаками)
PROCESS-NAME-REGEX PROCESS-NAME-REGEX,^Safari$,DIRECT Имя процесса (сопоставление по регулярному выражению)

Правила портов и источников

Тип Синтаксис Совпадение
DEST-PORT DEST-PORT,80,DIRECT Порт назначения
SRC-IP SRC-IP,192.168.20.100,DIRECT Исходный IP-адрес (один IP или CIDR)
SRC-PORT SRC-PORT,52345,DIRECT Исходный порт
IN-PORT IN-PORT,6152,DIRECT Входящий порт прокси на Chute

Правила расширенного сопоставления

Тип Синтаксис Совпадение
SUBNET SUBNET,TYPE:WIFI,Proxy Атрибуты сетевой подсети (TYPE, BSSID, SSID, ROUTER)
HOSTNAME-TYPE HOSTNAME-TYPE,AAAA,Proxy Тип DNS-записи (A/AAAA и др.)
IN-TYPE IN-TYPE,SOCKS5,Proxy Тип входящего соединения (HTTP/SOCKS5/TUN)
IN-USER IN-USER,user1,Proxy Имя пользователя входящей аутентификации
IN-NAME IN-NAME,my-proxy,Proxy Имя входящего прокси-сервера

Внимание: Правила расширенного сопоставления принимаются парсером конфигурации, но текущие релизы Chute пока не заполняют атрибуты сессии, с которыми они сопоставляются, поэтому эти правила не будут совпадать с трафиком во время выполнения. Они зарезервированы для будущих релизов.

Логические правила

Тип Синтаксис Совпадение
AND AND,((DOMAIN,example.com),(DEST-PORT,443)),Proxy Все подправила совпадают
OR OR,((DOMAIN,example.com),(DOMAIN,test.com)),Proxy Любое подправило совпадает
NOT NOT,((DOMAIN,example.com)),Proxy Подправило НЕ совпадает

Специальные правила

Тип Синтаксис Совпадение
RULE-SET RULE-SET,SYSTEM,DIRECT Набор правил из URL, провайдера правил или встроенных наборов
SCRIPT SCRIPT,MyRuleScript,PROXY Пользовательское сопоставление на основе JavaScript
FINAL FINAL,ProxyB По умолчанию, когда ни одно другое правило не совпало (должно быть последним)

Опции

no-resolve

Для запроса, имя хоста которого является доменом, Chute оценивает список правил в два прохода. На первом проходе правила на основе IP (GEOIP, IP-CIDR, IP-ASN) пропускаются. Если ни одно другое правило не совпало, Chute разрешает домен через DNS и оценивает правила снова с разрешенным IP-адресом. Добавьте опцию no-resolve, чтобы правило на основе IP пропускалось и на втором проходе — тогда оно будет совпадать только с запросами, которые уже содержат IP-адрес.

GEOIP,US,DIRECT,no-resolve
IP-CIDR,172.16.0.0/12,DIRECT,no-resolve

Примечание: Из-за двухпроходной оценки для запроса с доменным именем хоста более позднее правило не на основе IP может совпасть раньше, чем более раннее правило на основе IP. Если разрешение DNS завершается сбоем, правила на основе IP просто никогда не совпадают и применяется правило FINAL; оценка правил не прерывается.

force-remote-dns

Принудительное разрешение DNS через удаленный прокси-сервер вместо локального DNS.

DOMAIN-SUFFIX,google.com,Proxy,force-remote-dns

Внимание: Эта опция в настоящее время разбирается только для совместимости и не имеет эффекта в текущих релизах.

extended-matching

Расширяет сопоставление правил на основе доменов для также проверки заголовка HTTP Host в дополнение к имени хоста соединения. Это полезно, когда SNI или цель CONNECT отличается от заголовка Host.

DOMAIN-SUFFIX,example.com,Proxy,extended-matching

requires-resolve

Для правил SCRIPT эта опция принимается парсером, но не откладывает выполнение скрипта. $request.dnsResult доступен в скрипте только когда сессия уже разрешена (например, запросы, отправленные напрямую на IP-адрес, или второй проход сопоставления после разрешения DNS).

SCRIPT,MyRuleScript,PROXY,requires-resolve

pre-matching

Допустимо только для правил, политика которых — REJECT. Правило оценивается в отдельном проходе перед обычным списком правил и перед кэшем результатов правил, поэтому отклонение применяется еще до определения протокола или разрешения DNS.

DOMAIN-SUFFIX,tracker.example.com,REJECT,pre-matching

Псевдонимы

  • DOMAIN-MATCH принимается как псевдоним DOMAIN-KEYWORD.
  • NETWORK принимается как псевдоним PROTOCOL.

Набор доменов

Chute поддерживает загрузку наборов доменов с внешнего URL с помощью типа правила DOMAIN-SET. Первое поле после типа должно быть http(s) URL. Необязательный параметр update-interval повторно загружает файл каждые N секунд.

DOMAIN-SET,https://example.com/domains.txt,DIRECT
DOMAIN-SET,https://example.com/domains.txt,DIRECT,update-interval=86400

Файл набора доменов содержит просто домены, по одному в строке: example.com соответствует точному домену; .example.com или +.example.com соответствует домену и всем его поддоменам. Строки, начинающиеся с # или //, являются комментариями.

S. Smart Rabbit LLC © All Rights Reserved            updated 2026-07-28 17:49:04

results matching ""

    No results matching ""