mirror of
https://github.com/bol-van/zapret.git
synced 2025-04-19 05:22:58 +03:00
install_bin.sh : bin auto installer
This commit is contained in:
parent
f302d1362a
commit
16096b56fa
30
install_bin.sh
Executable file
30
install_bin.sh
Executable file
@ -0,0 +1,30 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
SCRIPT=$(readlink -f $0)
|
||||||
|
EXEDIR=$(dirname $SCRIPT)
|
||||||
|
BINDIR=$EXEDIR/binaries
|
||||||
|
|
||||||
|
check_dir()
|
||||||
|
{
|
||||||
|
echo 0.0.0.0 | $BINDIR/$1/ip2net 1>/dev/null 2>/dev/null
|
||||||
|
}
|
||||||
|
ccp()
|
||||||
|
{
|
||||||
|
cp -f $1 $2 && echo "$1" =\> "$2"
|
||||||
|
}
|
||||||
|
|
||||||
|
for arch in aarch64 armhf mips32r1-lsb mips32r1-msb x86_64 x86
|
||||||
|
do
|
||||||
|
if check_dir $arch; then
|
||||||
|
echo $arch is OK
|
||||||
|
echo copying binaries ...
|
||||||
|
ccp $BINDIR/$arch/ip2net $EXEDIR/ip2net
|
||||||
|
ccp $BINDIR/$arch/mdig $EXEDIR/mdig
|
||||||
|
ccp $BINDIR/$arch/nfqws $EXEDIR/nfq
|
||||||
|
ccp $BINDIR/$arch/tpws $EXEDIR/tpws
|
||||||
|
break
|
||||||
|
else
|
||||||
|
echo $arch is NOT OK
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
44
readme.txt
44
readme.txt
@ -130,10 +130,10 @@ tpws - это transparent proxy.
|
|||||||
Есть исключения : split-pos заменяет split-http-req. hostdot и hosttab взаимоисключающи.
|
Есть исключения : split-pos заменяет split-http-req. hostdot и hosttab взаимоисключающи.
|
||||||
|
|
||||||
Провайдеры
|
Провайдеры
|
||||||
----------
|
----------
|
||||||
|
|
||||||
Поскольку ситуация с блокировками на отдельных провайдерах может меняться, информация может устаревать. Она дана больше для примера, чем как прямое руководство.
|
Поскольку ситуация с блокировками на отдельных провайдерах может меняться, информация может устаревать. Она дана больше для примера, чем как прямое руководство.
|
||||||
Автор не занимается мониторингом и оперативным обновлением этой информации.
|
Автор не занимается мониторингом и оперативным обновлением этой информации.
|
||||||
|
|
||||||
mns.ru : нужна замена window size на 3. mns.ru убирает заблокированные домены из выдачи своих DNS серверов. меняем на сторонние. аплинк westcall банит по IP адреса из списка РКН, где присутствует https
|
mns.ru : нужна замена window size на 3. mns.ru убирает заблокированные домены из выдачи своих DNS серверов. меняем на сторонние. аплинк westcall банит по IP адреса из списка РКН, где присутствует https
|
||||||
|
|
||||||
@ -150,7 +150,7 @@ dom.ru : нужно проксирование HTTP сессий через tpws
|
|||||||
2 запрашиваемых поддомена : s.kinozal.tv и st.kinozal.tv с разными IP адресами.
|
2 запрашиваемых поддомена : s.kinozal.tv и st.kinozal.tv с разными IP адресами.
|
||||||
Домру перехватывает DNS запросы и всовывает свой лже-ответ. Это обходится через дроп лже-ответа посредством iptables по наличию IP адреса заглушки или через dnscrypt.
|
Домру перехватывает DNS запросы и всовывает свой лже-ответ. Это обходится через дроп лже-ответа посредством iptables по наличию IP адреса заглушки или через dnscrypt.
|
||||||
|
|
||||||
sknt.ru : проверена работа с tpws с параметром "--split-http-req=method". провайдер мониторит каждый пакет, поэтому при использовании nfq 2-й запрос в той же сессии зависает
|
sknt.ru : проверена работа с tpws с параметром "--split-http-req=method". провайдер мониторит каждый пакет, поэтому при использовании nfq 2-й запрос в той же сессии зависает
|
||||||
|
|
||||||
Ростелеком/tkt : помогает разделение http запроса на сегменты, настройки mns.ru подходят
|
Ростелеком/tkt : помогает разделение http запроса на сегменты, настройки mns.ru подходят
|
||||||
ТКТ был куплен ростелекомом, используется фильтрация ростелекома.
|
ТКТ был куплен ростелекомом, используется фильтрация ростелекома.
|
||||||
@ -213,14 +213,14 @@ get_reestr.sh может использовать мультипоточный
|
|||||||
В обоих случаях слишком частая запись может убить флэшку, но если это произойдет с внутренней
|
В обоих случаях слишком частая запись может убить флэшку, но если это произойдет с внутренней
|
||||||
флэш памятью, то вы просто убьете роутер.
|
флэш памятью, то вы просто убьете роутер.
|
||||||
|
|
||||||
Принудительное обновление ipset выполняет скрипт ipset/create_ipset.sh.
|
Принудительное обновление ipset выполняет скрипт ipset/create_ipset.sh.
|
||||||
Список РКН уже достиг внушительных размеров в сотни тысяч IP адресов. Поэтому для оптимизации ipset
|
Список РКН уже достиг внушительных размеров в сотни тысяч IP адресов. Поэтому для оптимизации ipset
|
||||||
применяется утилита ip2net. Она берет список отдельных IP адресов и пытается в нем найти подсети максимального размера (от /22 до /30),
|
применяется утилита ip2net. Она берет список отдельных IP адресов и пытается в нем найти подсети максимального размера (от /22 до /30),
|
||||||
в которых заблокировано более 3/4 адресов. ip2net написан на языке C, поскольку операция ресурсоемкая. Иные способы роутер может не потянуть.
|
в которых заблокировано более 3/4 адресов. ip2net написан на языке C, поскольку операция ресурсоемкая. Иные способы роутер может не потянуть.
|
||||||
Если ip2net скомпилирован или в каталог ip2net скопирован бинарик, то скрипт create_ipset.sh использует ipset типа hash:net, прогоняя список через ip2net.
|
Если ip2net скомпилирован или в каталог ip2net скопирован бинарик, то скрипт create_ipset.sh использует ipset типа hash:net, прогоняя список через ip2net.
|
||||||
В противном случае используется ipset типа hash:ip, список загружается как есть.
|
В противном случае используется ipset типа hash:ip, список загружается как есть.
|
||||||
Соответственно, если вам не нравится ip2net, просто уберите из каталога ip2net бинарик.
|
Соответственно, если вам не нравится ip2net, просто уберите из каталога ip2net бинарик.
|
||||||
|
|
||||||
Можно внести список доменов в ipset/zapret-hosts-user-ipban.txt. Их ip адреса будут помещены
|
Можно внести список доменов в ipset/zapret-hosts-user-ipban.txt. Их ip адреса будут помещены
|
||||||
в отдельный ipset "ipban". Он может использоваться для принудительного завертывания всех
|
в отдельный ipset "ipban". Он может использоваться для принудительного завертывания всех
|
||||||
соединений на прозрачный proxy "redsocks" или на VPN.
|
соединений на прозрачный proxy "redsocks" или на VPN.
|
||||||
@ -248,18 +248,8 @@ Debian 7 изначально содержит ядро 3.2. Оно не уме
|
|||||||
apt-get update
|
apt-get update
|
||||||
apt-get install libnetfilter-queue-dev ipset curl
|
apt-get install libnetfilter-queue-dev ipset curl
|
||||||
Скопировать директорию "zapret" в /opt.
|
Скопировать директорию "zapret" в /opt.
|
||||||
Собрать nfqws :
|
Запустить /opt/zapret/install_bin.sh. Он сам определит рабочую архитектуру и скопирует куда надо все бинарики.
|
||||||
cd /opt/zapret/nfq
|
АЛЬТЕРНАТИВА : зайти в tpws,nfq,ip2net,dig, в каждом выполнить make. Получите динамические бинарики под вашу ось.
|
||||||
make
|
|
||||||
Собрать tpws :
|
|
||||||
cd /opt/zapret/tpws
|
|
||||||
make
|
|
||||||
Собрать ip2net :
|
|
||||||
cd /opt/zapret/ip2net
|
|
||||||
make
|
|
||||||
Собрать mdig :
|
|
||||||
cd /opt/zapret/mdig
|
|
||||||
make
|
|
||||||
Скопировать /opt/zapret/init.d/debian7/zapret в /etc/init.d.
|
Скопировать /opt/zapret/init.d/debian7/zapret в /etc/init.d.
|
||||||
В /etc/init.d/zapret выбрать пераметр "ISP". В зависимости от него будут применены нужные правила.
|
В /etc/init.d/zapret выбрать пераметр "ISP". В зависимости от него будут применены нужные правила.
|
||||||
Там же выбрать параметр SLAVE_ETH, соответствующий названию внутреннего сетевого интерфейса.
|
Там же выбрать параметр SLAVE_ETH, соответствующий названию внутреннего сетевого интерфейса.
|
||||||
@ -339,7 +329,7 @@ opkg install iptables-mod-extra iptables-mod-nfqueue iptables-mod-filter iptable
|
|||||||
Скорее всего таковой найдется. Если нет - вам придется собирать самостоятельно.
|
Скорее всего таковой найдется. Если нет - вам придется собирать самостоятельно.
|
||||||
|
|
||||||
Скопировать директорию "zapret" в /opt на роутер.
|
Скопировать директорию "zapret" в /opt на роутер.
|
||||||
Скопировать работающий бинарик nfqws в /opt/zapret/nfq, tpws в /opt/zapret/tpws, ip2net в /opt/zapret/ip2net, mdig в /opt/zapret/mdig.
|
Запустить /opt/zapret/install_bin.sh. Он сам определит рабочую архитектуру и скопирует куда надо все бинарики.
|
||||||
Скопировать /opt/zapret/init.d/zapret в /etc/init.d.
|
Скопировать /opt/zapret/init.d/zapret в /etc/init.d.
|
||||||
В /etc/init.d/zapret выбрать пераметр "ISP". В зависимости от него будут применены нужные правила.
|
В /etc/init.d/zapret выбрать пераметр "ISP". В зависимости от него будут применены нужные правила.
|
||||||
/etc/init.d/zapret enable
|
/etc/init.d/zapret enable
|
||||||
@ -358,7 +348,7 @@ opkg install iptables-mod-extra iptables-mod-nfqueue iptables-mod-filter iptable
|
|||||||
Приходится перенаправлять трафик через сторонний хост.
|
Приходится перенаправлять трафик через сторонний хост.
|
||||||
Предлагается использовать прозрачный редирект через socks5 посредством iptables+redsocks, либо iptables+iproute+vpn.
|
Предлагается использовать прозрачный редирект через socks5 посредством iptables+redsocks, либо iptables+iproute+vpn.
|
||||||
Настройка варианта с redsocks на openwrt описана в https.txt.
|
Настройка варианта с redsocks на openwrt описана в https.txt.
|
||||||
Настройка варианта с iproute+wireguard - в wireguard_iproute_openwrt.txt.
|
Настройка варианта с iproute+wireguard - в wireguard_iproute_openwrt.txt.
|
||||||
|
|
||||||
Почему стоит вложиться в покупку VPS
|
Почему стоит вложиться в покупку VPS
|
||||||
------------------------------------
|
------------------------------------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user