Механизмы обхода блокировки vpn

Всем привет.
Думаю интересно было бы объединить в одну тему теорию и практику сабжа на фоне начала массовых блокировок vpn в России, дабы почерпнуть всё из одного места, а не искать по кусочкам, раскиданным по всему форуму. Самую ценную информацию можно было бы закрепить в шапке темы.
Начну со своих 5 копеек.
Сталкивался с временной блокировкой личного vps/vpn на 5 пользователей, два раза по кабелю в виде drop всего трафика на нестандартные порты(кроме 22/80/443; причем у знакомого в это время на его однопользовательском личном vpn всё работало) и один раз drop udp dstport у конкретного пользователя. Сейчас всё работает, но, вероятно, это разведка боем и стоит уже принимать меры, чтобы не попасть в постоянные списки.

Самым ультимативным методом мне кажется мимикрия под https и приземление массового трафика всех пользователей в пределах РФ(например wireguard; сомневаюсь, что будут блокировать vpn внутри страны, т.к. это сломает инфраструктуру, да и не зря ТСПУ на магистрали ставят), а далее проброс его через мост(openconnect/shadowsocks ?) на зарубежный сервер под видом https трафика. Опыт товарищей из Китая подсказывает, что ТСПУ могут обратиться на подозрительный адрес, чтобы проанализировать содержимое/результат - в этом случае отдавать простенький сайтик в виде заглушки. Единственное слабое место, кмк, - соответствие TLS fingerprint https трафику. Интересно было бы послушать специалистов.

Ваши предположения?

Рекомендую к прочтению https://habr.com/ru/articles/731608/

Это самый современный способ обхода блокировок на данный момент
Плюсы:
-Не требуется хостить свой веб-сайт
-шифруется только рукопожатие, остальной трафик идет без двойного шифрования
-решена проблема с fingerprint
-есть клиенты под ios/android/win/mac/linux и т.д
-бонусом удобная настройка роутинга трафика
Минусы:
-это не vpn, можно маршрутизировать только https трафик

Штука настолько мощная что обходит даже китайкий фаервол

Я, например, мечтаю об инструменте, который мог бы устанавливать IP туннель мимикрируясь под https с настраиваемым отпечатком браузера и валидным сертификатом Let’s Encrypt с настраиваемой заглушкой против active probing; с user mode TCP реализацией с отключенным сongestion сontrol и re-transmission; с автоподбором оптимального MTU физических пакетов (виртуальный интерфейс мог бы иметь MTU, например, 64 KiB, но с флагом DF PMTUD выдавал бы MTU выходного интерфейса сервера или не фрагментируемого затуннелированного пакета в зависимости от решаемой задачи); с пересборкой TCP сессии по умолчанию, но и возможностью отправки сырых TCP пакетов при необходимости, с автоконтролем качества связи и добавления помехоустойчивого кодирования при ухудшении канала; возможностью поднять SOCKS5 прокси с поддержкой UDP relay вместо интерфейса, если он не нужен; c policy-based routing; с опциональным кэширующим DNS сервером и transparent HTTP/HTTPS прокси для ускорения загрузки web; с графическим интерфейсом под windows и визуальным программированием; c менеджментом пользователей сервера; с быстродействующими клиентами под мобильные процессоры. А пока приходится извращаться с кучей инструментов и смотреть на высокую нагрузку мобильных CPU.

Ещё необходима возможность дублирования broadcast пакетов на все интерфейсы под windows как в других ОС. Сейчас они идут только на один интерфейс с наименьшей метрикой.

Самый простой вариант — арендовать сервер в РФ без ТСПУ (и убедиться, что AS тоже в РФ), настроить на нём перенаправление портов на сервер за рубежом.
Такой вариант вряд ли продолжит работать в следующем году, так как обещают установить ТСПУ на хостинг-площадках (1, 2).

Вариант чуть сложнее и чуть надёжнее, но всё ещё простой: так как на этот раз блокировали только VPN-подключения из РФ за рубеж, можно настроить подключение с сервера за рубежом на сервер в РФ. Гарантий, что такой способ не заблокируют, нет, но всё же он выглядит логически обоснованным.

Вариант получше: то же самое, только с несколькими туннелями по разным протоколам, проверкой их работоспособности и динамической сменой маршрута на рабочий (например, с помощью keepalived). Можно дополнить инкапсуляцию легко инкапсулируемых туннелей (OpenVPN, L2TP, чистый PPP) в shadowsocks/vmess/другой анти-цензурный протокол.

Также, как было видно по АнтиЗапрету, работали методы нарушения определения протокола на стороне сервера. Их можно применять, если хотя бы первый пакет доходит до сервера (как было в случае OpenVPN, но не WireGuard в сторону OVH/Scaleway). Для этого можно либо применять zapret, либо более точечные методы (пришлось пропатчить OpenVPN, чуть изменив протокол, но не нарушив его понимание клиентом, на что потребовалось приличное количество времени).

OpenVPN можно дополнительно обернуть в HTTP или Socks-прокси, у него есть их штатная поддержка. Работа через HTTP-прокси обходила блокировку.

Вероятно уже сейчас устанавливают. Есть VPS у одного хостера из списка, у которого 8 баллов на adguard и meduza, но трафик режется на стадии client hello(SSL handshake has read 0 bytes and written 324 bytes).

Практически все это есть в xray, но это не впн.

VPN можно получить, терминировав трафик в PPP. Можно как по TCP (pppd как pty/socket), так и UDP (L2TP).
Вот мои риторические вопросы и возмущения.

Практически ничего нет в xray. Он у меня стоит для scrape запросов трекеров, а VoIP по нему работает очень плохо.

Продублирую для истории:

Я года три назад пытался начать скрещивание, но дальше создания пустого проекта дело не дошло: все ЯП мне противны, на асме слишком рутинно.

При всем уважении, Вы путаете теплое с мягким.
У ВПН своя задача, у средств обхода блокировок другая. Естественно и приоритеты разные.

а можно ваш патч на OpenVPN?

Присоединяюсь. Можно как-то получить этот патч?

Вы не правы насчёт минуса.
На мобильных устройствах по умолчанию включен режим тунеллирования (TUN) на всех приложениях. На пк клиентах также везде сейчас есть свич на VPN/TUN мод, все работает без проблем.

Я был бы сильно признателен, если бы подобный патч вышел для контейнера. Сейчас перестал работать OpenVPN и я честно говоря не нашел другой относительно простой альтернативы вашему решению, да еще чтобы она работала на роутере asus.
А идти перепрошивать роутер на мерлина, чтобы установить туда шадоусокс как-то не хочется…

Или не хочешь публиковать патч, чтобы не увидели алгоритм обхода блокировки?