Compare commits

..

5 Commits

Author SHA1 Message Date
MAXIMILI
84e49f2b8b
Merge 7ee5306d06 into db0caf7d58 2024-11-06 17:38:00 +03:00
maximilionus
7ee5306d06 docs: Add header, notes to linux quick, fixes
Fix Markdown notes formatting.

Cleaned useless whitespaces from Windows quickstart.
2024-11-06 17:34:57 +03:00
bol-van
db0caf7d58 install_easy.sh: allow to download lists in autohostlist filter mode 2024-11-06 16:18:41 +03:00
bol-van
34c6c5e9ba installer.sh: minor fix 2024-11-06 15:57:21 +03:00
bol-van
868d115c5d uninstall_easy: offer to remove deps in openwrt 2024-11-06 13:19:55 +03:00
6 changed files with 55 additions and 31 deletions

View File

@ -682,6 +682,20 @@ check_prerequisites_linux()
fi
}
removable_pkgs_openwrt()
{
PKGS="iptables-mod-extra iptables-mod-nfqueue iptables-mod-filter iptables-mod-ipopt iptables-mod-conntrack-extra ip6tables-mod-nat ip6tables-extra kmod-nft-queue gzip coreutils-sort coreutils-sleep curl"
}
remove_extra_pkgs_openwrt()
{
local PKGS
echo \* remove dependencies
removable_pkgs_openwrt
echo these packages may have been installed by install_easy.sh : $PKGS
ask_yes_no N "do you want to remove them" && opkg remove --autoremove $PKGS
}
check_prerequisites_openwrt()
{
echo \* checking prerequisites

View File

@ -359,3 +359,7 @@ blockcheck: do not require root if SKIP_PKTWS=1
v68:
readme.md : move russian version to markdown
nfqws,tpws: use alternate $ sign for $<config_file>
repo: binaries removed from repo. git actions binaries build in releases.
uninstall_easy.sh: offer to remove dependencies in openwrt
install_easy.sh: allow to download lists in autohostlist filter mode

View File

@ -1,4 +1,6 @@
> [!CAUTION]
# Быстрая настройка Linux/OpenWrt
> [!CAUTION]
> Не пишите в issue вопросы типа "как скопировать файл", "как скачать", "как
> запустить", ... То есть все , что касается базовых навыков обращения с ОС
> linux. Эти вопросы будут закрывать сразу. Если у вас подобные вопросы
@ -30,30 +32,31 @@
этой системе, если openwrt - обойти блокировки для подключенных устройств. Это
наиболее распространенный случай.
## Настройка
1. Чтобы процедура установки сработала в штатном режиме на openwrt, нужно
рассчитывать на свободное место около 1-2 Mb для установки самого zapret и
необходимых дополнительных пакетов. Если места мало и нет возможности его
увеличить за счет `extroot`, возможно придется отказаться от варианта
простой установки и прикручивать в ручном режиме без имеющихся скриптов
запуска. Можно использовать
[облегченный `tpws` вариант](../init.d/openwrt-minimal), либо попробовать
засунуть требуемые zapret дополнительные пакеты в сжатый образ `squashfs` с
помощью `image builder` и перешить этим вариантом роутер.
2. Скачайте zip архив проекта с github в `/tmp`, распакуйте его там, либо
## Настройка
> [!TIP]
> Чтобы процедура установки сработала в штатном режиме на openwrt, нужно
> рассчитывать на свободное место около 1-2 Mb для установки самого zapret и
> необходимых дополнительных пакетов. Если места мало и нет возможности его
> увеличить за счет `extroot`, возможно придется отказаться от варианта простой
> установки и прикручивать в ручном режиме без имеющихся скриптов запуска.
> Можно использовать [облегченный `tpws` вариант](../init.d/openwrt-minimal),
> либо попробовать засунуть требуемые zapret дополнительные пакеты в сжатый
> образ `squashfs` с помощью `image builder` и перешить этим вариантом роутер.
1. Скачайте zip архив проекта с github в `/tmp`, распакуйте его там, либо
клонируйте проект через:
```sh
$ git clone --depth 1 https://github.com/bol-van/zapret
```
3. Убедитесь, что у вас отключены все средства обхода блокировок, в том числе и
2. Убедитесь, что у вас отключены все средства обхода блокировок, в том числе и
сам zapret. Гарантированно уберет zapret скрипт `uninstall_easy.sh`.
4. Если вы работаете в виртуальной машине, необходимо использовать соединение с
3. Если вы работаете в виртуальной машине, необходимо использовать соединение с
сетью в режиме bridge. NAT **не** подходит.
5. Выполните однократные действия по установке требуемых пакетов в ОС и
4. Выполните однократные действия по установке требуемых пакетов в ОС и
настройке исполняемых файлов правильной архитектуры:
```sh
$ install_bin.sh
@ -64,7 +67,7 @@
> ipv6. Это нужно для установки правильных пакетов в ОС, чтобы не
> устанавливать лишнее.
6. Запустите `blockcheck.sh`. Скрипт вначале проверяет DNS. Если выводятся
5. Запустите `blockcheck.sh`. Скрипт вначале проверяет DNS. Если выводятся
сообщения о подмене адресов, то нужно будет решить проблему с DNS.
`blockcheck.sh` перейдет в этом случае на DoH и будет пытаться получить и
использовать реальные IP адреса. Но если вы не настроите решение этой
@ -116,7 +119,7 @@
вашего DNS сервера на `77.88.8.88:1253` средствами `iptables`/`nftables`. В
`/etc/resolv.conf` нельзя прописать DNS на нестандартном порту.
7. `blockcheck.sh` позволяет выявить рабочую стратегию обхода блокировок По
6. `blockcheck.sh` позволяет выявить рабочую стратегию обхода блокировок По
результатам скрипта нужно понять какой вариант будете использовать : `nfqws`
или `tpws` И запомнить найденные стратегии.
@ -227,11 +230,11 @@
варианте скриптов запуска это делается максимально гибко и независимо друг
от друга.
8. Запустите скрипт облегченной установки - `install_easy.sh` Выберите `nfqws`
7. Запустите скрипт облегченной установки - `install_easy.sh` Выберите `nfqws`
и/или `tpws`, затем согласитесь на редактирование параметров. Откроется
редактор, куда впишите созданную на предыдущем этапе стратегию.
9. На все остальные вопросы `install_easy.sh` отвечайте согласно выводимой
8. На все остальные вопросы `install_easy.sh` отвечайте согласно выводимой
аннотации.

View File

@ -1,7 +1,7 @@
# Windows quick start
# Быстрая настройка Windows
Специально для тех, кто хочет побыстрее начать, но не хочет слишком углубляться в простыню [readme.md](./readme.md).
> [!CAUTION]
> [!CAUTION]
> Как обычно, компьютерная грамотность ложится полностью на вас.
> Вы должны уметь работать с консолью windows и иметь минимальные навыки обращения с командными файлами `bat`, `cmd`.
> Если грамотность отсутствует и возникает куча _"как?"_ на базовых вещах, значит эта программа не для вас.
@ -22,7 +22,7 @@
Будем считать, что у вас есть windows 7 или выше. Задача - обойти блокировки с самой системы.
> [!NOTE]
> [!NOTE]
> Есть решение самое простое, а есть "как положено".
## САМОЕ ПРОСТОЕ РЕШЕНИЕ
@ -30,7 +30,7 @@
_"Совсем ничего не могу, все очень сложно, дайте мне таблетку."_ ©Простой пользователь
1) Скачайте и распакуйте архив https://github.com/bol-van/zapret-win-bundle/archive/refs/heads/master.zip.
2) Запустите `zapret-winws/preset_russia.cmd` от имени администратора. Возможно, заведется сразу.
2) Запустите `zapret-winws/preset_russia.cmd` от имени администратора. Возможно, заведется сразу.
То же самое с ограничителем по автоматически создаваемому хост-листу `preset_russia_autohostlist.cmd`.
Что такое `autohostlist` - читайте [readme.md](./readme.md). Проще говоря, мы обходим только то, что долго и упорно не хочет открываться.
@ -45,7 +45,7 @@ _"Совсем ничего не могу, все очень сложно, да
2) Если у вас Windows 7 x64, читайте [docs/windows.md](./windows.md). Без описанной там подготовки может не работать.
> [!WARNING]
> [!WARNING]
> Для 32-битных систем Windows нет готового полного варианта.
На windows 11 arm64 выполните `arm64/install_arm64.cmd` от имени администратора и перезагрузите компьютер.
@ -80,11 +80,11 @@ win11 поддерживает системные DoH из коробки. Он
Лог скрипта будет сохранен в `blockcheck\blockcheck.log`.
Запомните/перепишите найденные стратегии.
> [!WARNING]
> [!WARNING]
> Следует понимать, что blockcheck проверяет доступность только конкретного домена, который вы вводите в начале.
> Вероятно, все остальные домены блокированы подобным образом, но не факт.
> [!TIP]
> [!TIP]
> В большинстве случаев можно обьединить несколько стратегий в одну универсальную, и это крайне желательно.
Необходимо понимать [как работают стратегии](./readme.md/#nfqws).
@ -116,12 +116,12 @@ badseq может работать только на https и не работа
Пример стандартного фильтра для перехвата http, https, quic : `--wf-tcp=80,443` `--wf-udp=443`
> [!WARNING]
> [!WARNING]
> Фильтр должен быть минимально необходимым. Перехват лишнего трафика приведет только к бессмысленному расходованию ресурсов процессора и замедлению интернета.
Если кратко по мультистратегии, то обычно параметры конструируются так :
```
--filter-udp=443 'параметры для quic' --new
--filter-udp=443 'параметры для quic' --new
--filter-tcp=80,443 'обьединенные параметры для http и https'
```
@ -196,7 +196,7 @@ ipset или хост листом. Читайте основной талмуд
Есть стратегии довольно безобидные, а есть сильно ломающие, которые подходят только для точечного пробития отдельных ресурсов,
когда ничего лучше нет. Хорошая стратегия может сильно ломать из-за плохо подобранных ограничителей для фейков - ttl, fooling.
> [!CAUTION]
> [!CAUTION]
> Это минимальная инструкция, чтобы соориентироваться с чего начать. Однако, это - не панацея.
> В некоторых случаях вы не обойдетесь без знаний и основного "талмуда".

View File

@ -206,12 +206,12 @@ select_mode()
select_getlist()
{
if [ "$MODE_FILTER" = "ipset" -o "$MODE_FILTER" = "hostlist" ]; then
if [ "$MODE_FILTER" = "ipset" -o "$MODE_FILTER" = "hostlist" -o "$MODE_FILTER" = "autohostlist" ]; then
local D=N
[ -n "$GETLIST" ] && D=Y
echo
if ask_yes_no $D "do you want to auto download ip/host list"; then
if [ "$MODE_FILTER" = "hostlist" ] ; then
if [ "$MODE_FILTER" = "hostlist" -o "$MODE_FILTER" = "autohostlist" ] ; then
GETLISTS="get_refilter_domains.sh get_antizapret_domains.sh get_reestr_resolvable_domains.sh get_reestr_hostlist.sh"
GETLIST_DEF="get_antizapret_domains.sh"
else

View File

@ -72,6 +72,9 @@ remove_openwrt()
nft_del_table
restart_openwrt_firewall
crontab_del
remove_extra_pkgs_openwrt
echo
echo to fully remove zapret : rm -r \"$ZAPRET_BASE\"
}
remove_macos()