Перейти к основному содержимому

Использование протокола AmneziaWG 2.0 на Self-hosted серверах

Общая информация

Новая версия протокола AmneziaWG 2.0 позволяет маскировать VPN-трафик под популярные сетевые протоколы (например, QUIC, DNS и другие). Это затрудняет распознавание и блокировку VPN-соединений системами DPI (Deep Packet Inspection).

Обновлённый протокол AmneziaWG 2.0 поддерживается в приложении AmneziaVPN версии 4.8.12.7 и выше. Со стороны сервера чаще всего не потребуется выполнение дополнительных действий — большинство серверов уже совместимы с новым протоколом. Актуальные требования к серверу: Требования к VPS.

Начиная с AmneziaVPN 4.8.12.7, ранее установленный на сервере протокол AmneziaWG версии 1.0 будет отображаться как AmneziaWG Legacy.

Ключевые изменения протокола AmneziaWG 2.0 в сравнении с версией 1.5:

  • добавлены параметры S3 и S4
  • поддержка диапазонов у параметров H1–H4, значения которых теперь выбираются случайно и не должны пересекаться между собой
  • удалены параметры j1-j3 и itime, т.к. были признаны избыточными

Напомним, что версия AmneziaWG 1.5 отличается от версии 1.0 наличием параметров I1–I5, которые также используются в AmneziaWG 2.0.


Установка протокола AmneziaWG 2.0

Чтобы подключаться к VPN по протоколу AmneziaWG 2.0, установите его на свой сервер:

  1. Обновите приложение AmneziaVPN до версии 4.8.12.7 или выше с официальной страницы загрузки (зеркало).
  2. Откройте AmneziaVPN и нажмите на название любого подключения.
  3. Нажмите на иконку ⚙️ (шестерёнка) справа от подключения к вашему серверу — отобразится список всех протоколов, доступных для установки.
  4. Нажмите на иконку 📥 справа от протокола AmneziaWG, затем нажмите Установить.

После завершения установки протокол AmneziaWG 2.0 станет доступным для выбора в параметрах подключения — можно сразу подключаться к VPN и делиться доступом по новому протоколу.

Вносить изменения в настройки протокола AmneziaWG 2.0 после его установки на сервер обычно не требуется — подключение в большинстве случаев работает «из коробки» как на устройстве с полным доступом к серверу, так и на устройствах с гостевым доступом.


Ответы на часто задаваемые вопросы

Потребуется ли генерировать новые файлы конфигурации/ключи для подключения по протоколу AmneziaWG 2.0?

Да.

В AmneziaVPN 4.8.12.7 и новее ранее установленный на сервере протокол AmneziaWG 1.0 будет отображаться как AmneziaWG Legacy — со своими файлами конфигурации и ключами для подключения, которые продолжат работать. При установке протокола AmneziaWG по умолчанию будет использоваться версия 2.0 — это другой, новый протокол, для подключения по которому потребуется сгенерировать новые гостевые конфигурации.

Можно ли обновить существующее подключение по протоколу AmneziaWG 1.0 до второй версии?

Нет.

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

Можно ли подключиться к VPN по протоколу AmneziaWG 2.0 в старой версии приложения AmneziaVPN?

Нет.

Если в приложении AmneziaVPN версии до 4.8.12.7 создать гостевое подключение по протоколу AmneziaWG 2.0, подключение работать не будет. При создании подключения с полным доступом к серверу в старой версии AmneziaVPN протокол AmneziaWG 2.0, если он установлен, отображаться не будет.


Использование протокола AmneziaWG 1.5, если AmneziaWG 2.0 недоступен

Если у вас нет возможности использовать приложение AmneziaVPN версии 4.8.12.7 или новее, и на сервере установлен протокол AmneziaWG 1.0, вы можете самостоятельно повысить его устойчивость к блокировкам. Для этого нужно указать значение параметра I1 на устройствах, которые подключаются к VPN по протоколу AmneziaWG 1.0.

  1. Откройте приложение AmneziaVPN и нажмите на название любого подключения.

  2. Нажмите на иконку ⚙️ (шестерёнка) справа от подключения к вашему серверу.

  3. В списке установленных протоколов выберите AmneziaWG Legacy или AmneziaWG, затем перейдите в раздел AmneziaWG настройки подключения.

  4. Найдите поле I1 - First special junk packet и вставьте в него следующий текст (пакет маскировки трафика под QUIC):

    <b 0xc70000000108ce1bf31eec7d93360000449e227e4596ed7f75c4d35ce31880b4133107c822c6355b51f0d7c1bba96d5c210a48aca01885fed0871cfc37d59137d73b506dc013bb4a13c060ca5b04b7ae215af71e37d6e8ff1db235f9fe0c25cb8b492471054a7c8d0d6077d430d07f6e87a8699287f6e69f54263c7334a8e144a29851429bf2e350e519445172d36953e96085110ce1fb641e5efad42c0feb4711ece959b72cc4d6f3c1e83251adb572b921534f6ac4b10927167f41fe50040a75acef62f45bded67c0b45b9d655ce374589cad6f568b8475b2e8921ff98628f86ff2eb5bcce6f3ddb7dc89e37c5b5e78ddc8d93a58896e530b5f9f1448ab3b7a1d1f24a63bf981634f6183a21af310ffa52e9ddf5521561760288669de01a5f2f1a4f922e68d0592026bbe4329b654d4f5d6ace4f6a23b8560b720a5350691c0037b10acfac9726add44e7d3e880ee6f3b0d6429ff33655c297fee786bb5ac032e48d2062cd45e305e6d8d8b82bfbf0fdbc5ec09943d1ad02b0b5868ac4b24bb10255196be883562c35a713002014016b8cc5224768b3d330016cf8ed9300fe6bf39b4b19b3667cddc6e7c7ebe4437a58862606a2a66bd4184b09ab9d2cd3d3faed4d2ab71dd821422a9540c4c5fa2a9b2e6693d411a22854a8e541ed930796521f03a54254074bc4c5bca152a1723260e7d70a24d49720acc544b41359cfc252385bda7de7d05878ac0ea0343c77715e145160e6562161dfe2024846dfda3ce99068817a2418e66e4f37dea40a21251c8a034f83145071d93baadf050ca0f95dc9ce2338fb082d64fbc8faba905cec66e65c0e1f9b003c32c943381282d4ab09bef9b6813ff3ff5118623d2617867e25f0601df583c3ac51bc6303f79e68d8f8de4b8363ec9c7728b3ec5fcd5274edfca2a42f2727aa223c557afb33f5bea4f64aeb252c0150ed734d4d8eccb257824e8e090f65029a3a042a51e5cc8767408ae07d55da8507e4d009ae72c47ddb138df3cab6cc023df2532f88fb5a4c4bd917fafde0f3134be09231c389c70bc55cb95a779615e8e0a76a2b4d943aabfde0e394c985c0cb0376930f92c5b6998ef49ff4a13652b787503f55c4e3d8eebd6e1bc6db3a6d405d8405bd7a8db7cefc64d16e0d105a468f3d33d29e5744a24c4ac43ce0eb1bf6b559aed520b91108cda2de6e2c4f14bc4f4dc58712580e07d217c8cca1aaf7ac04bab3e7b1008b966f1ed4fba3fd93a0a9d3a27127e7aa587fbcc60d548300146bdc126982a58ff5342fc41a43f83a3d2722a26645bc961894e339b953e78ab395ff2fb854247ad06d446cc2944a1aefb90573115dc198f5c1efbc22bc6d7a74e41e666a643d5f85f57fde81b87ceff95353d22ae8bab11684180dd142642894d8dc34e402f802c2fd4a73508ca99124e428d67437c871dd96e506ffc39c0fc401f666b437adca41fd563cbcfd0fa22fbbf8112979c4e677fb533d981745cceed0fe96da6cc0593c430bbb71bcbf924f70b4547b0bb4d41c94a09a9ef1147935a5c75bb2f721fbd24ea6a9f5c9331187490ffa6d4e34e6bb30c2c54a0344724f01088fb2751a486f425362741664efb287bce66c4a544c96fa8b124d3c6b9eaca170c0b530799a6e878a57f402eb0016cf2689d55c76b2a91285e2273763f3afc5bc9398273f5338a06d>
  5. Нажмите кнопку Сохранить.

Теперь это устройство будет подключаться к VPN-серверу с маскировкой под сетевой протокол QUIC.

Если изменения вносятся в настройки подключения на устройстве Windows, обязательно заполните параметр Itime значением 0.


Как самостоятельно найти сигнатуру протокола для AmneziaWG

Эта часть инструкции поможет вам самостоятельно найти и извлечь сигнатуру сетевого протокола для маскировки трафика в AmneziaWG.

Для этого вам понадобится приложение Wireshark, которое можно скачать с официального сайта.


Подготовка

  1. Установите и запустите приложение Wireshark.

  2. В главном окне Wireshark выберите сетевой интерфейс, через который идёт ваш интернет-трафик.

  3. Нажмите кнопку Start capturing packets, чтобы начать захват трафика.


Поиск сигнатуры протокола (на примере QUIC)

Рассмотрим процесс поиска сигнатуры на примере популярного UDP-протокола QUIC:

  1. После запуска захвата пакетов введите в поле фильтра Wireshark название нужного вам протокола (например, quic).

    Если вы ещё не выбрали конкретный протокол и хотите просто посмотреть доступные UDP-протоколы, введите в фильтр udp.

  2. Из списка захваченных пакетов выберите пакет, который хотите использовать для маскировки.

    Совет:
    Рекомендуется выбирать начальные или финальные пакеты сессии, так как они лучше подходят для маскировки VPN-трафика.

  3. Кликните по выбранному пакету правой кнопкой мыши → выберите пункт меню Copy → …as Hex Stream.

    В результате вы получите строку вида:

    c70000000108ce1bf31eec7d93360000449e227e4596ed7f75c4d35ce31880b4133107c822c6355b51f0d7c1bba96d5c210a48aca01885fed0871cfc37d59137d73b506dc013bb4a13c060ca5b04b7ae215af71e37d6e8ff1db235f9fe0c25cb8b492471054a7c8d0d6077d430d07f6e87a8699287f6e69f54263c7334a8e144a29851429bf2e350e519445172d36953e96085110ce1fb641e5efad42c0feb4711ece959b72cc4d6f3c1e83251adb572b921534f6ac4b10927167f41fe50040a75acef62f45bded67c0b45b9d655ce374589cad6f568b8475b2e8921ff98628f86ff2eb5bcce6f3ddb7dc89e37c5b5e78ddc8d93a58896e530b5f9f1448ab3b7a1d1f24a63bf981634f6183a21af310ffa52e9ddf5521561760288669de01a5f2f1a4f922e68d0592026bbe4329b654d4f5d6ace4f6a23b8560b720a5350691c0037b10acfac9726add44e7d3e880ee6f3b0d6429ff33655c297fee786bb5ac032e48d2062cd45e305e6d8d8b82bfbf0fdbc5ec09943d1ad02b0b5868ac4b24bb10255196be883562c35a713002014016b8cc5224768b3d330016cf8ed9300fe6bf39b4b19b3667cddc6e7c7ebe4437a58862606a2a66bd4184b09ab9d2cd3d3faed4d2ab71dd821422a9540c4c5fa2a9b2e6693d411a22854a8e541ed930796521f03a54254074bc4c5bca152a1723260e7d70a24d49720acc544b41359cfc252385bda7de7d05878ac0ea0343c77715e145160e6562161dfe2024846dfda3ce99068817a2418e66e4f37dea40a21251c8a034f83145071d93baadf050ca0f95dc9ce2338fb082d64fbc8faba905cec66e65c0e1f9b003c32c943381282d4ab09bef9b6813ff3ff5118623d2617867e25f0601df583c3ac51bc6303f79e68d8f8de4b8363ec9c7728b3ec5fcd5274edfca2a42f2727aa223c557afb33f5bea4f64aeb252c0150ed734d4d8eccb257824e8e090f65029a3a042a51e5cc8767408ae07d55da8507e4d009ae72c47ddb138df3cab6cc023df2532f88fb5a4c4bd917fafde0f3134be09231c389c70bc55cb95a779615e8e0a76a2b4d943aabfde0e394c985c0cb0376930f92c5b6998ef49ff4a13652b787503f55c4e3d8eebd6e1bc6db3a6d405d8405bd7a8db7cefc64d16e0d105a468f3d33d29e5744a24c4ac43ce0eb1bf6b559aed520b91108cda2de6e2c4f14bc4f4dc58712580e07d217c8cca1aaf7ac04bab3e7b1008b966f1ed4fba3fd93a0a9d3a27127e7aa587fbcc60d548300146bdc126982a58ff5342fc41a43f83a3d2722a26645bc961894e339b953e78ab395ff2fb854247ad06d446cc2944a1aefb90573115dc198f5c1efbc22bc6d7a74e41e666a643d5f85f57fde81b87ceff95353d22ae8bab11684180dd142642894d8dc34e402f802c2fd4a73508ca99124e428d67437c871dd96e506ffc39c0fc401f666b437adca41fd563cbcfd0fa22fbbf8112979c4e677fb533d981745cceed0fe96da6cc0593c430bbb71bcbf924f70b4547b0bb4d41c94a09a9ef1147935a5c75bb2f721fbd24ea6a9f5c9331187490ffa6d4e34e6bb30c2c54a0344724f01088fb2751a486f425362741664efb287bce66c4a544c96fa8b124d3c6b9eaca170c0b530799a6e878a57f402eb0016cf2689d55c76b2a91285e2273763f3afc5bc9398273f5338a06d

Как подготовить hex-строку для использования в AmneziaVPN

После копирования hex-строки из Wireshark необходимо привести её к формату, совместимому с параметрами протокола AmneziaWG.

Для этого нужно:

  1. Добавить префикс + пробел <b перед строкой.
  2. Добавить префикс 0x непосредственно перед самой hex-строкой.
  3. Завершить строку закрывающим символом >.

Таким образом, изначальная hex-строка c70000000108ce1bf31eec7d93360000449e227e...
должна выглядеть следующим образом: <b 0xc70000000108ce1bf31eec7d93360000449e227e...>

Расшифровка формата:
<b ...> — обозначает, что это специальный бинарный пакет данных.
0x — указывает на то, что следующие символы представляют собой шестнадцатеричные (hex) данные.


Как настроить AmneziaVPN

Подготовленную строку нужно использовать для изменения параметров I1-I5 в настройках либо сервера, либо клиента, в зависимости от используемой версии протокола AmneziaWG.

Если на сервере установлен протокол AmneziaWG 1.0, он же AmneziaWG Legacy, поменять параметры I1-I5 можно только на стороне клиента. Это означает, что внести изменения потребуется на каждом устройстве, на котором есть созданное подключение по протоколу AmneziaWG 1.0.

Если на сервере установлен протокол AmneziaWG 2.0, изменить параметры I1–I5 можно сразу на стороне сервера. В результате любое устройство, для которого будет создана VPN-конфигурация, будет подключаться к VPN с серверными настройками протокола. Если по какой-либо причине внести изменения потребуется именно в клиентские настройки подключения, это также можно сделать.


Редактирование настроек сервера

  1. Откройте приложение AmneziaVPN и нажмите на название любого подключения.
  2. Нажмите на иконку ⚙️ (шестерёнка) справа от подключения к вашему серверу.
  3. В списке установленных протоколов выберите AmneziaWG, затем перейдите в раздел AmneziaWG настройки сервера.
  4. Найдите поле I1 - Special junk 1, вставьте в него подготовленную строку вида <b 0xHEX> и нажмите Сохранить.

Теперь любое устройство, для которого будет создана VPN-конфигурация, будет подключаться к VPN-серверу с выбранной маскировкой.


Редактирование настроек подключения

  1. Откройте приложение AmneziaVPN и нажмите на название любого подключения.
  2. Нажмите на иконку ⚙️ (шестерёнка) справа от подключения к вашему серверу.
  3. В списке установленных протоколов выберите нужный — AmneziaWG Legacy или AmneziaWG, затем перейдите в раздел AmneziaWG настройки подключения.
  4. Найдите поле I1 - First special junk packet, вставьте в него подготовленную строку вида <b 0xHEX> и нажмите Сохранить.

Теперь это устройство будет подключаться к VPN-серверу с выбранной маскировкой.