LINUX.ORG.RU

Обход блокировок провайдера.

 


3

5

Добрый день уважаемые знатоки Linux

Зарание прошу прошения если задаю элементарные вопросы или же где нибудь обсуждались такие же вопросы. Я новичок в мире Linux и пытаюсь со всех сил.

Вопрос таков как в Debian 9 реализовать отправку HTTPS-запрос двумя пакетами на подобие программы от ValdikSS/GoodbyeDPI для Windows https://github.com/ValdikSS/GoodbyeDPI у ValdikSS разные методы обхода но мне нужно только один метод так как этим методом можно обойти моего провайдера.

Если сервер пришлет TCP Window Size = 2 в SYN/ACK-пакете (или мы его изменим на это значение на стороне клиента), то браузер отправит HTTP-запрос двумя пакетами:

Пакет 1:
GE
Пакет 2:
T / HTTP/1.1 
https://habr.com/post/335436/



Последнее исправление: Deleted (всего исправлений: 1)

FYI


ValdikSS 26 декабря 2018 писал
В конце января ожидается версия программы для Linux/macOS.


Кстати, какой провайдер?

athost ★★★★★
()
Последнее исправление: athost (всего исправлений: 1)
Ответ на: комментарий от athost

DPI

Я живу в Узбекистане провайдер Uztelecom это главный провайдер внешнего канала они блокируют всех и операторов сотовой связи и отдельных мелких провайдеров. И по новостным каналам говорят что они не виноваты google Facebook и YouTube недоступны из-за смены криптографического ключа, который служит защитой для системы доменных имен (DNS) https://upl.uz/obshestvo/9491-news.html

marats
() автор топика

Методы обхода DPI хорошо показывает blockcheck. Полным аналогом GoodByeDPI на linux является zapret от bolvan. Я в свое время даже смог заставить его работать на arm архитектуре. Для быстрой фрагментации пакетов нужна поддержка NFQUEUE в ядре.

Вам нужно почитать про типы DPI, т.к. фрагментация пакетов не поможет при фильтрации HTTPS - там либо пассивный DPI, который обходится отсевом заглушек (привет РТК), либо просто бан по IP. Про DPI c HTTPS SNI пока ничего сказать не могу - нет данных ещё.

Mike_RM
()
Ответ на: комментарий от Mike_RM

Результат программы blockcheck выдает мне: Ваш провайдер полностью блокирует доступ к HTTPS- сайтам из реестра. А программу под Windows GoodByeDPI я запустил с ключем -e 40 а это значит на сколько я понял фрагментация HTTPS (set HTTPS fragmentation to value) и сайты заблокированные начали открываться

Насчет аналога в linux zapret от bolvan я не смог запустить её на openwrt, Если у кого нибудь есть подробная инструкция для новичков по запуску на openwrt или же на Debian 9 фрагментация HTTPS можете ли поделиться?

marats
() автор топика
Ответ на: комментарий от marats

Покажите полный выхлоп blockcheck. Я выше оставлял инструкцию для установки на кинетики - на openwrt ставится аналогично. Расскажите подробней как ставили и что не получилось.

Mike_RM
()
Ответ на: комментарий от Mike_RM

Проверка работоспособности IPv6: IPv6 недоступен. [O] Тестируем IPv4 DNS Через системный DNS: ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100'] Через Google DNS: ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100'] Через Google API: ['104.20.134.45', '104.20.135.45', '104.24.10.70', '104.24.11.70', '184.173.136.161', '195.8.215.136', '195.82.146.214', '5.178.68.100'] Несуществующий DNS не вернул адресов (это не ошибка) [✓] DNS-записи не подменяются [✓] DNS не перенаправляется

[O] Тестируем HTTP Открываем http://pbooru.com/ [✓] Сайт открывается Открываем http://furry.booru.org/index.php?page=post&s=view&id=111173 [✓] Сайт открывается Открываем http://rutracker.org/forum/index.php [✓] Сайт открывается Открываем http://pbooru.com/index.php?page=post&s=view&id=303026 [✓] Сайт открывается Открываем http://a.putinhuylo.com/ [✓] Сайт открывается Открываем http://furry.booru.org/ [✓] Сайт открывается

[O] Тестируем HTTPS Открываем https://lolibooru.moe/ [✓] Сайт открывается Открываем https://e621.net/ [✓] Сайт открывается Открываем https://rutracker.org/forum/index.php [☠] Сайт не открывается Открываем https://www.dailymotion.com/ [☠] Сайт не открывается

[!] Результат: [⚠] Ваш провайдер полностью блокирует доступ к HTTPS-сайтам из реестра.

marats
() автор топика
Ответ на: комментарий от Mike_RM

на счет openwrt не помню что я сделал не так я сегодня вечером по вашей ссылки попробую на openwrt запустить если не получиться отпишусь.

marats
() автор топика
Ответ на: комментарий от marats

Есть подозрения что фильтрация HTTPS сделана также криво как и у РТК, т.е. обходится одним правилом iptables для отсева заглушек. Но в любом случае для openwrt попробуйте сначала по инструкции выше поставить, конкретные настройки для вашего случая я вам подскажу. Только убедитесь сначала что NFQUEUE поддерживается ядром:

~ # cat /proc/net/ip_tables_targets | grep NFQUEUE
NFQUEUE
NFQUEUE
NFQUEUE

Mike_RM
()
Ответ на: комментарий от Mike_RM

Вспомнил почему у меня не получилось памяти не хватило на роутере я на роутер устанавливал Midnight Comander может из за него и забросил а отельного USB порта на роутере нет, да и прошивки для моего роутера не было, прошивку подобрал по производителю чипа broadcom от другого производителя. Но суть не в этом.

Попробую что выйдет. Спасибо вам за помощь.

marats
() автор топика
Ответ на: комментарий от marats

Так ни linux проще чем на openwrt antizapret заводится. На роутере просто удобней - на клиентов ничего ставить не надо.

Mike_RM
()
Ответ на: комментарий от Mike_RM

пробовал antizapret у меня не работает в частности youtube, пробовал proxy автонастройку https://antizapret.prostovpn.org/proxy.pac результат 0 не знаю как реализовал vladikss GDPI. При запуске программы с ключем goodbyedpi.exe -e 40 (set HTTPS fragmentation) все заблокированные сайты начинают работать. Поэтому открыл эту тему можно ли как нибудь в линуксе реализовать как у vldikss HTTPS fragmentation может бы потом можно былобы перенести и в openwrt. И еще вопрос а программа от bol-van точно ли полный аналог? По описанию она не умеет работать с HTTPS.

marats
() автор топика
Ответ на: комментарий от Jopich1

протестировал shadowsocks помог но как то не охота гонять весь трафик через proxy, а отдельно нужные сайты гонять через прокси пока способностей не хватит.

marats
() автор топика
Ответ на: комментарий от Mike_RM

А есть ли где нибудь пошаговая инструкция для программы zapret? Или у меня кривые руки или что то я недопонимаю. Завести на lmde3 я не смог.

marats
() автор топика
Ответ на: комментарий от marats

Ну там есть такая настройка. Mode->PAC, PAC -> Local PAC, Edit Local PAC ( заносишь нужные сайты )

Jopich1
()
Последнее исправление: Jopich1 (всего исправлений: 1)
Ответ на: комментарий от marats

Пошаговая инструкция для ubuntu (systemd)

sudo apt install libnetfilter-queue-dev ipset curl lsb-core
curl -L https://github.com/bol-van/zapret/archive/master.zip -o zapret.zip
unzip ./zapret.zip -d /opt
mv /opt/zapret-master /opt/zapret
cd /opt/zapret/nfq
make
cd ./../tpws
make

В файл /opt/zapret/ipset/zapret-hosts-user.txt заносим перечень сайтов для которых нужно обойти блокировку.

/opt/zapret/ipset/get_user.sh
sudo cp /opt/zapret/init.d/debian7/zapret /etc/init.d/zapret
В файл /etc/init.d/zapret вносим следующие правки: После
echo "Adding iptables rule"
	case "${ISP}" in
	    mns)
В двух строках меняем -p tcp --sport 80 на -m multiport -p tcp --sports 80,443 и ниже после
echo "Deleting iptables rule"
	case "${ISP}" in
	    mns|rt)
меняем -p tcp --sport 80 на -m multiport -p tcp --sports 80,443

Регистрируем юнит в systemd:

sudo /usr/lib/lsb/install_initd zapret
Запускаем:
sudo sytemctl start zapret
Вроде всё. Служба автоматом будет запускаться при перезагрузке.

Mike_RM
()
Ответ на: Пошаговая инструкция для ubuntu (systemd) от Mike_RM

Почти неделю вожусь не получается, перепробовал все дистрибутивы. Хотел разобратся сам но не смог

Сейчас на виртуалке запустил Xubuntu 16.04 x64

не регистрирует юнит в systemd

update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults insserv: script zapret is not an executable regular file, skipped!

marats
() автор топика

На самом деле, это пздц. Вместо того чтобы нахрен убирать блокировку какую-то херь придумывают.

anonymous
()
Ответ на: комментарий от Mike_RM

Mike_RM огромное спасибо вам за помощь после моего недельного мучения все заработало, про атрибуты даже не додумался =).

marats
() автор топика
Ответ на: комментарий от anonymous

еще какой пздц. я провайдера нашего уже неделю такими словами благодарю даже и не представляете особенно после нескольких ночей без сна когда не получалось заставить работать да еще без каких либо знаний в линуксе.

marats
() автор топика
Ответ на: комментарий от marats

Можно Ваш телеграм аккаунт? хотел кое что спросить, на крайняк ВК)

Daniel_M
()
Ответ на: комментарий от marats

если упомянули IPv6 - можно попробовать туннели до какого-нибудь hurricane electric (в некоторых дистрибутивах даже пакет есть - miredo). поднимается туннель и через него идёт весь траффик. если ваш провайдер достаточно туп (а это так, судя по цитате про ключи DNS), то может прокатить. правда, будет не очень быстро.

Iron_Bug ★★★★★
()
11 апреля 2019 г.
Ответ на: комментарий от midnight

Может он сам снёс? (cast @ValdikSS)

Его репы есть тут (наверное, может быть не самое последнее состояние).

xaizek ★★★★★
()
Ответ на: комментарий от midnight

Ну всё, повесил шпагу д'Артаньян😞 Надеюсь у него всё хорошо. За архивы гитхаба отдельное спасибо - забрал себе blockcheck.

Mike_RM
()
Ответ на: комментарий от ValdikSS

Спасибо. Бан видимо автоматом прилетел, а не от человека.

EXL ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.