Конфигурация WireGuard
Chute поддерживает WireGuard как протокол исходящего прокси. Вы можете настроить WireGuard встроенно в разделе [Proxy] или определить именованный раздел [WireGuard] и ссылаться на него.
Раздел WireGuard
Раздел [WireGuard] определяет полную конфигурацию туннеля WireGuard, на которую можно ссылаться по имени из прокси-политики WireGuard.
[WireGuard wg0]
private-key = base64_private_key
peer-public-key = base64_peer_public_key
self-ip = 10.0.0.2
self-ip-v6 = fd00::2
preshared-key = base64_preshared_key
server = example.com
port = 51820
wg-mtu = 1420
keepalive = 25
Параметры
| Ключ | Обязательно | Описание |
|---|---|---|
private-key |
Да | Приватный ключ WireGuard в кодировке base64 |
peer-public-key |
Да | Публичный ключ пира в кодировке base64 |
self-ip |
Нет | Локальный IPv4-адрес для интерфейса WireGuard |
self-ip-v6 |
Нет | Локальный IPv6-адрес для интерфейса WireGuard |
preshared-key |
Нет | Предварительный общий ключ для постквантовой устойчивости |
server |
Да* | Адрес удаленного сервера (используется, когда строка прокси его не указывает; строка прокси имеет приоритет) |
port |
Да* | Порт удаленного сервера (тот же приоритет, что и у server) |
wg-mtu |
Нет | MTU для интерфейса WireGuard (по умолчанию: 1420). mtu принимается только встроенно в строке [Proxy] |
keepalive |
Нет | Интервал постоянного keepalive в секундах |
reserved |
Нет | Зарезервированные байты для заголовка рукопожатия WireGuard (например, reserved=0,1,2) |
* server и port должны присутствовать либо в разделе, либо в ссылающейся строке [Proxy]; в противном случае политика отклоняется как неполная.
Использование
Ссылка на раздел из прокси-политики:
[Proxy]
WG = wireguard, section-name=wg0
[Proxy Group]
WGGroup = select, WG
[Rule]
IP-CIDR,10.0.0.0/8,WGGroup
FINAL,DIRECT
Можно определить несколько разделов [WireGuard] для разных туннелей:
[WireGuard us]
private-key = ...
peer-public-key = ...
self-ip = 10.0.1.2
[WireGuard eu]
private-key = ...
peer-public-key = ...
self-ip = 10.0.2.2
Примечание: WireGuard работает через собственный UDP-туннель со стеком TCP/IP в пользовательском пространстве. Имена (например,
wg0) чувствительны к регистру.
Раздел AmneziaWG
Chute также поддерживает AmneziaWG — вариант WireGuard с обфускацией трафика. Раздел [AmneziaWG <name>] принимает те же ключи, что и раздел [WireGuard], плюс следующие параметры обфускации:
jc,jmin,jmax— количество мусорных пакетов и диапазон их размеровs1,s2,s3,s4— мусор, добавляемый в начало пакетов init/response/cookie/transporth1,h2,h3,h4— пользовательские значения заголовка типа сообщенияi1,i2,i3,i4,i5— определения специальных мусорных пакетов
Политика ссылается на раздел через тип amneziawg (псевдоним awg):
[AmneziaWG awg0]
private-key = base64_private_key
peer-public-key = base64_peer_public_key
self-ip = 10.0.0.2
server = example.com
port = 51820
jc = 4
jmin = 40
jmax = 70
s1 = 15
s2 = 68
h1 = 123456
h2 = 67543
h3 = 32345
h4 = 123123
[Proxy]
AWG = amneziawg, section-name=awg0
Правила перекрестной проверки:
- Параметры AmneziaWG в обычном разделе
[WireGuard]— ошибка конфигурации; используйте вместо этого раздел[AmneziaWG]. reservedнельзя использовать в разделе[AmneziaWG]: он записывает те же байты заголовка, которые заменяетh4, поэтому такое сочетание отклоняется как ошибка.- Раздел
[AmneziaWG]без параметров обфускации получает предупреждение — он работает как обычный WireGuard.
Эта страница — перевод английской версии. При расхождениях приоритет имеет английская версия.