Простой способ обойти блокировку VPN (wireguard).

Похоже, РКН использует DPI для блокировки некоторых VPN сервисов. В частности, Wireguard. Но ничего страшного, решение простое. Нужно просто прогнать немного мусора перед установлением wireguard-соединенения, и DPI его уже не сможет опознать. Еще тонкость - мусор надо гонять на тех же портах, по которым будет работать wireguard (в том числе и тот же клиентский порт):

[Interface]
PrivateKey = ....
Address = 10.9.0.2/24
ListenPort = 23123

PreUp = nping --udp --count 1 --data-length 16 --source-port 23123 --dest-port 12345 123.123.123.123

В нашем случае, у нас wg сервер работает на адресе 123.123.123.123:12345, мы фиксируем (через ListenPort) порт на клиенте, чтобы использовался 23123, и через директиву PreUp запускаем nping, который погоняет немного (16 байт) случайного мусора с порта 23123 клиента на wireguard. Наш сервер этот мусор переживет, а вот роскомнадзоровский DPI это запутает.

За идею спасибо ValdikSS, В оригинале описана здесь: https://ntc.party/t/wireguard/4968/6.

Аналогичное решение для Windows.

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

https://github.com/infinet/xt_wgobfs

В криптографическом плане, защита смешная, но для неуловимого Джо этого более чем достаточно.

Обход блокировки wireguard в Android

Делается аналогично, но как выполнить nping?

  1. Ставим пакет Termux https://play.google.com/store/apps/details?id=com.termux
  2. В Termux устанавливаем nmap (в состав nmap входит nping): pkg install nmap. На все соглашаемся, устанавливаем nmap и его зависимости
  3. Когда установилось, так же выполняем команду nping ....

Замечание - В этом методе так же требуется зафиксировать ListenPort и делать пинги с этого порта.

comments powered by Disqus