bol-van / zapret

DPI bypass multi platform
8.42k stars 637 forks source link

RTC Discord #733

Open dnevnnoyy opened 2 weeks ago

dnevnnoyy commented 2 weeks ago

Можно как-то подобрать стратегию для обхода блокировки RTC Discord и каким скриптом это делать на Linux.

dnevnnoyy commented 2 weeks ago

На винде обход работает.

oniksofers commented 2 weeks ago

перенести свой конфиг на линукс?

HentayHentay commented 1 week ago

Можно как-то подобрать стратегию для обхода блокировки RTC Discord и каким скриптом это делать на Linux.

скриптом 50-discord правильно положенный в свое место Но может потребоваться немного подкрутить стратегию если не взлетит

dnevnnoyy commented 1 week ago

Можно как-то подобрать стратегию для обхода блокировки RTC Discord и каким скриптом это делать на Linux.

скриптом 50-discord правильно положенный в свое место Но может потребоваться немного подкрутить стратегию если не взлетит

Положил в /opt/zapret/init.d/sysv/custom.d Сообщения и т.п. работает, войс нет. Настройки с винды хз как перенести... BATник винды: https://i.imgur.com/gctVDj7.png

HenryTownshand commented 1 week ago

Можно как-то подобрать стратегию для обхода блокировки RTC Discord и каким скриптом это делать на Linux.

скриптом 50-discord правильно положенный в свое место Но может потребоваться немного подкрутить стратегию если не взлетит

Положил в /opt/zapret/init.d/sysv/custom.d Сообщения и т.п. работает, войс нет. Настройки с винды хз как перенести... BATник винды: https://i.imgur.com/gctVDj7.png

у меня через 3-4 раза переподключения в голосовой подряд канал заходит. Попробуй

HentayHentay commented 1 week ago

@HenryTownshand @dnevnnoyy Требуется некоторая магия и докрутить стратегию. При правильных настроек все работает сразу и хорошо Но здесь главное условие - провайдер. Он может ложку дегтя добавлять

Положил в /opt/zapret/init.d/sysv/custom.d Сообщения и т.п. работает, войс нет. Настройки с винды хз как перенести... BATник винды: https://i.imgur.com/gctVDj7.png

Копируешь без -wf и переносишь. Но тут есть одна проблема. Линукс и Винда по разному обрабатывает запросы. Так что продеться ещё прогнать нужное через Блокчек

HenryTownshand commented 1 week ago

@HentayHentay ну честно говоря я в этом совсем не разбираюсь. Так что остаётся только ждать когда кто нибудь маякнёт как и что настроить. Если что, я на домру сижу

dnevnnoyy commented 1 week ago

@HenryTownshand @dnevnnoyy Требуется некоторая магия и докрутить стратегию. При правильных настроек все работает сразу и хорошо Но здесь главное условие - провайдер. Он может ложку дегтя добавлять

Я в этом не силён, не знаю как правильно это писать. blockcheck не помог... Провайдер ростелеком.

HentayHentay commented 1 week ago

Я в этом не силён, не знаю как правильно это писать. blockcheck не помог... Провайдер ростелеком.

Берёшь , вписываешь нужные тебе сайты. Чем больше - лучше. Через force прогоняем. (до пару часов) На винде есть ещё гудчек. Можешь им пощупать стратегии. (тот-же лист туды) В обоих случая нужно отключить запрет/впн

dnevnnoyy commented 1 week ago

@HenryTownshand @dnevnnoyy Требуется некоторая магия и докрутить стратегию. При правильных настроек все работает сразу и хорошо Но здесь главное условие - провайдер. Он может ложку дегтя добавлять

Положил в /opt/zapret/init.d/sysv/custom.d Сообщения и т.п. работает, войс нет. Настройки с винды хз как перенести... BATник винды: https://i.imgur.com/gctVDj7.png

Копируешь без -wf и переносишь. Но тут есть одна проблема. Линукс и Винда по разному обрабатывает запросы. Так что продеться ещё прогнать нужное через Блокчек

Куда это вписывать? В конфиг?

HentayHentay commented 1 week ago

Куда это вписывать? В конфиг?

А куда ещё. 3 последние строчки. Но судя по конфигу из винды, тебе нужно включить ещё nfqws Но может не взлететь, в силу разности ...

Листы тоже перенеси и поправь пути к ним. Дискорд заводиться через кустом. Так что все что касается 50000 портов может убрать.

И используем запрет только для работы с дискордом. Какое принижение...

dnevnnoyy commented 1 week ago

@HentayHentay Не только для ДСа, ютуб

HentayHentay commented 1 week ago

Не только для ДСа, ютуб

В конфигурации нету ютуба.. Значит на твоем провайдере не требуется дурение ??

dnevnnoyy commented 1 week ago

@HentayHentay Ютуб тоже не работал, но после стандартной установки он заработал. Дискорд заработал с custom.d для ДСа был войс даже, пока пару тройку дней назад не отвалился. Я только ХЗ. Как проверить работает ли 50-discord или нет:(

HentayHentay commented 1 week ago

Ютуб тоже не работал, но после стандартной установки он заработал. Дискорд заработал с custom.d для ДСа был войс даже, пока пару тройку дней назад не отвалился. Я только ХЗ. Как проверить работает ли 50-discord или нет:(

Ютуб - отловить свой гуглвидео (откуда идет загрузка видео) и проверить данный хост блокчеком. Особенно обратить внимание на порты UDP (может потребоваться QUIC/HTTP3) И в зависимости от мода , указанного в запрете будет работать те или иные листы. У ютуба тоже имеются хосты

По поводу дискорда - сайты обходятся стандартным на tcp-443 правилом. Голос - там слишком не стандартный протокол и поэтому по сути может потребоваться увеличит в скрипте репиты(но тут не однозначно) или добавить фейк

В листах твоих идет только обработка хостов Дискорда. Ты не указал ни стратегии для Ютуба, ни хостов...

dnevnnoyy commented 1 week ago

@HentayHentay Я в этом не силён, я по инструкции и через install_easy.sh установил + закинул 50-discord в custom.d и всё работало.

HentayHentay commented 1 week ago

Я в этом не силён, я по инструкции и через install_easy.sh установил + закинул 50-discord в custom.d и всё работало.

Ну а теперь тебе нужно настраивать все, провайдер изменил что-то у себя. Запрет это не однокнопочное решение проблем. Прочти /docs/readme для понимания хоть ,как это работает и что нужно для восстановления

dnevnnoyy commented 1 week ago

@HentayHentay Прочитал, но особо не понял:( Можно как-то проще это объяснить, я в работе с сетями и сетевыми запросами не ахти:(

HentayHentay commented 1 week ago

@dnevnnoyy предпоследний пункт в ридми тебе в помощь Либо геморрой , либо все просто без запрета только

Выше все и так описано что нужно делать и как нужно делать.

Netlighter commented 1 week ago

@dnevnnoyy попробуй вот это, либо в целом почитай весь топик, может поможет https://github.com/bol-van/zapret/issues/775#issuecomment-2476364552

IndeecFOX commented 1 week ago

@dnevnnoyy

Если работало, но отвалился только DS я поступил так (у меня на роутере перестаёт войс работать через время):

Крч удалил 50-discord из кастомов, вписал в основной скрипт порты дополнительные, итог: NFQWS_PORTS_TCP=80,443,50000-50090 И стратегию из скрипта 50-discord допом к 3 стратегиям в NFQWS_OPT=" --filter-udp=50000-50090 --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol --new P.S. bol-van (автор запрета ругается на использование any-protocol в тупую "desync any protocol нуждается в connbytes или cutoff ограничителе. ", но мне сойдёт) Теперь не должно отваливаться))

bol-van commented 1 week ago

Крч удалил 50-discord из кастомов, вписал в основной скрипт порты дополнительные, итог: NFQWS_PORTS_TCP=80,443,50000-50090 И стратегию из скрипта 50-discord допом к 3 стратегиям в NFQWS_OPT=" --filter-udp=50000-50090 --dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol --new P.S. bol-van (автор запрета ругается на использование any-protocol в тупую "desync any protocol нуждается в connbytes или cutoff ограничителе. ", но мне сойдёт)

Разница между 50-discord и вот этим - всего лишь в наличии ограничивающего ipset. Значит идет конект куда-то вне зашитого в 50-discord списка IP. И было бы полезно, если бы вы смогли продебаггить куда идет обращение на udp 50000-50099 вне списка. Так вы сделаете что-то полезное вместо эмпирического кухонного тыка.

с any protocol в linux со скриптами запуска zapret все нормально. там connbytes есть но на винде за это надо что-то отрывать

dnevnnoyy commented 6 days ago

@Netlighter Прочитал, потестил не помогло. Войс так и не заработал. Просто вечное подключение. @IndeecFOX Не помогло. Всё тоже самое.

Как и через что проверить, почему не происходит подключение?

IndeecFOX commented 6 days ago

@dnevnnoyy Если выполнить /opt/zapret/init.d/sysv/zapret restart То войс начинает работать? Если да, то нужен хук (/opt/etc/ndm/netfilter.d/netfilter.hook.sh) https://github.com/bol-van/zapret/discussions/475#discussioncomment-10965402 Если не начинает, то: 1) копируем скрипт в нужную папку cp -a /opt/zapret/init.d/sysv/custom.d.examples/50-discord /opt/zapret/init.d/sysv/custom.d/50-discord 2) выполняем /opt/zapret/init.d/sysv/zapret restart 3) Проверяем Если всё равно не заработало, но при этом ютуб или заблокированные ресурсы доступны (как я понял доступны) - значит надо играться со стратегией обхода в /opt/zapret/init.d/sysv/custom.d/50-discord

dnevnnoyy commented 6 days ago

@IndeecFOX Не работает. Всё это уже пробовал. Осталось со стратегией играть. На винде всё работает из коробки, там я юзаю основанное на zapret'e решение. Wireshark: Скрин того, что происходит в момент попытки подключения к войсу: https://i.imgur.com/KhoiReF.png https://i.imgur.com/knn0VZZ.png

bol-van commented 6 days ago

На первой картинке вероятно сеанс дурения tpws --split-pos=... --oob, тк флаг URG. Приходит от сервака ACK на первые 2 пакета, дальше больше секунды ничего. Значит DPI режет. Тк шарк показывает TLS 1.2, то идет реакция DPI на ответ сервера с нешифрованным сертификатом сервера. tpws не дурит tls 1.2. может помочь --mss, но его лучше не применять.

На 2-м скрине проблемы не вижу. Идет закрытие сеанса через RST после 200K пересланных данных. Такое бывает, это не означает DPI. После 200K DPI вряд ли будет реагировать. Хотел бы - уже бы давно

udp 50000+ задействуется только при успешном прохождении обмена по 443. происходит согласование IP для медиа. насколько я понимаю. потому если вас отрезает на этой стадии, udp 50000+ крутить бесполезно

dnevnnoyy commented 6 days ago

@bol-van Из выше сказаного, понятно, что мне нужно изменять правила для TCP, почему --mss лучше не применять? И можно как-то для этого найти стратегию через blockcheck.sh?

IndeecFOX commented 6 days ago

@dnevnnoyy а почему именно tpws? У меня и у многих работает следующее на NFQWS:

NFQWS_OPT="
--filter-tcp=80 --dpi-desync=fake,split2 --dpi-desync-ttl=0 --dpi-desync-fooling=md5sig,badsum <HOSTLIST> --new
--filter-tcp=443 --dpi-desync=fake,disorder2 --dpi-desync-split-pos=1 --dpi-desync-ttl=0 --dpi-desync-fooling=md5sig,badsum --dpi-desync-repeats=15 --dpi-desync-any-protocol --dpi-desync-cutoff=d4 --dpi-desync-fake-tls=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin <HOSTLIST> --new
--filter-udp=443 --dpi-desync=fake,udplen --dpi-desync-udplen-increment=10 --dpi-desync-udplen-pattern=0xDEADBEEF --dpi-desync-fake-quic=/opt/zapret/files/fake/tls_clienthello_www_google_com.bin --dpi-desync-repeats=7 --dpi-desync-cutoff=n2
"

А в 50-discord стандартные работают: NFQWS_OPT_DESYNC_DISCORD="${NFQWS_OPT_DESYNC_DISCORD:---dpi-desync=fake --dpi-desync-repeats=6 --dpi-desync-any-protocol}" DISCORD_PORTS=${DISCORD_PORTS:-50000-50099} DISCORD_SUBNETS= ТУТ ПЕРЕЧИСЛЕНИЕ КУЧИ СЕТЕЙ. Убрал чтобы тут не засорять

dnevnnoyy commented 6 days ago

@IndeecFOX Затестил, ноль изменений. Войс всё так же не подключается:( Я уже кучу решений перепробовал. Может я что-то не так делаю:(

bol-van commented 6 days ago

очему --mss лучше не применять?

потому что это включает жестокий тормоз на весь оставшийся конект. и мало того - оно не ограничивается хостлистом. за одним исключением. когда идет конект через socks с удаленным ресолвингом домена. тогда tpws сразу знает hostname и может ограничить mss tpws не работает с udp. задурить им 50000+ udp не выйдет. хотя никто не мешает для udp использовать nfqws, для tcp - tpws

dnevnnoyy commented 6 days ago

@bol-van Я уже столько предложенных решений перепробывал. Искал стратегии через blockcheck.sh, но по итогу конечной цели пока не добился. Я уже хз, что не так делаю:( Возникает ощущение, будто всё что я делаю, не работает или не запускается...

IndeecFOX commented 6 days ago

@dnevnnoyy а вы запускали install скрипт запрета или меняли конфиг? В нём надо отключить tpws и включить NFQWS соответственно. Мб забыли случайно Интерфейсы корректные lan и wan указаны? Мб После изменений выше были ли доступны заблокированные сайты (Те что точно без обхода не работают)?

dnevnnoyy commented 6 days ago

@IndeecFOX В install скрипте включал и TPWS и NFQWS, a так же SOCKS. Интерфейсы конкретные не указывал. В дальнейшем менял уже сам конфиг. Если не сложно, я был бы не против если бы кто-то помог с настройкой и объяснил на будущее как лучше делать.

IndeecFOX commented 5 days ago

@dnevnnoyy я бы запустил скрипт в нём отключил TPWS, включил NFQWS, в конфиге прописал стратегии выше, если не прописаны. Обычно можно указать в скрипте WAN интерфейс как any и должно работать. Приложите сюда config файл или его содержимое для наглядности. Мб что увидим

dnevnnoyy commented 5 days ago

@IndeecFOX Config: https://pastebin.com/Qs5gqjzi

IndeecFOX commented 5 days ago

@dnevnnoyy

WS_USER=nobody попробовать разкомментировать убрав решётку

TPWS_SOCKS_ENABLE=1 заменить на 0 для отключения TPWS_ENABLE=1 на 0 MODE_FILTER=autohostlist строчку удалить

NFQWS_UDP_PKT_IN=3 возможно стоит заменить на 0, не знаю точно за что отвечает

--filter-tcp=443 --dpi-desync=fake,disorder2 --dpi-desync-split-pos=1 --dpi-desync-ttl=3 замените 3 на 0 пока что

MODE_FILTER=autohostlist - дублируется у вас. Вот второй не удалять, а прописать none IFACE_LAN=enp10s0 - попробовать закомментировать поставив решетку GETLIST=get_combined.sh закомментировать тоже

Я бы попробовал так

dnevnnoyy commented 5 days ago

@IndeecFOX Эти параметры убили вообще все сайты(Даже те что и без обхода работали). Вернул как было.

IndeecFOX commented 5 days ago

@dnevnnoyy стоит попробовать не все сразу параметры менять. Для начала

WS_USER=nobody оставить закомментированным, я тред спутал. Это для кинетиков роутеров))

TPWS_SOCKS_ENABLE=1 заменить на 0 для отключения TPWS_ENABLE=1 на 0 MODE_FILTER=autohostlist строчку удалить MODE_FILTER=autohostlist - дублируется у вас. Вот второй не удалять, а прописать none GETLIST=get_combined.sh закомментировать тоже

Если всё будет хорошо, то пробовать IFACE_LAN=enp10s0 - попробовать закомментировать поставив решетку и/или --filter-tcp=443 --dpi-desync=fake,disorder2 --dpi-desync-split-pos=1 --dpi-desync-ttl=3 замените 3 на 0 пока что

dnevnnoyy commented 5 days ago

@IndeecFOX Эффекта ноль:( Только видео на ютуб перестали грузится. Хотя сами страницы грузятся, даже постеры к видео. Войс в ДСе не заработал:( Это фигня какая-то. Хотя на винде всё работает из коробки:(

IndeecFOX commented 4 days ago

@dnevnnoyy хоть самому линукс поднимай на машине) У меня в виртуалке есть mint, но, наверное, это не то всё же)

IndeecFOX commented 3 days ago

@dnevnnoyy подтверждаю. На linux mint не работает войс ДС, ни в приложении, в ни в браузере. Всё остальное работает. При этом эти же конфигурации работают на keenetic entware. @bol-van есть идеи?

dnevnnoyy commented 15 hours ago

Тоже интересно решение данного вопросы:(