Подробное руководство по настройке NaiveProxy — современной альтернативы VLESS для обхода блокировок и создания собственного VPN-сервера.
Ask about this video. Answers come from its transcript only — with the timestamp, so you can check them.
Generated from the transcript and can be wrong — check the timestamp.
Key Takeaways
- NaiveProxy обеспечивает более надёжную маскировку трафика, имитируя поведение браузера Chrome.
- Использование реального веб-сервера с сайтом защищает от активного зондирования.
- Настройка требует базовых знаний работы с VPS, доменами и терминальными утилитами.
- Автоматизация установки с помощью скрипта значительно упрощает процесс.
- Клиентские приложения позволяют легко подключаться к настроенному VPN-серверу.
What the video covers
- Объяснение принципов работы современных методов обхода DPI-фильтров и их уязвимостей.
- Описание уникального подхода NaiveProxy, основанного на сетевом стеке Chromium для имитации поведения браузера.
- Преимущества NaiveProxy: идентичное TLS-рукопожатие и защита от активного зондирования.
- Требования для настройки: VPS на Debian/Ubuntu, домен с поддоменом, клиентское приложение и терминальная утилита.
- Пошаговая инструкция по покупке VPS, привязке домена и проверке соединения через ping.
- Подключение к серверу по SSH с помощью MobaXterm и обновление системы.
- Установка и настройка BBR для увеличения пропускной способности сети.
- Сборка веб-сервера Caddy с плагином NaiveProxy и создание HTML-заглушки для защиты.
- Создание caddyfile с индивидуальными параметрами и настройка системного сервиса для автозапуска.
- Использование готового скрипта на GitHub для автоматизации процесса и настройка клиентских приложений, например, NekoBox на Android.
Full Transcript — Download SRT & Markdown
Speaker A
Всем привет, дорогие друзья. Сегодня я вам расскажу подробно о том, как самостоятельно настроить новый способ обхода блокировок, который называется NaiveProxy.
Speaker A
Для начала — вкратце немного теории о том, зачем это всё нужно. Дело в том, что самые современные и хоть сколько-нибудь надёжные способы обойти DPI-фильтры, такие как Trojan, VLESS с транспортом TCP, VLESS с транспортом XHTTP, все они имеют в своей основе один и тот же принцип: маскировка под легитимный ресурс.
Speaker A
То есть так, как будто бы вы посещаете обычный незапрещённый сайт. Но прежде чем установить зашифрованное соединение с вашим сервером, ваше устройство посылает к нему TLS handshake.
Speaker A
По сути, это представляет собой приветственное сообщение, в котором указывается: какая версия TLS, какие шифрования будут использоваться.
Speaker A
Но самое главное — все эти данные располагаются в определённом порядке и передаются в открытом виде.
Speaker A
В этом-то и заключается главная уязвимость большинства современных способов обхода DPI-фильтров. Как бы сильно вы ни старались замаскировать своё подключение, это по-прежнему является маскировкой.
Speaker A
И при очень большом желании даже самое продвинутое решение со временем может быть обнаружено. Именно эту проблему пытается решить NaiveProxy.
Speaker A
Автор данного проекта просто взял за основу браузер Chromium и скрупулёзно вырезал из него те самые 0,3%, которые отвечают за сетевую часть.
Speaker A
Важно также и то, что именно открытый код браузера Chromium является основой для большинства популярных браузеров.
Speaker A
Не только для браузера Chrome (под который мы маскируемся), но также и для Edge, Brave, Opera и даже Яндекс.Браузер.
Speaker A
Таким образом, взяв за основу сетевой стек Chromium при подключении, мы не просто копируем поведение браузера, а мы им и являемся.
Speaker A
TLS-рукопожатие полностью идентично тому, как ведёт себя браузер Chrome. Это лишает возможности даже самые продвинутые DPI-фильтры потенциально обнаруживать подозрительное подключение именно таким способом.
Speaker A
Кроме того, в такой конфигурации имеется ещё одна защита, а именно защита от активного зондирования.
Speaker A
Поскольку мы используем реальный веб-сервер с настоящим сайтом, который мы располагаем на физическом сервере, то если кто-то захочет напрямую подключиться к нашему IP-адресу, то он увидит обычный сайт.
Speaker A
Итак, теперь приступим непосредственно к настройке самого NaiveProxy. Перед началом настройки нам понадобится купленный VPS-сервер на Debian или Ubuntu, привязанный к IP-адресу нашего сервера поддомен, а также клиентское приложение на устройстве, которое вы используете.
Speaker A
Кроме того, для удобства работы я рекомендую использовать терминальные утилиты. Это может быть Termius, это может быть MobaXterm или любая другая терминальная утилита.
Speaker A
Впрочем, ничто вам не мешает использовать и встроенную в Windows консоль. Первое, что нам нужно сделать — это купить VPS-сервер.
Speaker A
Рекомендовать какой-то конкретный я не буду, чтобы вы не думали, что это реклама. При выборе сервера можете выбрать минимальный.
Speaker A
Его нам будет достаточно, если вы используете для себя и ещё пары человек. Для примера я уже купил сервер в Финляндии.
Speaker A
Мне выдали IP-адрес и, соответственно, пароль. Следующим шагом будет привязка домена к нашему IP-адресу. Я покажу на примере FreeDNS, но сам я им не пользуюсь и вам не рекомендую его использовать.
Speaker A
Гораздо проще, безопаснее и надёжнее купить для себя отдельный домен. Легко можно найти очень дешёвый. Есть те, которые стоят вообще копейки.
Speaker A
Главное, обратите внимание на две вещи. Первое: по возможности не используйте .RU-домен. А второе: обязательно проверьте, чтобы у вас было отключено автопродление, потому что вы покупаете домен за одну сумму (условно за 200 руб. в год), а продление стоит уже 2 000,
Speaker A
поэтому проще купить новый. Итак, наша задача — создать поддомен с А-записью на IP-адрес нашего сервера.
Speaker A
Это всего-навсего нужно для того, чтобы связать IP с нашим сайтом. Поддоменом является добавка перед вашим основным доменом, которая создаёт отдельный адрес.
Speaker A
Вы также можете не создавать отдельного поддомена, а вписать в А-запись значок собачки (@), и тогда IP-адрес будет присвоен непосредственно вашему главному домену.
Speaker A
Перед вами сейчас пример того, как это можно сделать на сайте Reg.ru. Но у других регистраторов домена примерно такая же схема.
Speaker A
То есть вы заходите в карточку вашего домена, находите управление DNS и добавляете А-запись, введя IP-адрес вашего купленного сервера.
Speaker A
После того, как мы всё сделали, нам нужно какое-то время подождать. Проверить, что всё работает, можно, введя в консоль команду ping и тот адрес, который мы привязали.
Speaker A
Если мы видим ответ от IP-адреса нашего купленного сервера, значит, всё получилось и работает корректно.
Speaker A
Теперь мы можем приступить непосредственно уже к настройке нашего сервера и NaiveProxy. На примере программы MobaXterm я покажу, как подключиться к нашему серверу по SSH.
Speaker A
В левом верхнем углу выбираем Session, SSH... Сюда вставляем IP-адрес нашего сервера; username — root; нажимаем "OK".
Speaker A
Здесь нас просят ввести пароль. Пароль вводим тот, который нам выдал наш VPS-хостинг, у которого мы покупали сервер.
Speaker A
Все команды, которые я использую сейчас, я размещу в инструкции на GitHub по ссылке в описании.
Speaker A
Там же я прикреплю собственный скрипт и команду для его активации. Он сделает всё то, что я сейчас показываю, только уже автоматически.
Speaker A
Первым делом обновляем нашу систему и устанавливаем базовые утилиты. Затем включаем BBR. BBR нам нужен для того, чтобы увеличить пропускную способность нашей сети.
Speaker A
Без этого наш интернет будет работать очень медленно. Следующей командой проверяем, что всё хорошо. Далее для большей безопасности включаем Firewall.
Speaker A
Теперь устанавливаем язык программирования Go. Он нам нужен только для того, чтобы скомпилировать веб-сервер Caddy с плагином NaiveProxy.
Speaker A
Следующим шагом происходит непосредственная сборка нашего веб-сервера с нашим плагином. Сборка происходит вручную, поэтому процесс довольно долгий.
Speaker A
Может занимать порядка 5-7 минут. Не пугайтесь, если вам покажется, что ваш сервер завис. Командой caddy version проверяем, что всё хорошо.
Speaker A
Далее генерируем логин и пароль. Вывод сохраняем себе куда-нибудь в блокнот, чтобы потом было легко подставить.
Speaker A
Теперь нам необходимо создать страницу в HTML-формате, которая будет являться заглушкой. Это нужно для того, чтобы любой, у кого нет нашего логина и пароля, подключившись к нашему серверу, увидел обычный сайт, ничем не примечательный.
Speaker A
Заглушка может быть любой. Данный код просто как один из примеров. Очень важный этап. На этом этапе мы создаём caddyfile.
Speaker A
Нам нужно подставить на место значений по умолчанию свои собственные значения. На место your.domain.com — адрес страницы, которую вы привязывали. Вместо [email protected] — вашу почту и вместо LOGIN и PASSWORD — соответственно, ваш логин и пароль.
Speaker A
Главное, обратите внимание, чтобы количество пробелов в точности соответствовало шаблону. Не больше и не меньше.
Speaker A
Ну и в конце, чтобы не было лишних пробелов. Теперь это всё вставляем. Следующий шаг — это создание системного сервиса, который поможет автоматически запустить caddy в том случае, если сервер будет перезагружен или по каким-то иным причинам процесс упадёт.
Speaker A
Теперь по аналогии мы подставляем в этот шаблон наш логин, пароль и сайт и куда-нибудь сохраняем.
Speaker A
Его нам потом нужно будет вставить в мобильный клиент. Итак, с пошаговым способом мы разобрались. Теперь я вам покажу свой собственный скрипт, который делает всё вышеперечисленное в одну команду.
Speaker A
Для этого переходим на страницу в GitHub, копируем, вставляем в терминал, вводим сначала доменный адрес, а затем вашу почту и указываем: сколько пользователей создать.
Speaker A
После успешного выполнения скрипта просмотреть логин и пароль пользователей можно, введя данную команду, которая открывает текстовый файл.
Speaker A
Я вас поздравляю. С настройкой сервера мы закончили. Теперь приступаем к настройке клиентов для разных устройств.
Speaker A
Первый на очереди у нас NekoBox, который работает на Android. Качаем его. Заранее копируем шаблон с подставленными логином, паролем и нашим сайтом.
Speaker A
В правом верхнем углу нажимаем плюсик и "импор...
Speaker A
потому что плагин для NekoBox аж трёхлетней давности. Ну и всё, можете подключаться. Следующим на очереди у нас клиент Karing. Он работает как на iOS, так и на Android.
Speaker A
Насколько я понял, для него отдельный плагин скачивать не нужно, он всё содержит в себе.
Speaker A
Для него мы также заранее копируем нашу ссылку для подключения и выбираем "импорт из буфера обмена".
Speaker A
На этом всё. Как видите, всё довольно просто. Теперь настроим клиент на Windows. Я покажу на примере V2RayN, поскольку у большинства из вас он, скорее всего, уже стоит, если вы до этого пользовались VLESS.
Speaker A
Для этого мы также с официального сайта разработчика скачиваем плагин, как мы это делали для Android.
Speaker A
Теперь у нас есть папка, в которой находится .config и .exe файл. Сначала нам нужно открыть config. Здесь вы видите строчку listen и proxy.
Speaker A
Ссылку, которая находится в proxy, нам нужно изменить аналогично тому, как мы её меняли для Android-клиентов.
Speaker A
Вместо слова user - наш логин, вместо pass - пароль и вместо domain.example - нашу страничку.
Speaker A
Далее запускаем .exe файл и оставляем висеть в фоне. Параллельно с этим открываем наш V2RayN клиент.
Speaker A
В нём мы выбираем: Серверы, Добавить сервер SOCKS, как-нибудь его называем. В строке Адрес пишем 127.0.0.1 и в строке Порт: 1080 (тот, который был у нас в конфиге).
Speaker A
Если он не активировался - активируем его. И на этом всё. Можем наслаждаться нашим подключением.
Speaker A
Сердечно благодарю всех, кто досмотрел этот ролик до конца. Надеюсь, что он хоть немного был для вас полезен.
Speaker A
Пишите ваши рекомендации и пожелания на будущее в комментариях. Возможно, потом создам Telegram-канал. Подписывайтесь, ставьте ваши лайки.
Speaker A
Всем здоровья, всем удачи и всем пока.
Topics:NaiveProxyVPN серверобход блокировокDPI фильтрыVLESS альтернативанастройка VPSCaddy серверTLS handshakeChromium сетевой стектерминальные утилиты











