Мой провайдер помимо замедления (читай полная блокировка) YouTube так-же стал блокировать соединения с моими рабочими VPN. Работодатель не очень любит, когда на встречах на вопрос о прогрессе, я неделю отвечаю, что у меня не работает VPN! Своими действиями, мой провайдер сам меня подтолкнул к поиску обходных путей.

Сразу скажу, обходной путь придумал не сам, мне его подсказал автор проекта zapret, а точнее его комментарий, более того, я использую его проект, чтоб смотреть нормально YouTube. Спасибо огромное!

Добавлю, я использую nftables и nfqws, если этот вариант работает у меня — это не значит, что заработает и у вас! Возможно, вам придётся изменить некоторые параметры.

Первое, очень внимательно читаем комментарий по ссылке выше и штудируем, как портировать правила iptables в nftables.

$ iptables-translate -A OUTPUT -t mangle -o wlan0 -p udp --dport 443 -m mark ! --mark 0x40000000/0x40000000 -j NFQUEUE --queue-num 220 --queue-bypass

получилось:

$ nft 'add rule ip mangle OUTPUT oifname "wlan0" udp dport 443 mark and 0x40000000 != 0x40000000 counter queue num 220 bypass'
  • wlan0 — интерфейс, через который мы ходим в сеть

  • 443 — порт подключения к VPN сервису

  • меняем OUTPUT на output

итоговая строка получается:

$ nft 'add rule ip mangle output oifname "wlan0" udp dport { 443, 18189 } mark and 0x40000000 != 0x40000000 counter queue num 220 bypass'

у меня два VPN коннекта, отсюда и два порта!

Перед запуском, проверим, что у нас есть таблица ip mangle:

$ nft list tables

если нет, создаём её и цепочку output

$ nft add table ip mangle
$ nft 'add chain ip mangle output { type filter hook output priority 0 ; }'

Смотрим, что всё создалось:

$ nft -a list table ip mangle

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

и последнее, запускаем демон, который маскирует пакеты отправленные на требуемые порты

$ /opt/zapret/nfq/nfqws --uid 2 --qnum=220 --dpi-desync=fake --dpi-desync-any-protocol --dpi-desync-cutoff=d2 --dpi-desync-repeats=10 --dpi-desync-ttl=5 --daemon

обратите внимание, значение ttl у вас может отличаться. Своё я подглядел через ps aux | grep nfqws, которое стоит в демоне от zapret.

Понятно, что всё можно автоматизировать и не запускать всё руками, но мне надо было срочно. Самое главное, работает!

Комментарии (11)


  1. behemoth23
    06.09.2024 19:33

    Работодатель какой-то странный, если сидит на openvpn до сих пор.

    Или он снаружи РФ?


    1. yarushka
      06.09.2024 19:33
      +1

      А что не так с OpenVPN внутри РФ?

      Если персональные данные не обрабатываются, не КИИ, не банк, не госучреждение и не медицина, почему нельзя использовать OpenVPN?


      1. behemoth23
        06.09.2024 19:33

        >А что не так с OpenVPN

        РКН не любит openvpn и wg, это уже повод его поменять. Не, будем жрать кактус с какими-то васян-приблудами для обфускации. Хорошо если сами эти приблуды без троянов.


        1. ntoskernel
          06.09.2024 19:33
          +2

          Повод его поменять

          А существует хоть один VPN-протокол, который любит РКН? Проблема же не в протоколах, а в самой сущности туннелирования трафика, которую нельзя контролировать.

          Ну, завтра властная группировка поймет, что им в целом надоел современный TLS (уже есть проблемы с eSNI и т.д.) — РКН, разумеется, возьмёт под козырёк — тогда что будем делать? Это будет "поводом" перейти на HTTP?

          Туда же многочисленные истории про блокировки просто не понятного цензору трафика. Это всё кончится очень плохо.


          1. behemoth23
            06.09.2024 19:33

            >завтра властная группировка поймет, что им в целом надоел современный TLS

            проснись нео, у тебя в яндекс-фсбраузере уже ЦА чекистов давно прописался )

            >Это всё кончится очень плохо

            кто сказал, что чебурнет это плохо? 15 лет за такое или это уже гoсизмeна )


        1. aegoroff
          06.09.2024 19:33

          Мы (Positive Technologies) сидим на OpenVPN - все работает нормально, проблем с юлокировками не испытываем. Не знаю используется ли обфускация но с клиентской стороны никаких приседаний не было и проблем тоже.


  1. jonic
    06.09.2024 19:33

    А мне нравится заворачивать трафик через ssh, а там уже что хочешь подрубай. Правда скорость так себе, но для работы много не надо


    1. nitro80
      06.09.2024 19:33

      Читал, SSH могут замедлить крайне, что работать будет, но тот же YouTube уже не посмотришь


      1. rPman
        06.09.2024 19:33

        Замедление ssh будет сродни его отключения, через него проходит огромный объем трафика, или у вас это только к консоли терминала подключение? Любое копирование файлов уже давно через ssh


  1. kest70
    06.09.2024 19:33

    У нас фортик, к нему через мегафон с трудом подключаюсь почему-то.


  1. yarushka
    06.09.2024 19:33
    +5

    В статье несколько сумбурно все описано, предполагается что читатель сам должен догадаться как у автора устроена архитектура его сети.

    Непонятно, на роутере настройка происходит или на рабочей станции с Linux.