install_bin.sh : bin auto installer

This commit is contained in:
bolvan 2019-05-02 09:48:37 +03:00
parent f302d1362a
commit 16096b56fa
2 changed files with 47 additions and 27 deletions

30
install_bin.sh Executable file
View 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

View File

@ -130,10 +130,10 @@ tpws - это transparent proxy.
Есть исключения : split-pos заменяет split-http-req. hostdot и hosttab взаимоисключающи.
Провайдеры
----------
Поскольку ситуация с блокировками на отдельных провайдерах может меняться, информация может устаревать. Она дана больше для примера, чем как прямое руководство.
Автор не занимается мониторингом и оперативным обновлением этой информации.
----------
Поскольку ситуация с блокировками на отдельных провайдерах может меняться, информация может устаревать. Она дана больше для примера, чем как прямое руководство.
Автор не занимается мониторингом и оперативным обновлением этой информации.
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 адресами.
Домру перехватывает 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 подходят
ТКТ был куплен ростелекомом, используется фильтрация ростелекома.
@ -213,14 +213,14 @@ get_reestr.sh может использовать мультипоточный
В обоих случаях слишком частая запись может убить флэшку, но если это произойдет с внутренней
флэш памятью, то вы просто убьете роутер.
Принудительное обновление ipset выполняет скрипт ipset/create_ipset.sh.
Список РКН уже достиг внушительных размеров в сотни тысяч IP адресов. Поэтому для оптимизации ipset
применяется утилита ip2net. Она берет список отдельных IP адресов и пытается в нем найти подсети максимального размера (от /22 до /30),
в которых заблокировано более 3/4 адресов. ip2net написан на языке C, поскольку операция ресурсоемкая. Иные способы роутер может не потянуть.
Если ip2net скомпилирован или в каталог ip2net скопирован бинарик, то скрипт create_ipset.sh использует ipset типа hash:net, прогоняя список через ip2net.
В противном случае используется ipset типа hash:ip, список загружается как есть.
Соответственно, если вам не нравится ip2net, просто уберите из каталога ip2net бинарик.
Принудительное обновление ipset выполняет скрипт ipset/create_ipset.sh.
Список РКН уже достиг внушительных размеров в сотни тысяч IP адресов. Поэтому для оптимизации ipset
применяется утилита ip2net. Она берет список отдельных IP адресов и пытается в нем найти подсети максимального размера (от /22 до /30),
в которых заблокировано более 3/4 адресов. ip2net написан на языке C, поскольку операция ресурсоемкая. Иные способы роутер может не потянуть.
Если ip2net скомпилирован или в каталог ip2net скопирован бинарик, то скрипт create_ipset.sh использует ipset типа hash:net, прогоняя список через ip2net.
В противном случае используется ipset типа hash:ip, список загружается как есть.
Соответственно, если вам не нравится ip2net, просто уберите из каталога ip2net бинарик.
Можно внести список доменов в ipset/zapret-hosts-user-ipban.txt. Их ip адреса будут помещены
в отдельный ipset "ipban". Он может использоваться для принудительного завертывания всех
соединений на прозрачный proxy "redsocks" или на VPN.
@ -248,18 +248,8 @@ Debian 7 изначально содержит ядро 3.2. Оно не уме
apt-get update
apt-get install libnetfilter-queue-dev ipset curl
Скопировать директорию "zapret" в /opt.
Собрать nfqws :
cd /opt/zapret/nfq
make
Собрать tpws :
cd /opt/zapret/tpws
make
Собрать ip2net :
cd /opt/zapret/ip2net
make
Собрать mdig :
cd /opt/zapret/mdig
make
Запустить /opt/zapret/install_bin.sh. Он сам определит рабочую архитектуру и скопирует куда надо все бинарики.
АЛЬТЕРНАТИВА : зайти в tpws,nfq,ip2net,dig, в каждом выполнить make. Получите динамические бинарики под вашу ось.
Скопировать /opt/zapret/init.d/debian7/zapret в /etc/init.d.
В /etc/init.d/zapret выбрать пераметр "ISP". В зависимости от него будут применены нужные правила.
Там же выбрать параметр SLAVE_ETH, соответствующий названию внутреннего сетевого интерфейса.
@ -339,7 +329,7 @@ opkg install iptables-mod-extra iptables-mod-nfqueue iptables-mod-filter iptable
Скорее всего таковой найдется. Если нет - вам придется собирать самостоятельно.
Скопировать директорию "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.
В /etc/init.d/zapret выбрать пераметр "ISP". В зависимости от него будут применены нужные правила.
/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.
Настройка варианта с redsocks на openwrt описана в https.txt.
Настройка варианта с iproute+wireguard - в wireguard_iproute_openwrt.txt.
Настройка варианта с iproute+wireguard - в wireguard_iproute_openwrt.txt.
Почему стоит вложиться в покупку VPS
------------------------------------