Щас поясню я на убунте на домашнем пк сварганил на питоне локальный doh ,повесил его на 53 порт и весь трафик с пк пустил через него на выходе все запросы шифрованые получаются .
Нет. Локальный DoH значит, вы внутри локальной сети сделали сервер DoH с самоподписанным сертификатом, который добавили в список корневых доверенных в браузере/ОС. Вы наверное имели ввиду, что сделали локальный кэширующий stub резолвер с форвардом DoH — но на петухоне ничего варганить не требовалось, есть готовые решения. А если вы сделали резолвер сами, то и сможете ответить на поставленный вопрос — рабочая эта схема или нет.
Ну не совсем сам),тут скорее соц инженерия да все работает просто думаю насколько это актуально,в реальных условиях буду наблюдать конечно просто тут у людей опыта гора и тележка.
Ну тогда пользуйтесь на здоровье. Когда заблокируют будете пробовать другой хостинг или другой протокол (DoQ, DNSCrypt, или напишите сами) — это всё.
Это подключаться не с РФ сервера к Загран, а наоборот? Интересная мысль. А как в такое подключение залезть с РФ сервера, чтобы его использовать? Допустим, если это Xray и VLESS. Что-то вообще в голову ничего не приходит
XRay это умеет из коробки, оно описано в докуметации.
Автор sing-box
по жизни очень странный чувак и никогда разумностью не отличался, к сожалению.
так никто не запрещает прикрутить, оно даже вполне работает если прикрутить. проблема trojan в раздутом заголовке, в том что там нет padding’а и возможности расширений (как protobuf в vless)
проблема в том, что он его использует только в оригинальном клиенте. почти все сторонние реализации (и sing-box скорее всего тоже - я не смотрел), просто реимплементят спеку протокола, не используя реальный сетевой стек Хрома, и таким образом теряют основное преимущество naiveproxy. ну и через CDN оно не пролезает.
и кстати, XRay тоже может использоывть настоящий сетевой стек Chromium - browser dialer эта фича называется (работает с WS и XHTTP).
так при каскадных подключениях uTLS как раз не надо включать на транзитном узле.
а Chromium вполне полноценно работает в docker-контейнере даже на VPS с 1гб памяти - у меня есть один проект где оно было нужно и проблем никаких.
так при каскадных подключениях uTLS как раз не надо включать на транзитном узле
Тогда он будет иметь стандартный golang TLS отпечаток. Это ведь тоже характеристика прокси ядер.
а Chromium вполне полноценно работает в docker-контейнере даже на VPS с 1гб памяти - у меня есть один проект где оно было нужно и проблем никаких.
Я верю, что работает, просто это довольно нестандартное их применение, может привлекать внимание.
Я может не понимаю чего, но почему все так вцепились в этот golang TLS отпечаток? Чего в нем такого ужасного, сейчас старые сервисы на Go переписывают все кому не лень, с каждым днем эта либа наверняка используется все больше.
А зачем пользоваться TLS/Reality на транзитном VPS для подключения к зарубежному?
и что?
на десктопе нет браузеров на Go, да и просто десктопного/мобильного прикладного софта на Go практически не встречается - поэтому для подключений от абонентов это может считаться подозрительным фактором.
на серверах же Go используется повсеместно и массово (в том числе и как веб-клиенты, всякие скраперы, боты, обращение к API, и т.д.), и там Go’шным TLS-фингерпринтом вообще никого не удивить.
Маршрутизация трафика
Иностранный трафик проксируется, а российский идёт через провайдера.
Пример профиля для Happ
Ссылка для ПК
happ://routing/add/ewogICAgIk5hbWUiOiAi0J/RgNC+0LrRgdC40YDQvtCy0LDRgtGMINCy0YHRkSwg0LrRgNC+0LzQtSDQoNCkIiwKICAgICJHbG9iYWxQcm94eSI6ICJ0cnVlIiwKICAgICJSZW1vdGVETlNUeXBlIjogIkRvVSIsCiAgICAiUmVtb3RlRE5TRG9tYWluIjogImh0dHBzOi8vY2xvdWRmbGFyZS1kbnMuY29tL2Rucy1xdWVyeSIsCiAgICAiUmVtb3RlRE5TSVAiOiAiMS4xLjEuMSIsCiAgICAiRG9tZXN0aWNETlNUeXBlIjogIkRvVSIsCiAgICAiRG9tZXN0aWNETlNEb21haW4iOiAiaHR0cHM6Ly9jb21tb24uZG90LmRucy55YW5kZXgubmV0IiwKICAgICJEb21lc3RpY0ROU0lQIjogIjc3Ljg4LjguOCIsCiAgICAiVXNlQ2h1bmtGaWxlcyI6ICJ0cnVlIiwKICAgICJHZW9pcHVybCI6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vTG95YWxzb2xkaWVyL3YycmF5LXJ1bGVzLWRhdC9yZWxlYXNlL2dlb2lwLmRhdCIsCiAgICAiR2Vvc2l0ZXVybCI6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vTG95YWxzb2xkaWVyL3YycmF5LXJ1bGVzLWRhdC9yZWxlYXNlL2dlb3NpdGUuZGF0IiwKICAgICJMYXN0VXBkYXRlZCI6ICIiLAogICAgIkRuc0hvc3RzIjogewogICAgICAgICJjbG91ZGZsYXJlLWRucy5jb20iOiBbCiAgICAgICAgICAgICIxLjEuMS4xIiwKICAgICAgICAgICAgIjEuMC4wLjEiCiAgICAgICAgXSwKICAgICAgICAiZG5zLmdvb2dsZSI6IFsKICAgICAgICAgICAgIjguOC44LjgiLAogICAgICAgICAgICAiOC44LjQuNCIKICAgICAgICBdLAogICAgICAgICJjb21tb24uZG90LmRucy55YW5kZXgubmV0IjogWwogICAgICAgICAgICAiNzcuODguOC44IiwKICAgICAgICAgICAgIjc3Ljg4LjguMSIKICAgICAgICBdCiAgICB9LAogICAgIkZha2VETlMiOiAiZmFsc2UiLAogICAgIkRvbWFpblN0cmF0ZWd5IjogIklQSWZOb25NYXRjaCIsCiAgICAiUm91dGVPcmRlciI6ICJibG9jay1kaXJlY3QtcHJveHkiLAogICAgIkRpcmVjdFNpdGVzIjogWwogICAgICAgICJnZW9zaXRlOnByaXZhdGUiLAogICAgICAgICJnZW9zaXRlOmNhdGVnb3J5LXJ1IgogICAgXSwKICAgICJEaXJlY3RJcCI6IFsKICAgICAgICAiMjU1LjI1NS4yNTUuMjU1IiwKICAgICAgICAiZ2VvaXA6cHJpdmF0ZSIsCiAgICAgICAgImdlb2lwOnJ1IgogICAgXSwKICAgICJQcm94eVNpdGVzIjogW10sCiAgICAiUHJveHlJcCI6IFtdLAogICAgIkJsb2NrU2l0ZXMiOiBbXSwKICAgICJCbG9ja0lwIjogW10KfQ==
Geo-база от Loyalsoldier/v2ray-rules-dat
{
"Name": "Проксировать всё, кроме РФ",
"GlobalProxy": "true",
"RemoteDNSType": "DoU",
"RemoteDNSDomain": "https://cloudflare-dns.com/dns-query",
"RemoteDNSIP": "1.1.1.1","1.0.0.1",
"DomesticDNSType": "DoU",
"DomesticDNSDomain": "https://common.dot.dns.yandex.net",
"DomesticDNSIP": "77.88.8.8","77.88.8.1",
"UseChunkFiles": "true",
"Geoipurl": "https://raw.githubusercontent.com/Loyalsoldier/v2ray-rules-dat/release/geoip.dat",
"Geositeurl": "https://raw.githubusercontent.com/Loyalsoldier/v2ray-rules-dat/release/geosite.dat",
"LastUpdated": "",
"DnsHosts": {
"cloudflare-dns.com": [
"1.1.1.1",
"1.0.0.1"
],
"dns.google": [
"8.8.8.8",
"8.8.4.4"
],
"common.dot.dns.yandex.net": [
"77.88.8.8",
"77.88.8.1"
]
},
"FakeDNS": "false",
"DomainStrategy": "IPIfNonMatch",
"RouteOrder": "block-direct-proxy",
"DirectSites": [
"geosite:private",
"geosite:category-ru"
],
"DirectIp": [
"255.255.255.255",
"geoip:private",
"geoip:ru"
],
"ProxySites": [],
"ProxyIp": [],
"BlockSites": [],
"BlockIp": []
}
Ссылка для телефона
happ://routing/add/ewogICAgIk5hbWUiOiAi0J/RgNC+0LrRgdC40YDQvtCy0LDRgtGMINCy0YHRkSwg0LrRgNC+0LzQtSDQoNCkIiwKICAgICJHbG9iYWxQcm94eSI6ICJ0cnVlIiwKICAgICJSZW1vdGVETlNUeXBlIjogIkRvVSIsCiAgICAiUmVtb3RlRE5TRG9tYWluIjogImh0dHBzOi8vY2xvdWRmbGFyZS1kbnMuY29tL2Rucy1xdWVyeSIsCiAgICAiUmVtb3RlRE5TSVAiOiAiMS4xLjEuMSIsCiAgICAiRG9tZXN0aWNETlNUeXBlIjogIkRvVSIsCiAgICAiRG9tZXN0aWNETlNEb21haW4iOiAiaHR0cHM6Ly9jb21tb24uZG90LmRucy55YW5kZXgubmV0IiwKICAgICJEb21lc3RpY0ROU0lQIjogIjc3Ljg4LjguOCIsCiAgICAiVXNlQ2h1bmtGaWxlcyI6ICJ0cnVlIiwKICAgICJHZW9pcHVybCI6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vTG95YWxzb2xkaWVyL3YycmF5LXJ1bGVzLWRhdC9yZWxlYXNlL2dlb2lwLmRhdCIsCiAgICAiR2Vvc2l0ZXVybCI6ICJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vTG95YWxzb2xkaWVyL3YycmF5LXJ1bGVzLWRhdC9yZWxlYXNlL2dlb3NpdGUuZGF0IiwKICAgICJMYXN0VXBkYXRlZCI6ICIiLAogICAgIkRuc0hvc3RzIjogewogICAgICAgICJjbG91ZGZsYXJlLWRucy5jb20iOiBbCiAgICAgICAgICAgICIxLjEuMS4xIiwKICAgICAgICAgICAgIjEuMC4wLjEiCiAgICAgICAgXSwKICAgICAgICAiZG5zLmdvb2dsZSI6IFsKICAgICAgICAgICAgIjguOC44LjgiLAogICAgICAgICAgICAiOC44LjQuNCIKICAgICAgICBdLAogICAgICAgICJjb21tb24uZG90LmRucy55YW5kZXgubmV0IjogWwogICAgICAgICAgICAiNzcuODguOC44IiwKICAgICAgICAgICAgIjc3Ljg4LjguMSIKICAgICAgICBdCiAgICB9LAogICAgIkZha2VETlMiOiAiZmFsc2UiLAogICAgIkRvbWFpblN0cmF0ZWd5IjogIklQSWZOb25NYXRjaCIsCiAgICAiUm91dGVPcmRlciI6ICJibG9jay1kaXJlY3QtcHJveHkiLAogICAgIkRpcmVjdFNpdGVzIjogWwogICAgICAgICJnZW9zaXRlOnByaXZhdGUiLAogICAgICAgICJnZW9zaXRlOmNhdGVnb3J5LXJ1IiwKICAgICAgICAiZ2Vvc2l0ZTpjYXRlZ29yeS1pcC1nZW8tZGV0ZWN0IgogICAgXSwKICAgICJEaXJlY3RJcCI6IFsKICAgICAgICAiMjU1LjI1NS4yNTUuMjU1IiwKICAgICAgICAiZ2VvaXA6cHJpdmF0ZSIsCiAgICAgICAgImdlb2lwOnJ1IgogICAgXSwKICAgICJQcm94eVNpdGVzIjogW10sCiAgICAiUHJveHlJcCI6IFtdLAogICAgIkJsb2NrU2l0ZXMiOiBbXSwKICAgICJCbG9ja0lwIjogW10KfQ==
{
"Name": "Проксировать всё, кроме РФ",
"GlobalProxy": "true",
"RemoteDNSType": "DoU",
"RemoteDNSDomain": "https://cloudflare-dns.com/dns-query",
"RemoteDNSIP": "1.1.1.1","1.0.0.1",
"DomesticDNSType": "DoU",
"DomesticDNSDomain": "https://common.dot.dns.yandex.net",
"DomesticDNSIP": "77.88.8.8","77.88.8.1",
"UseChunkFiles": "true",
"Geoipurl": "https://raw.githubusercontent.com/Loyalsoldier/v2ray-rules-dat/release/geoip.dat",
"Geositeurl": "https://raw.githubusercontent.com/Loyalsoldier/v2ray-rules-dat/release/geosite.dat",
"LastUpdated": "",
"DnsHosts": {
"cloudflare-dns.com": [
"1.1.1.1",
"1.0.0.1"
],
"dns.google": [
"8.8.8.8",
"8.8.4.4"
],
"common.dot.dns.yandex.net": [
"77.88.8.8",
"77.88.8.1"
]
},
"FakeDNS": "false",
"DomainStrategy": "IPIfNonMatch",
"RouteOrder": "block-direct-proxy",
"DirectSites": [
"geosite:private",
"geosite:category-ru",
"geosite:category-ip-geo-detect"
],
"DirectIp": [
"255.255.255.255",
"geoip:private",
"geoip:ru"
],
"ProxySites": [],
"ProxyIp": [],
"BlockSites": [],
"BlockIp": []
}
Разница в профилях заключается в том, что для телефона дополнительно включена категория доменов для определения IP-адреса “category-ip-geo-detect”, поскольку некоторые приложения сканируют его, и такие домены будут передавать трафик напрямую через провайдера.
Добавлять “category-ads-all” не стал так как это может повлиять на производительность.
Альтернативная Geo-база от runetfreedom/russia-v2ray-rules-dat
{
"Geoipurl": "https://raw.githubusercontent.com/runetfreedom/russia-v2ray-rules-dat/release/geoip.dat",
"Geositeurl": "https://raw.githubusercontent.com/runetfreedom/russia-v2ray-rules-dat/release/geosite.dat",
"DirectSites": [
"geosite:category-ru",
"geosite:ru-available-only-inside",
"geosite:category-ip-geo-detect"
],
"BlockSites": [
"geosite:category-ads-all"
],
}
geosite:category-ru
geosite:ru-available-only-inside
geosite:category-ip-geo-detect
По аналогии можно сделать и для других приложений.
Спасибо. Не сразу понял как добавить, но помогла “документация”
Чтобы добавить этот профиль маршрутизации в Happ, выполните следующие шаги:
Убедитесь, что у вас установлено приложение Happ.
Скопируйте всю строку, начинающуюся с happ://routing/add/…
Вставьте её в адресную строку любого браузера на вашем устройстве.
Браузер предложит открыть ссылку в приложении Happ. Подтвердите действие.
Приложение откроется и добавит профиль. После этого вы сможете выбрать его в настройках маршрутизации.
Если браузер не переключается на Happ автоматически, откройте приложение вручную, перейдите в раздел настроек маршрутизации и попробуйте вставить ссылку там.
@samavarchik90 привет и спасибо ещё раз.
А стоит ли все сервисы проверки ip завернуть так, чтобы они выходили из РФ?
Это немного минимизирует риск, но не исправит уязвимость. Никакими протоколами, изоляцией, иными средствами маршрутизации на клиентах это полностью не исправить.
Контр-пример: Любой сервис, не входящий в списки, с Reality заблокированного SNI, либо само приложение шлет фейк SNI – может вернуть IP.
Решение (полностью исправляющее уязвимость), а также продолжить обсуждение данного вопроса можно в теме.