Как стать автором
Обновить

Комментарии 48

Роутер со стандартным WG, надо думать, не взлетит

Для того, чтобы обфусцировать WireGuard конфиг, нужно в ваш конфиг добавить следующие параметры: Jc, Jmin, Jmax

Что-то не распарсил вообще.
Это же не опции нативного ядерного WG?

Много раз в комментариях задавали вопрос, но, кажется, я не увидел на них ответ: будет ли AmneziaWG работать при самых лютых блокировках по белым спискам на манер тех, что были в Дагестане и Якутии? То есть, когда ТСПУ режет вообще всё, что непохоже на HTTP 1-2, голый DNS, Bittorrent и FTP как по TLS, так и по разным другим сигнатурам?

VLESS+XTLS-Reality доказал, что устойчив к таким блокировкам, но вот насчёт остальных...

Так там блокировали вообще любые соединения из за границы, и обойти их никак.

НЛО прилетело и опубликовало эту надпись здесь

Маскировки по легитимный HTTPS трафик нету, когда ТСПУ переключаются в режим "режем всё неопознанное" - работать не будет.

Например, такой режим работы ТСПУ был продемонстрирован при беспорядках в дагестанском аэропорту.

Абсолютно верно. Но для мимикрирования под HTTPS исходящий от популярного приложения и/или популярного сайт не нужна амнезия. Ванильный wg прекрасно для этого подходит. Не нужно добавлять мусорные данные, рандомные числа, переименовывать заголовки и тд.

Ванильный wg совершенно для этого не подходит: он не имитирует TLS handshake, просто сразу посылает шифрованный поток данных. Такое 100% режут в режиме "резать неопознанное".

Я предполагаю, что мимикрирование означает инкапсулирование потока данных от wg в какую-то обертку (например в хром как делает naive proxy). Тогда ванильный wg подходит прекрасно.

Как же он подходит, если https в качестве транспорта использует TCP, а WG только UDP?

Импортировать созданный конфиг с VPN и пользоваться им  можно как в приложение AmneziaWG, так и в AmneziaWG.

Это точно то, что хотели сказать?)

Это все хорошо, только не спасет от блокировки протоколов по белым спискам, когда все unknown будет резаться. Лучше сразу копать в сторону маскировки под TLS или другие протоколы, которые возможно оставят рабочими

НЛО прилетело и опубликовало эту надпись здесь

Сделайте в Amnezia VPN для андроид возможность прописать параметры подключения к серверу руками. У меня уже есть настроенный руками сервер с vpn и cloack, нет клиента для андроид, а в Вашем не настраивается.

На гитхубе есть конвертер конфигов из json в vpn:// и обратно. Я им выдернул конфиг в читабельном формате, прописал туда свои параметры, конвертнул снова в vpn:// и скормил клиенту на ведроиде. В итоге cloak пролетает, стучится на сервер опенвпн, который биндится к локалхосту, авторизуется по х509 и сразу уходит в реконнект. Дальше копать не было времени, поэтому отложил до лучших дней.

Важно помнить, что параметры S1, S2 и H1, H2, H3, H4 должны оставаться
равными указанным значениям (иначе ничего не заработает), а параметры J
вы можете изменять как вам захочется.

Зачем тогда вообще выносить параметры в конфигурацию, если их нельзя менять?

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

А конфиг с AmneziaVPN на AmneziaWG раздать нельзя?
И пользуясь случаем - когда планируете killswitch?
Спасибо!

killswitch уже есть для протоколов OpenVPN, OpenVPN over Cloak WireGuard и AmneziaWG. В WireGuard он всегда был, он там прям в протокол вшит, для других протоколов мы его добавили , он работает по-умолчанию. KillSwitch точно есть в последних двух релизах Амнезии.

Чтобы раздать конфиг через AmneziaVPN для AmneziaWG нужно нажать поделиться подключением на нижней панели в AmneziaVPN и там в меню выбрать протокол AmneziaWG и чуть ниже в строке "для AmneziaWG нативный формат" ( нужна последняя версия клиента)

А я искал переключатель киллсвитч после каждого обновления)

Понял в чем дело. Версия 4.5.0.0 пока доступна только на гитхабе в релизах, а с сайта качается 4.4.0.0, которой нативного формата нету.

Вот бы ещё сборку GUI под винду и мак без вашего комбайна

Вот бы ещё версию portable для софта, цены бы небыло ;)

А поддержку для Opnsense не планируете? Там правда модуль ядра придется переписывать видимо.

Попробовал на Keenetic - не сработало(

работает на 4.2.0 (сейчас бета)

Работает.
На 4.2 и выше. Но я его настроил только для теликов, а клиентов на hiddify посадил.

Нет ли планов реализовать десктопные клиенты по примеру клиентов для смартфонов? Вижу у вас на гитхабе форки оригинальных клиентов для Win и MacOS (последний, впрочем, заархивирован), нет ли прогресса?

Чет я не заметил, что он устойчив к блокировкам, в мобильных сетях МТС он не работает!

смени VPN, в мобильных сетях МТС даже pure WG работает у определенных поставщиков

Ну, дык, я конкретно про AmneziaWG говорил, он не работает, Outline работает местами, Amnezia VPN, работает всегда... :)

Осталось systemd-networkd подружить с amneziawg также как он дружит с обычным wg. И будет счастье )

А что именно там не дружит?

Ну нужно научить systemd-networkd дёргать Netlink-вызовы Амнезии, а не обычного WireGuard'а. Он же не использует для конфигурации команду wg, а напрямую обращается к netlink-сокету.

А можно чуть подробнее, что за вызовы и когда должны дёргаться? Я сейчас пытаюсь амнезию на серверах поставить и работает оно несколько странно.
Оно же наоборот работает - wg сам свой интерфейс создаёт/конфигурирует/удаляет. Вы в обход wg что-то конфигурируете?

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

systemd-networkd именно по такому пути и пошел: вместо использования wg, он дёргает напрямую ядро для конфигурации сетевых интерфейсов тех типов, которые он поддерживает.

Для конфигурации сетевой подсистемы в Linux используются Netlink-сокеты. Как с ними работает утилита wg можно посмотреть в исходниках wg. Соответственно, для конфигурации awg используются похожие сообщения, но со своей "сигнатурой".

А, ну это понятно. Но чтобы systemd-networkd с awg работал, нужно его самого править, а для этого нужно активное содействие его разработчиков.

Ничего не мешает сделать это самому и послать им pull request )

Для этого нужно, чтобы amneziawg сначала вошла в стандартные репозитории основных дистрибутивы. Проще их патчи в основной WG влить

Если знаешь как добавить поддержку параметров AmneziaWG в основной проект WG, то открой тикет и скажи об этом разработчикам. Я поддерживаю твою идею, проще добавить возможность работать с протоколом Amnezia в стандартную программу WG.

Я пользуюсь приложением v2rayN на Windows. Аналоги: Hiddify и NekoRay. Есть аналоги для всех популярных платформ. Эти программы работают с многими протоколами, в том числе с WireGuard, но я не нашёл возможность подключить ваш протокол. Где указывать все эти параметры - S1, S2 и H1, H2, H3, H4, ... для протокола WireGuard?
Ваше приложение AmneziaWG для Windows настолько уступает указанным выше универсальным клиентам, что выглядит совершенно бесполезным. Вы зачем-то написали новое приложение, когда можно было доработать существующие open source приложения.

У них же новый протокол на основе WG (с кучей плюсов, кстати), вы авторам приложений пишите. И, как я понимаю, AneziaWG это такая простенькая opensource-затычка, а есть ещё и некий мега-комбайн от них, который всё умеет, но на который нет толком документации, и которому многие не верят в силу закрытости и сложности.

Вы влезли в протокол wg для того, чтобы его обфусцировать. Все изменения, которые вы сделали, относяться только к обфускации. Но такой подход в современном мире является неверным и вот почему.

Все современные DPI системы (в т.ч. те, которые сейчас работают в РБ/РФ и в КНР) пытаются понять с каким типом трафика они имеют дело. Типы трафика для примера:

  1. Браузер подключился к сайту

  2. Мобильное приложение подключилось к серверу

  3. VPN клиент подключился к серверу

  4. Неизвестное приложение подключилось к серверу

Для каждого типа трафика действует различная политика по пропускной способности. Если вы обфусцируете то всегда попадаете в 4 категорию. А это по факту самая отвратительная политика пропускной способности.

Если говорить про КНР и великий китайский фаерволл, то ваша амнезия поработает там приблизительно 1 час на высокой скорости, затем несколько часов на низкой скорости. После этого она вообще не сможет выйти в интернет т.к. будет полностью заблокирована. А все потому, что китайский фаеволл пытался, но не смог понять с каким трафиком он имеет дело. После этого он просто построил отпечаток вашего измененного протокола и заблокировал его как неизвестный.

Если вы попытаетесь использовать вашу амнезию в КНР во время любых политических событий, то вообще не сможете ни к чему подключится. Потому что по этим дням пропуск неизвестного трафика китайским фаевроллом запрещен впринципе.

Аналогичная ситуация сегодня происходит и с различными фаевролами в РБ/РФ.

Для того, чтобы попасть в политику пропуска трафика 1-2 необходимо мимикрировать под браузер и/или мобильное приложение. А вот для мимикрирования ванильный протокол wg достаточно хорош и не требует никаких изменений. Не надо добавлять никакого мусора, переименовывать заголовки, добавлять рандомный префиксы и суффиксы. Это просто не нужно.

Приветствую! Планируется ли пакет под openwrt или там есть какие-либо нюансы?

Кто-то пытается https://github.com/amnezia-vpn/amneziawg-go/pull/65. Я проверил, образ билдится и запускается на arm64 нормально. Но хотелось бы это все из приложения иметь тоже.

А есть ли GUI клиент под Ubuntu?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий