diff --git a/docs/manual.md b/docs/manual.md index 640b0c6..8c831dc 100644 --- a/docs/manual.md +++ b/docs/manual.md @@ -261,7 +261,10 @@ - [Принципы интеграции с openrc](#принципы-интеграции-с-openrc) - [Шпаргалка openrc](#шпаргалка-openrc) - [Альтернативная установка на systemd](#альтернативная-установка-на-systemd) - - [Другие прошивки](#другие-прошивки) +- [Другие прошивки](#другие-прошивки) +- [Особенности Windows](#особенности-windows) + - [Windows 7](#windows-7) + - [Windows Server](#windows-server) # Введение @@ -5238,7 +5241,7 @@ rc-update add zapret2 Этот способ не поднимает правила ip/nf tables - вам это придется сделать отдельно, как и написать сами правила. Правила нужно прописать куда-то, чтобы они поднимались после старта системы. Например, можно сделать отдельный systemd unit с запуском шелл скрипта или `nft -f /path/to/file.nft`. -## Другие прошивки +# Другие прошивки Для статических бинарников не имеет значения на чем они запущены: PC, android, приставка, роутер, любой другой девайс. Подойдет любая прошивка, дистрибутив Linux. Статические бинарники запустятся на всем. @@ -5300,3 +5303,53 @@ OpenWrt является одной из немногих относительн * в репозитории есть все модули iptables, их можно доустановить через opkg * в репозитории есть огромное количество стандартных программ и дополнительного софта * наличие SDK, позволяющего собрать недостающее + + +# Особенности Windows + +zapret изначально был написан для unix. Для облегчения портирования под Windows используется обертка cygwin, эмулирующая unix среду. +Если winws2 запускается отдельно - требуется cygwin1.dll в той же директории, если в составе cygwin среды - cygwin1.dll не должно быть в той же директории, +иначе не запустится ! + +cygwin эмулирует общее пространство PID процессов и сигналы только в пределах одного cygwin1.dll ! +Чтобы иметь возможность послать сигнал, нужно, чтобы winws2 и программа для посылки сигнала (kill, killall) запускались с одним cygwin1.dll. + +Можно использовать отдельно установленную среду cygwin, а можно скачать готовый [zapret-win-bundle](https://github.com/bol-van/zapret-win-bundle), где уже +присутствует минимальный комплект cygwin. cygwin prompt настроен с aliases на запуск blockcheck, blockcheck2, winws, winws2, winws2 со станадртными Lua скриптами, +чтобы не возиться с путями, а сосредоточиться на главном. + +## Windows 7 + +Требования к подписи драйверов windows изменились в 2021 году. +Официальные бесплатные обновления windows 7 закончились в 2020. +После этого несколько лет продолжали идти платные обновления по программе **ESU**. +Именно в этих **ESU** обновлениях находится обновление ядра windows 7, позволяющее загрузить драйвер +_windivert 2.2.2-A_, который идет в поставке zapret. +Поэтому варианты следующие : + +1) Взять `windivert64.sys` и `windivert.dll` версии _2.2.0-C_ или _2.2.0-D_ [отсюда](https://reqrypt.org/download) и заменить эти 2 файла. + +2) Взломать **ESU** : +https://hackandpwn.com/windows-7-esu-patching/ +http://www.bifido.net/tweaks-and-scripts/8-extended-security-updates-installer.html +и обновить систему + +3) Использовать готовый патчер-взламыватель ESU - "BypassESU". Его надо искать по названию. + +4) Использовать UpdatePack7R2 от simplix : https://blog.simplix.info +> [!WARNING] +> Но с этим паком есть проблема. Автор из Украины, он очень обиделся на русских. +> Если в панели управления стоит регион RU или BY, появляется неприятный диалог. +> Чтобы эту проблему обойти, можно поставить временно любой другой регион, потом вернуть. +> Так же нет никаких гарантий, что автор не насовал туда какой-то зловредный код. +> Использовать на свой страх и риск. + +Более безопасный вариант - скачать последнюю нормальную довоенную версию : 22.2.10 +https://nnmclub.to/forum/viewtopic.php?t=1530323 +Ее достаточно, чтобы _windivert 2.2.2-A_ заработал на windows 7. + +## Windows Server + +winws2 слинкован с wlanapi.dll, который по умолчанию не установлен в windows server. +Для решения этой проблемы запустите power shell под администратором и выполните команду `Install-WindowsFeature -Name Wireless-Networking`. +После чего перезагрузите систему.