mirror of
https://github.com/bol-van/zapret2.git
synced 2026-03-14 06:13:09 +00:00
update docs
This commit is contained in:
@@ -5110,3 +5110,66 @@ rc-update add zapret2
|
||||
8. Перезапуск : `systemctl restart nfqws2@INSTANCE`
|
||||
|
||||
Этот способ не поднимает правила ip/nf tables - вам это придется сделать отдельно, как и написать сами правила. Правила нужно прописать куда-то, чтобы они поднимались после старта системы. Например, можно сделать отдельный systemd unit с запуском шелл скрипта или `nft -f /path/to/file.nft`.
|
||||
|
||||
## Другие прошивки
|
||||
|
||||
Для статических бинарников не имеет значения на чем они запущены: PC, android, приставка, роутер, любой другой девайс.
|
||||
Подойдет любая прошивка, дистрибутив Linux. Статические бинарники запустятся на всем.
|
||||
Им нужно только ядро с необходимыми опциями сборки или модулями.
|
||||
Но кроме бинарников в проекте используются еще и скрипты, в которых задействуются некоторые
|
||||
стандартные программы.
|
||||
|
||||
Основные причины почему нельзя просто так взять и установить эту систему на что угодно:
|
||||
* отсутствие доступа к девайсу через shell
|
||||
* отсутствие рута
|
||||
* отсутствие раздела r/w для записи и энергонезависимого хранения файлов
|
||||
* отсутствие возможности поставить что-то в автозапуск
|
||||
* отсутствие cron
|
||||
* неотключаемый flow offload или другая проприетарщина в netfilter
|
||||
* недостаток модулей ядра или опций его сборки
|
||||
* недостаток модулей iptables (/usr/lib/iptables/lib*.so)
|
||||
* недостаток стандартных программ (типа ipset, curl) или их кастрированность (облегченная замена)
|
||||
* кастрированный или нестандартный шелл sh
|
||||
|
||||
Если в вашей прошивке есть все необходимое, то вы можете адаптировать zapret под ваш девайс в той или иной степени.
|
||||
|
||||
Пересобрать ядро или модули для него будет скорее всего достаточно трудно.
|
||||
Для этого вам необходимо будет по крайней мере получить исходники вашей прошивки.
|
||||
User mode компоненты могут быть привнесены относительно безболезненно, если есть место куда их записать.
|
||||
Специально для девайсов, имеющих область r/w, существует проект entware.
|
||||
Некоторые прошивки даже имеют возможность его облегченной установки через веб интерфейс.
|
||||
entware содержит репозиторий user-mode компонент, которые устанавливаются в /opt.
|
||||
С их помощью можно компенсировать недостаток ПО основной прошивки, за исключением ядра.
|
||||
|
||||
Можно попытаться использовать [sysv init script](#стартовые-скрипты).
|
||||
В случае ругани на отсутствие каких-то базовых программ, их следует восполнить посредством entware.
|
||||
Перед запуском скрипта путь к дополнительным программам должен быть помещен в PATH.
|
||||
|
||||
Обратите внимание, что entware патчен на предмет замены стандартных путей файлов типа /etc/passwd на /opt/etc/passwd.
|
||||
Статические бинарники zapret собраны без учета этой особенности, поэтому оцпия --user может не работать - юзер ищется в /etc/passwd,
|
||||
который находится на r/o разделе, в том время как adduser добавляет юзеров в /opt/etc/passwd.
|
||||
Поэтому может понадобиться раскомментировать в [config](#файл-config) WS_USER и указать юзера, который есть в /etc/passwd.
|
||||
|
||||
Для keenetic существуют дополнительные важные особенности, без учетка которых zapret будет "слетать" каждые несколько минут или не работать с udp.
|
||||
Существуют готовые сторонние решения по интеграции с keenetic.
|
||||
|
||||
Подробное описание настроек для других прошивок выходит за рамки данного проекта.
|
||||
|
||||
OpenWrt является одной из немногих относительно полноценных linux систем для embedded devices.
|
||||
Она характеризуется следующими вещами, которые и послужили основой выбора именно этой прошивки:
|
||||
* полный root доступ к девайсу через shell. на заводских прошивках чаще всего отсутствует, на многих альтернативных есть
|
||||
* корень r/w. это практически уникальная особенность OpenWrt. заводские и большинство альтернативных прошивок
|
||||
построены на базе squashfs root (r/o), а конфигурация хранится в специально отформатированной области
|
||||
встроенной памяти, называемой nvram. не имеющие r/w корня системы сильно кастрированы. они не имеют
|
||||
возможности доустановки ПО из репозитория без специальных вывертов и заточены в основном
|
||||
на чуть более продвинутого, чем обычно, пользователя и управление имеющимся функционалом через веб интерфейс,
|
||||
но функционал фиксированно ограничен. альтернативные прошивки, как правило, могут монтировать r/w раздел
|
||||
в какую-то область файловой системы, заводские обычно могут монтировать лишь флэшки, подключенные к USB,
|
||||
и не факт, что есть поддержка unix файловых системы. может быть поддержка только fat и ntfs.
|
||||
* возможность выноса корневой файловой системы на внешний носитель (extroot) или создания на нем оверлея (overlay)
|
||||
* наличие менеджера пакетов opkg и репозитория софта
|
||||
* flow offload предсказуемо, стандартно и выборочно управляем, а так же отключаем
|
||||
* в репозитории есть все модули ядра, их можно доустановить через opkg. ядро пересобирать не нужно.
|
||||
* в репозитории есть все модули iptables, их можно доустановить через opkg
|
||||
* в репозитории есть огромное количество стандартных программ и дополнительного софта
|
||||
* наличие SDK, позволяющего собрать недостающее
|
||||
|
||||
Reference in New Issue
Block a user