mirror of
https://github.com/bol-van/zapret.git
synced 2024-11-11 17:29:16 +05:00
96 lines
11 KiB
Plaintext
96 lines
11 KiB
Plaintext
|
Специально для тех, кто хочет побыстрее начать, но не хочет слишком углубляться в простыню readme.txt.
|
|||
|
|
|||
|
Как обычно, компьютерная грамотность ложится полностью на вас.
|
|||
|
Вы должны уметь работать с консолью windows и иметь минимальные навыки обращения с командными файлами bat,cmd.
|
|||
|
Если грамотность отсутствует и возникает куча "как" на базовых вещах - проходите мимо или ищите помощь в другом месте.
|
|||
|
|
|||
|
Обход DPI является хакерской методикой. Под этим словом понимается метод, которому сопротивляется окружающая среда,
|
|||
|
которому автоматически не гарантирована работоспособность в любых условиях и на любых ресурсах,
|
|||
|
требуется настройка под специфические условия у вашего провайдера. Условия могут меняться со временем,
|
|||
|
и методика может начинать или переставать работать, может потребоваться повторный анализ ситуации.
|
|||
|
Могут обнаруживаться отдельные ресурсы, которые заблокированы иначе, и которые не работают или перестали работать.
|
|||
|
Могут и сломаться отдельные незаблокированные ресурсы.
|
|||
|
Поэтому очень желательно иметь знания в области сетей, чтобы иметь возможность проанализировать техническую ситуацию.
|
|||
|
Не будет лишним иметь обходные каналы проксирования трафика на случай, если обход DPI не помогает.
|
|||
|
|
|||
|
Будем считать, что у вас есть windows 7 или выше. Задача - обойти блокировки с самой системы.
|
|||
|
|
|||
|
1) Если у вас windows 7, обновляйте систему. Годами не обновляемая 7-ка может не запускать драйвер windivert.
|
|||
|
Поддержка 32-битных x86 windows возможна, но в готовом виде отсутствует.
|
|||
|
Поддержка arm64 систем возможна при определенных условиях, но в готовом виде отсутствует.
|
|||
|
Читайте docs/windows.txt
|
|||
|
|
|||
|
Имейте в виду, что антивирусы могут плохо реагировать на windivert. Если это имеет место , используйте исключения.
|
|||
|
|
|||
|
2) Скачайте zip архив проекта с github, распакуйте его куда-нибудь.
|
|||
|
|
|||
|
3) Убедитесь, что у вас отключены все средства обхода блокировок, в том числе и сам zapret.
|
|||
|
|
|||
|
4) Если вы работаете в виртуальной машине, необходимо использовать соединение с сетью в режиме bridge. nat не подходит
|
|||
|
|
|||
|
5) Выполните установку cygwin. Желательно устанавливать windows 7 совместимую версию, под которой и был собран проект.
|
|||
|
Скачайте https://www.cygwin.com/setup-x86_64.exe
|
|||
|
Выполните его с параметрами : setup-x86_64.exe --allow-unsupported-windows --no-verify --site http://ctm.crouchingtigerhiddenfruitbat.org/pub/cygwin/circa/64bit/2024/01/30/231215
|
|||
|
Установите cygwin, выбрав в списке пакетов curl.
|
|||
|
|
|||
|
cygwin нужен только для поиска стратегии обхода блокировки. После этого он не нужен.
|
|||
|
|
|||
|
6) Запустите cygwin.bat из директории установки cygwin от имени администратора.
|
|||
|
В нем нужно пройти в директорию с zapret. Буква диска windows X: отображается как /cygdrive/x.
|
|||
|
Используейте команды как в *nix
|
|||
|
|
|||
|
7) Однократно выполните ./install_bin.sh
|
|||
|
|
|||
|
8) Запустите blockcheck.sh. blockcheck.sh в начале проверяет DNS. Если выводятся сообщения о подмене адресов, то
|
|||
|
первым делом нужно решить эту проблему, иначе ничего не будет работать.
|
|||
|
Решение проблемы DNS выходит за рамки проекта. Обычно она решается либо заменой DNS серверов
|
|||
|
от провайдера на публичные (1.1.1.1, 8.8.8.8), либо в случае перехвата провайдером обращений
|
|||
|
к сторонним серверам - через специальные средства шифрования DNS запросов, такие как dnscrypt, DoT, DoH.
|
|||
|
В современных броузерах чаще всего DoH включен по умолчанию, но curl будет использовать обычный DNS.
|
|||
|
|
|||
|
9) blockcheck позволяет выявить рабочую стратегию обхода блокировок.
|
|||
|
Запомните найденные стратегии.
|
|||
|
|
|||
|
Следует понимать, что blockcheck проверяет доступность только конкретного домена, который вы вводите в начале.
|
|||
|
Вероятно, все остальные домены блокированы подобным образом, но не факт.
|
|||
|
В большинстве случаев можно обьединить несколько стратегий в одну универсальную, но для этого необходимо понимать
|
|||
|
"что там за буковки". Если вы в сетях слабо разбираетесь, это не для вас. В противном случае читайте readme.txt.
|
|||
|
zapret не может пробить блокировку по IP адресу
|
|||
|
Для проверки нескольких доменов вводите их через пробел.
|
|||
|
|
|||
|
Сейчас блокираторы ставят на магистральных каналах. В сложных случаях у вас может быть несколько маршрутов
|
|||
|
с различной длиной по ХОПам, с DPI на разных хопах. Приходится преодолевать целый зоопарк DPI,
|
|||
|
которые еще и включаются в работу хаотичным образом или образом, зависящим от направления (IP сервера).
|
|||
|
blockcheck не всегда может выдать вам в итогах оптимальную стратегию, которую надо просто переписать в настройки.
|
|||
|
В некоторых случаях надо реально думать что происходит, анализируя результат на разных стратегиях.
|
|||
|
Если вы применяете большой TTL, чтобы достать до магистрала, то не лишним будет добавить дополнительный ограничитель
|
|||
|
--dpi-desync-fooling, чтобы не сломать сайты на более коротких дистанциях.
|
|||
|
md5sig наиболее совместим, но работатет только на linux серверах.
|
|||
|
badseq может работать только на https и не работать на http.
|
|||
|
Чтобы выяснить какие дополнительные ограничители работают, смотрите результат теста аналогичных стратегий без TTL
|
|||
|
с каждым из этих ограничителей.
|
|||
|
|
|||
|
При использовании autottl следует протестировать как можно больше разных доменов. Эта техника
|
|||
|
может на одних провайдерах работать стабильно, на других потребуется выяснить при каких параметрах
|
|||
|
она стабильна, на третьих полный хаос, и проще отказаться.
|
|||
|
|
|||
|
10) Протестируйте найденные стратегии на winws. winws следует брать из binaries/win64/zapret-winws.
|
|||
|
|
|||
|
11) Обеспечьте удобную загрузку обхода блокировок.
|
|||
|
В binaries/win64/zapret-winws есть командные файлы task_*, предназначенные для управления задачами планировщика.
|
|||
|
Там следует поменять содержимое переменной WINWS1 на свою стратегию.
|
|||
|
Если вы не можете обьединить несколько стратегий для разных протоколов в одну, дублируйте код в каждом из cmd
|
|||
|
для поддержки нескольких задач : winws1,winws2,winws3.
|
|||
|
После создания задач запустите их. Проверьте, что обход встает после перезагрузки windows.
|
|||
|
|
|||
|
12) Если ломаются отдельные незаблокированные ресурсы, используйте хост-листы.
|
|||
|
Где они будут находиться - решайте сами. Пути прописываются не в формате windows, а формате cygwin.
|
|||
|
Например, /cygdrive/c/Users/vasya/zapret.
|
|||
|
Если в путях присутствуют национальные символы, кодировку нужно использовать OEM. Для русского языка это 866.
|
|||
|
Пути с пробелами нужно брать в кавычки.
|
|||
|
Параметры управления хост-листами точно такие же, как в *nix.
|
|||
|
|
|||
|
Это минимальная инструкция, чтобы соориентироваться с чего начать. Однако, это - не панацея.
|
|||
|
В некоторых случаях вы не обойдетесь без знаний и основного "толмуда".
|
|||
|
Подробности и полное техническое описание расписаны в readme.txt
|