Skip to content

Mr-Precise/liberty-pre

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

176 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

liberty-pre - zapret Launcher (DPI bypass)

Read in English language

Что это?

Реализация лаунчера для winws.exe или nfqws (инструмента для обхода DPI) на языке C#, с поддержкой профилей.
Локально работающий инструмент для восстановления свободного обмена информацией и открытого доступа к YouTube, Discord, и т. д.
В настоящее время находится в разработке.

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

Как работает?

При запуске программа делает все необходимые для правильной работы проверки, наличие существующего процесса, язык интерфейса и ОС.
Читает указанный конфигурационный файл (профиль) с аргументами запуска, затем запускает winws.exe с правами администратора в свёрнутом окне. Если мы на Linux, ещё проверяем наличие sudo, запрашиваем пароль и запускается nfqws.
По умолчанию читается конфигурация (профиль) default.cfg
При первом запуске программа сама автоматически создаст нужные ярлыки с вариантами профилей возле себя.
Чтобы запустить с пользовательской конфигурацией, запускайте liberty-pre с аргументом -c config_name.cfg
К примеру, создайте ярлык на liberty-pre.exe с аргументом liberty-pre.exe -c discord.cfg чтобы использовать только для Discord.

Локализация

Программа автоматически определяет язык ОС:

  • Если язык системы русский, то все сообщения выводятся на русском языке.
  • Для любого другого системного языка сообщения выводятся только на английском языке.

Совместимость с ОС

Полная поддержка Windows:

  • Windows 8.1 - 11 64bit
  • Windows 11 24H2 ARM64 с включенным testsigning bcdedit /set {current} testsigning on
  • отдельная сборка под устаревшую Windows 7 SP1 64bit (build 7601) и WMF 5.1 (PowerShell 5.1)

Поддержка Linux / Mono (в разработке):

  • *ubuntu 20.04+ amd64 и aarch64
  • Debian 11+ amd64 и aarch64
  • актуальный Arch / Manjaro

Зачем?

Удобно и почему нет.
Просто альтернативная реализация.

Как использовать?

Скачать последний релиз, распаковать, запустить, ярлыки на остальные профили создадутся автоматически.
Перебирайте / переключайте с задержкой профили до тех пор, пока не заработают необходимые сайты.
Если провайдер перехватывает или подменяет DNS запросы - используйте шифрованный DNS (DoT/DoH).

  • Ярлык с именем liberty-pre - STOP останавливает процесс и завершает работу драйвера WinDivert.
  • Ярлык с именем liberty-pre SWITCH - ipset mode предназначен для переключения ipset файла. Агрумент командной строки --ipset
    У этого переключателя ipset есть два состояния: полный (с валидным списком сетей) и заглушка (IP из диапазона TEST-NET-3).
  • Ярлык с именем liberty-pre SWITCH - Extended Ports (отдельно TCP и UDP) предназначен для переключения расширенного режима фильтрации портов (1024-65535), в осномном для игр.
  • Ярлык с именем liberty-pre SWITCH - hidden mode предназначен для переключения невидимого / скрытого режима работы.
  • Ярлык с именем liberty-pre SWITCH - hostlist-auto предназначен для переключения режима autohostlist (автоматическая разблокировка сайтов). Работает медленно, но в редких случаях может помочь.

Linux (для продвинутых): установить mono, запускать liberty-pre-linux.sh
Linux: запустите скрипт liberty-pre-linux.sh с аргументом --install, чтобы установить файл .desktop для интеграции в меню приложений:

cd path/to/liberty-pre/
./liberty-pre-linux.sh --install

Осторожно:

💯 Исполняемые файлы которые находятся в каталоге bin, к примеру winws.exe взяты из оригинального репозитория github.com/bol-van/zapret. Из других мест / авторов использовать небезопасно.

⚠️ Почему антивирус может реагировать на winws (WinDivert)?
Для своей работы под Windows winws.exe использует драйвер WinDivert. Этот драйвер позволяет перехватывать и модифицировать сетевой трафик, что необходимо для обхода блокировок, поскольку в Windows нет встроенных аналогов iptables/nftables как в Linux.

WinDivert - это легитимный и подписанный инструмент, но его возможности по вмешательству в сетевой стек также могут использоваться вредоносными программами. Поэтому антивирусы и Защитник Windows часто классифицируют подобные драйверы как инструменты хакеров или потенциально нежелательное ПО.
Это нормально. Сам драйвер не является вирусом. Чтобы компонент из zapret работал без помех, просто добавьте папку с программой в исключения вашего антивируса. Подробности.

Как скомпилировать?

Установить git:
Ubuntu/Debian: sudo apt install git / Windows: git-scm.com/downloads/win
Рекурсивно склонировать исходный код:
git clone --recursive https://github.com/Mr-Precise/liberty-pre
Использовать Visual Studio, Visual Studio Code + C# дополнение или Monodevelop/Dotdevelop для сборки
Требования: .net framework (msbuild) или Mono (xbuild), если в Linux/macOS.
Для успешной сборки и использования на Linux требуется ubuntu 20.04/22.04 LTS и mono nightly (6.13) версии.
Можете изучить .github/workflows/build.yml
Пример:

sudo gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/mono-official-archive-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/mono-official-archive-keyring.gpg] https://download.mono-project.com/repo/ubuntu nightly-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-nightly.list
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/mono-official-archive-keyring.gpg] https://download.mono-project.com/repo/ubuntu preview-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-preview.list
sudo apt install mono-complete nuget git
git clone --recursive https://github.com/Mr-Precise/liberty-pre
cd liberty-pre
nuget restore
xbuild /p:Configuration=Release liberty-pre.sln

Вклад

Этот проект носит любительский характер и в первую очередь ориентирован на простоту и кросс-платформенность.

Если вы хотите внести изменения или улучшения - это всегда приветствуется!
Пожалуйста, по возможности сохраняйте совместимость с .NET Framework 4.5 / Mono (C# 7.3-8), а также старайтесь избегать излишнего усложнения кода.
В случае сомнений лучше обсудить изменения заранее.

Использованы компоненты из репозиториев и благодарности:

About

liberty-pre zapret Launcher (DPI bypass)

Resources

License

Stars

10 stars

Watchers

0 watching

Forks

Contributors