Ник | Пост | Дата |
---|---|---|
alirx | Здравствуйте! Появилось желание организовать себе устойчивый свободный доступ в интернет и зашифровать сетевую активность от ISP и обойти шейпинг трафика для мобильных устройств. Я изучил способы реализации этой задачи и окончательно запутался в их многообразии, совместимости друг с другом и результатах использования конкретного подхода. Я опишу планируемый use case и изложу возникшие вопросы. Пожалуйста, помогите в этом разобраться и сделать информированный выбор. Use caseСразу скажу, что мои знания на уровне эникейщика, а также с linux и сетями плотного знакомства не имел, только постигаю азы. Прошу указывать на ошибки в моем понимании, буду заполнять пробелы. Изначальный план: трафик от домашних устройств идет на роутер, там выборочно перенаправляется на домашний «сервер» (2 x 2.1 GHz / 3GB RAM), на котором шифруется и отправляется на VPS, откуда идет в интернет. Инструментарий – что выбрать?1) VPN-only Обратил внимание на несколько протоколов, а именно:
2) Wireguard VPN + obfuscation Как я понял, чтобы избежать обнаружения использования WG, его можно пустить через прокси с обфускацией, будь то SS/v2ray (предварительно завернув в TCP с помощью udp2raw) или без TCP через xray. Но сомневаюсь, что такое можно реализовать для подключения клиента на android, плюс WG от этого должен значительно потерять в скорости. И даже если в теории получится все это настроить, то имеет ли смысл подобный конфиг? 3) Proxy
3.1) ShadowSocks (далее SS) 3.2) xray / v2ray 3.3) Trojan GFW И немного оффтопный вопрос: лучше выбирать зарубежных (юридически) хостеров VPS или можно обойтись российскими с серверами в нидерландах/швейцарии? Спасибо, что дочитали до конца! Буду признателен за конструктивные ответы и ссылки на материалы для ознакомления по теме (англ/рус). | 2021-10-28T09:59:21.934Z |
bolvan | Есть еще openconnect. Использует TLS для TCP, DTLS для UDP. UDP отключается при желании | 2021-10-29T07:03:27.684Z |
ValdikSS | На ваш вопрос нельзя однозначно ответить в отрыве от модели угроз. В России не блокируются протоколы VPN или прокси, вы можете использовать любое ПО без дополнительной обфускации, и менее устойчивым тот или иной способ может стать только со временем, при изменении законодательства, тестировании новых методов блокировок, и т.п., что не происходит в одночасье. На данный день нет ограничений по использованию VPN-протоколов, они не блокируются ни у одного провайдера РФ. Все стандартные VPN-протоколы имеют чётко выраженные характерные признаки, по которым их можно классифицировать: как фиксированные порты, так и стандартизированные форматы пакетов передачи служебного трафика. Исключение составляет, пожалуй, OpenVPN, у которого есть шифрование канального трафика (опция Все технологии туннелирования так или иначе строятся на двух принципах:
Через прокси у вас не будет работать ping (протокол ICMP), а голосовая связь VoIP (и другие p2p-программы) может работать плохо или не работать вовсе, из-за невозможности входящих подключений. Тем не менее, для большинства обычных программ функциональности прокси вполне достаточно. Нередко прокси-программы эмулируют VPN-интерфейс для удобства настройки или из-за технических ограничений – не каждая программа поддерживает работу через прокси, а VPN-интерфейс настраивается на уровне операционной системы и не требует ничего от программ. Также у SoftEther есть маскировка под DNS-запросы и туннелирование трафика через протокол ICMP. SoftEther – хороший кандидат на запасной вариант VPN в странах, где периодически бывают неполные отключения интернета, т.к. у него больше шансов установить соединение без дополнительной настройки. Это не VPN, а прокси (shadowsocks), с мультиплатформенной эмуляцией VPN-интерфейса и удобной программой конфигурирования сервера. Технически, любой VPN, прокси и другое сетевое ПО можно обфусцировать или инкапсулировать в дополнительный уровнень, но всё упирается в удобство настройки и кросс-платформенность обфусцирующего/инкапсулирующего ПО. Стандартные протоколы прокси (HTTP/HTTP CONNECT/SOCKS4/SOCKS5) не поддерживают шифрование. После передачи служебных нешифрованных данных после установки соединения, данные через прокси передаются ровно в том виде, как это происходит без прокси. Программы вроде shadowsocks используют собственный протокол передачи данных между клиентом и сервером (с шифрованием), но непосредственно клиент shadowsocks предоставляет socks5-совместимый порт для подключений программ, поддерживающих socks5. Если вы запускаете клиент shadowsocks и, например, браузер, настроив его на socks5-порт shadowsocks-клиента, на одном компьютере, то socks5-трафик не уходит в сеть и не покидает вашего компьютера. Программы, поддерживающие работу через прокси, как правило не совершают DNS-запросов самостоятельно, а отправляют имя домена на прокси-сервер – это поддерживается и в HTTP-прокси, и в Socks5. В этом случае, сам удалённый сервер резолвит домен и устанавливает соединение к нужному IP-адресу. Программы, не поддерживающие работу через прокси, будут резолвить домены через системный (провайдерский) DNS-сервер. Если речь об эмуляции VPN-интерфейса, то не будут работать не-TCP/UDP-протоколы, входящие подключения. Это явно не соответствует действительности – протокол активно поддерживается и на текущий день находится на шаг впереди способов его классификации передовыми системами DPI. V2Ray/V2Fly – крутой и очень гибкий комплекс для создания прокси-конфигураций любой сложности, но его настройка очень нетривиальна из-за сложного конфигурационного файла и не всегда актуальной английской документации. Рекомендую начать с английской версии на сайте Project V · Project V Official, она более-менее полная, хоть и частично устаревшая. Актуальная версия для community-версии V2Ray под названием V2Fly находится на 配置文件格式 | V2Fly.org (только китайский). Это классный протокол с технической точки зрения, но ПО реализует простой туннель на фиксированный IP-адрес и порт, а не работает как прокси-сервер. См. самое начало сообщения – нет однозначного ответа без рассмотрения в контексте модели угроз. Все серверы с технической точки зрения будут работать, т.е. предоставлять вам интернет-связность. | 2021-11-03T11:36:47.379Z |
alirx | Огромное спасибо за столь обстоятельный ответ! | 2021-11-03T14:49:19.652Z |
Petro | В РФ действительно пока нет перманентной блокировки какого-либо VPN или прокси-протокола, блокировки были (есть) лишь точечные, не по протоколам, а пока лишь по IP-адресам и IP-диапазонам отдельных, внесенных в государственный черный список, сервисов. Причем некоторые из этих блокировок де-факто не выполняются (даже провайдерами с государственным DPI aka ТСПУ). Например, прокси-серверы Opera (это проксирование трафика самой компанией Opera называется “VPN”) де-факто не блокируются - мои тесты показали доступность IP-диапазона 77.111.247.0/24 со всех российских мобильных операторов “большой четверки” и московских провайдеров Онлайм (Ростелеком), Ринет, МГТС, 2.ком, Билайн. Подозреваю, что подобная политика может прослеживаться и с другими “VPN-сервисами”, внесенными в государственный черный список в РФ. Теперь по способам обхода блокировок. В РФ по-прежнему без проблем работают самые простейшие способы (такие, как Антизапрет с использованием PAC или OVPN), не требующие от неискушенного и непритязательного пользователя особых технических познаний. Свою функцию Антизапрет спокойно выполняет, что самое главное. Standalone-клиент прокси-серверов Opera тоже прекрасно работает и позволяет проксировать весь браузерный (и не только) трафик, причем эти сервера пропускают трафик на гораздо более высокой скорости, чем экономный Антизапрет - к примеру, без проблем проигрывается 1080p и даже 4k потоковое видео. Видимо, китайские владельцы Opera не скупятся на пропускную способность интернет-каналов своих прокси-серверов в Европе. Это самые простые и дешевые (сиречь - бесплатные) решения, не требующие аренды и настройки своего личного сервера. Для простых задач (получение доступа к ресурсам из черного списка РФ) прекрасно подходят. Во всяком случае, пока до них не дотянулись руки “регулирующего” ведомства РКН. А вот VPN-сервис от Cloudflare (WARP) с недавних пор (минувшие выборы в гос. думу РФ) как минимум на некоторых мобильных операторах РФ периодически работал с перебоями. Я не касался их официального приложения для Android\iOS, я имею в виду обычный клиент Wireguard с их конфигом, который я тестировал - проблемы были. Когда проблем с подключением не было, данный VPN-сервис впечатлял низким пингом и очень высокими скоростями (что неудивительно, все-таки это крупнейший CDN-провайдер в мире, физически присутствующий в нескольких городах России, включая, естественно, Москву). Опять-таки, свою задачу этот сервис вполне решал. Только следует помнить, что такое использование сервисов Opera (неофициальный standalone-клиент) и Cloudflare Warp (конфиги для Wireguard-клиента) является нарушением лицензионного соглашения с этими компаниями, если кого-то это, конечно, волнует. И, поскольку все вышеперечисленные сервисы (включая, конечно, и Антизапрет) являются крупными и достаточно популярными в РФ, нельзя исключать, что рано или поздно руки российского регулятора могут до них добраться, а будут ли они эффективно бороться со своей блокировкой, вопрос. Поэтому, конечно, предпочтительнее собственные решения. И если говорить о самом простом и эффективном, то это VPN на протоколе Wireguard - он быстр и прост в установке и настройке. Для личного использования он очень хорош, для корпоративного, конечно, не подходит по ряду причин. На сегодняшний день есть клиенты под все популярные платформы, кроме того, энергопотребление (на мобильных устройствах это важно), по моим тестам, ниже, чем у самого популярного протокола - OVPN. Зато OVPN может работать по TCP-протоколу и его можно без заморочек проксировать. Прокси-сервер Shadowsocks тоже выглядит хорошим вариантом для личного пользования. Клиенты есть под практически любые платформы. Протокол активно развивается. И, если говорить о наиболее универсальном решении, то это обфусцированный shadowsocks. Это хорошее решение, позволяющее маскировать трафик под https (а при использовании порт-шаринга с веб-сервером или проксировании в Cloudflare есть и защита от активных проб). Если нужен именно “швейцарский нож” - и проксирование всего трафика, и личный сервер, и обход блокировок, и противодействие мобильным операторам, в большей степени склонным нарушать сетевую нейтральность и бороться с тем, что они любят называть “воровством трафика” (использование недорогого тарифного плана для смартфонов в модемах и роутерах) - то это решение идеально. И при желании внутрь такого прокси можно пропустить трафик VPN, в случае, если его надо “скрыть” от провайдера. Выглядит параноидально, но - главное - это работает (и будет работать не только в РФ, для которой это все избыточные решения, но и, по всей видимости, в более ограниченных по интернету странах, таких как, например, государства Средней Азии. SoftEther VPN тоже хорошее решение, все никак не дойдут руки попробовать его. | 2021-11-13T01:16:48.258Z |
lord(Savely Krasovsky) |
Интересный нюанс, который сложно понять сразу. Я правильно понимаю, что именно поэтому при использовании чистой SOCKS-прокси, которую поднимает Trojan, половина ресурсов не работает? Завёлся телеграм и открываются некоторые сайты, но на половине ловлю ошибки и не полную прогрузку страниц. Технически действительно выглядит красивым решением, хотелось обойтись исключительно Trojan и не тащить комбайн в лице V2Ray. Есть какие-то варианты “дешево” вылечить этот недостаток, превратив его в полноценный прокси? | 2022-03-21T21:02:59.385Z |
zinoid |
Поясните, что это значит? | 2022-03-21T23:03:13.045Z |
lord(Savely Krasovsky) | В итоге поднял на том же сервере WireGuard и запустил Trojan в режиме В итоге получился просто WireGuard over Trojan. Нравится, что оба протокола простые и лаконичные, поддержка и пакеты есть во всех популярных дистрибутивах. | 2022-03-22T00:03:38.697Z |
ValdikSS |
Я перепутал Trojan с Cloak. | 2022-03-22T10:28:48.150Z |
ValdikSS |
Звучит довольно мудрёно: тунеллировать ядерный UDP-протокол через userspace-программу, которая инкапсулирует его в TCP. Не проще ли использовать OpenVPN с | 2022-03-22T10:30:51.596Z |
lord(Savely Krasovsky) |
Возможно проще, надо попробовать. Если вы перепутали с Cloak, то я не понимаю, почему обычный SOCKS5-прокси Trojan не работает для половины ресурсов. К слову в итоге завёл Trojan как плагин для Shadowsocks и всё заработало. | 2022-03-22T10:37:31.402Z |
lord(Savely Krasovsky) |
В целом претензию понимаю, но сейчас опять глянул на OpenVPN и вспомнил какой это жирный комбайн с долгими хендшейками, кучей настроек, CA и другими нюансами, расхотелось… | 2022-03-22T13:03:50.417Z |
lord(Savely Krasovsky) |
Не знаю почему не работало. После того как зовёл IPv6 на сервере, всё наладилось. С чем связано не знаю, кроме поддержки IPv6 ничего не добавлял. | 2022-03-23T00:18:13.540Z |