В 2026 году VPN — это не про скачал конфиг и забыл, а про позиционную войну. Если ты не крутишь настройки сам, их «скрутит» регулятор на узле связи

3X-UI: Простота, которая выходит боком

3X-UI — это классика для тех, кто хочет поднять проксю за пять минут под пивко. Написана на Go, ест мало оперативки на старте, интерфейс понятный. Но как только проект разрастается чуть дальше «пяти друзей», вылезают архитектурные костыли

Главная беда SQLite под капотом. Это настоящая ахиллесова пята панели. База данных часто бьется при резких отвалах питания или кривых обновлениях. В логах вылетает издевательское file is not a database, и панель уходит в бесконечный рестарт. Статистика трафика при этом — вещь эфемерная: после жесткого ребута сервера она может просто обнулиться. При росте нагрузки вылезает ошибка Database is locked, панель начинает жрать CPU, пытаясь достучаться до базы, и в итоге всё ложится

Админить через CLI в связке с Docker отдельное сомнительное удовольствие. Прокинуть команды внутрь контейнера сложнее, чем завести всё нативно. С логами тоже беда: они валятся в общую кучу, так что настроить Fail2Ban для защиты от брутфорса без сторонних костылей практически нереально

Marzban: Профессиональный комбайн

Если 3X-UI это когда у тебя 5 юзеров, то Marzban это когда у тебя 500 клиентов и 10+ серверов в разных локациях. Это решение написано на Python с использованием SQLAlchemy , которое позволяет подцепить нормальную БД типа Postgres или MySQL

Marzban единственный адекватный вариант из коробки для масштабирования. Архитектура Master-Slave позволяет управлять парком из 30+ нод. Центральная панель только рулит юзерами, а ноды (через marzban-node) просто гонят трафик

  • Sub-links: Реализованы через динамические ссылки. Обновил что-то в панели у юзера в клиенте всё подтянулось само без перевыпуска конфига.

  • API: Мощный бэкенд на FastAPI. Можно допилить любой биллинг или бота.

  • Упаковка: Туннелирование настраивается гибко, а лимиты по трафику и времени работают четко.

Remnawave: Промышленный стандарт

Если ты решил стать «серьезным провайдером» для большой тусовки, смотри в сторону Remnawave. Она на Node.js, поэтому RAM ест как не в себя (минимум 2 ГБ под панель), но взамен дает мощную автоматизацию

Главная фишка это Subscribe ID. Можно динамически менять цепочки серверов и инбаундов, а клиент даже не заметит подвоха. Плюс есть Python SDK для интеграции с Telegram-ботами. Одна мощная нода под управлением Remnawave теоретически может переварить до 10 000 активных сессий

Как не сесть в лужу? :-)

Даже самая топовая панель бесполезна, если ты не умеешь бороться с приколами провайдеров и багами

VLESS + Reality это база. Но забудьте про дефолтные SNI типа google.com или microsoft.com. В 2026-м это прямой путь к капче или отвалу. Юзайте локальные сайты страны, где стоит ваша нода (например, nltimes.nl для Нидерландов)

Приколы с iOS.
Клиенты на iPhone (Happ, V2RayTun) любят отваливаться через 2-3 минуты. Причина в том, что лимит iOS в 50 МБ RAM на фоновые процессы.

  • Фикс: Идем в Dev Settings клиента, ищем Xray memory limit и режем его вдвое. Также выключаем в подписке все протоколы, которыми не пользуемся.

BBR это мастхэв

Чтобы пакеты летали, а не ползали при малейших потерях, обязательно заводим BBR:

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p


Китайский YouTube и IPv6

Бывает прикол, что нода в Финляндии, а Google сует рекламу на китайском и не пускает в ChatGPT. Лечится полным отключением IPv6 на уровне ядра, чтобы Xray юзал только чистый IPv4:

sysctl -p -e <<EOF
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
EOF

Приколы с MTU.

Если сайты на компе открываются через раз это фрагментация. ТСПУ дропает тяжелые пакеты с впн-упаковкой

Фикс: Ставь MTU 1350 или 1400 на сетевом интерфейсе клиента. Если пакет развалился уменьшай число

ip link set mtu 1350 eth0

Баг Ubuntu 24.04

Ubuntu подкинула свинью: SSH там теперь висит на сокетах. Если просто поправишь sshd_config, после ребута на сервер ты не зайдешь. Нужно править конфиг сокета:

Если вы не меняете стандартный порт, то править сокет не обязательно. Это нужно именно при смене порта

sudo systemctl edit ssh.socket
# Вставляем:
# [Socket]
# ListenStream=
# ListenStream=60022

sudo systemctl daemon-reload
sudo systemctl restart ssh.socket

Всё чаще всплывают проекты, которые пытаются усидеть на двух стульях: быть красивыми и не палиться перед ТСПУ

Throne: Если ваш старый добрый Nekobox на Android или PC перестал вывозить, Throne — его прямой наследник. Поддерживает все свежие протоколы и фиксы

HAPP / HAPP Plus: Спасение для владельцев iPhone. В отличие от других клиентов, он лучше живет в условиях жесткого лимита iOS (50 МБ на фоновый процесс). Если другие клиенты отлетают через 2 минуты, этот держится

Подводим итог

Короче, расклад на 2026-й такой: выбор панели это не про «красивые кнопочки», а про то, сколько времени ты готов тратить на реанимацию сервера

  • 3X-UI — твой вариант, если нужно поднять проксю «на коленке» для себя и пары друзей

  • Marzban — золотой стандарт для тех, кто вырос из штанишек домашнего админа. Масштабируемость, нормальная база и динамические ссылки, если не хочешь перевыпускать конфиги каждому второму юзеру

  • Remnawave — тяжелая артиллерия. Жрет ресурсы как не в себя, но дает уровень автоматизации

Комментарии (24)


  1. Kenya-West
    03.01.2026 04:38

    BBR это мастхэв

    Снова стюардессу откопали. BBR я не включаю, потому что плохо его знаю. Понятно, что он делает свои сетевые дела лишь внутри VPS.

    Окей, допустим, я его включил. Какой должен быть MTU? Не отвалятся ли клиенты? В случае цепочек, у всех должен быть одинаковый MTU или можно разный? Вдруг выйдет так, что YouTube при одном MTU не пашет, в то время как для SSH нужен взаимоисключающий размер пакетов? Не у всех есть VNC для экстренного доступа к серверу. Такое было, Win11 поменяла алгоритм BBR, и отвалились игровые лаунчеры.

    А ещё в статье пишут:

    In fact, BBR seems to have issue co-existing with other BBR streams that have different RTT. Shiyao et al. found that on a 100Mbps link, a 50ms RTT BBR stream would steal 87.3Mbps of throughput from an existing 10ms RTT BBR stream. This imbalance continued across a range of network capacities from 10Mbps to 1Gbps with the 50ms stream receiving an average of 88.4% of the capacity.

    Я, конечно, понимаю, что эти претензии больше про исследования пограничный случаев, но мне неохота в какой-то момент получить скользящее окно в 50 микросек и потерять 87% трафика на ровном месте.

    В общем, нет гарантий его стабильной работы - не буду им пользоваться. Сетевые проблемы на сервере и так очень трудно диагностировать и мониторить, и не факт, что мой Прометей в принципе поможет узнать о косяках BBR...


  1. dTi
    03.01.2026 04:38

    Странно это всё.

    Юзаю 3x-ui 2 года: 30 клиентов ежедневно, прокачано 11Тб, никаких отвалов, блокировок. Клиент под iOS платный (Shadowrocket), работаю с ним также 2 года как и мои клиенты. 0 проблем. Shadowrocket стоит пожизненно 249 рублей, можно считать бесплатный. Откуда инфа про сессии в 2 минуты - загадка.

    Не исключаю, что остальные серверы тоже ок, но вот критика в пользу 3x необоснованная.


    1. palyaros02
      03.01.2026 04:38

      Аналогично, несколько лет полет нормальный при ещё больших чем у вас нагрузках. Первый раз слышу, что у 3х какие-то проблемы с БД, причем пруфов в статье нет


  1. MangoShow
    03.01.2026 04:38

    Впервые слышу, что 3x ui у кого-то отваливался. Зато знаю, что marzban уже несколько лет не обновлялся.

    Главная фишка это Subscribe ID.

    Не поверите, у 3x она тоже есть


    1. xBrowser
      03.01.2026 04:38

      3x-ui все-таки позволяет собрать несколько серверных нод в единое управление? Чтобы пользователь мог забрать список нод по одной ссылке?


      1. MangoShow
        03.01.2026 04:38

        Нет, таким можно манипулировать только с инбаундами. Но для таких промышленных задач лучше уж использовать Remnawave, чем марзбан


        1. shadek
          03.01.2026 04:38

          Есть еще Balancers, в которые можно завести несколько Outbounds и настроить политику переключения в случае выпадения одного из.


  1. sundmoon
    03.01.2026 04:38

    Бывает прикол, что нода в Финляндии, а Google сует рекламу на китайском и не пускает в ChatGPT. Лечится полным отключением IPv6 на уровне ядра, чтобы Xray юзал только чистый IPv4

    О чём тут речь на самом деле - о геодетекте у aistudio и нескольких подобных гуглосервисов (gemini как таковой в их число не входит) ?

    Давно интересуюсь его механизмом.


    1. AndryKarcew
      03.01.2026 04:38

      вот мне все сервисы проверки с первой страницы гуглопоиска определяют как Финку (один почему-то в Лондон отправил), но ютуб с китайской рекламой. и в шапке HK.
      Как с этим бороться - хз.


      1. novikovpashka
        03.01.2026 04:38

        Ютуб и гугл определяют ipv4 моего впс как Нидерланды, а ipv6 как Россию. В настройках x-ray в панели 3x-ui можно пустить через ipv4 то, что вам нужно, у меня например прописано там geosite:google-gemini. То есть гемини видит меня из Нидерландов, а ютуб и гугл – из России, что в целом устраивает. Я в общем это к тому, что может у вас тоже в впс есть ipv6, который и определяется как HK, и вы можете настроить чтобы гугл шел через ipv4, если он у вас гуглом определяется как другая страна.


        1. AndryKarcew
          03.01.2026 04:38

           ютуб и гугл – из России

          так ютуп не будет же работать.
          на ipv4 у меня просто geosite:google
          сейчас списался с поддержкой хостера..."ждите обновления гео у гугла"


          1. novikovpashka
            03.01.2026 04:38

            Неправильно. Трафик же идёт через впс, а значит ютуб будет работать. Просто ютуб определяет мой айпи российским, а значит не будет рекламы и недоступны некоторые например музыкальные клипы, которые имеют региональные ограничения


            1. AndryKarcew
              03.01.2026 04:38

              эээээ?
              а как его выделить в 3x-ui?
              и запихнуть в аутбанд warp (туда же куда и geoip:ru) ?


              1. novikovpashka
                03.01.2026 04:38

                Так у вас уже прописано geosite:google в ipv4, а ютуб вроде входит в эту категорию тоже. Значит гугл определяет ваш ipv4 как HK. Или попробовать geosite:youtube отдельно выделить. Насчёт warp я не в курсе если честно, тоже можно попробовать, но я хз, какую страну он выдаст вам.


                1. AndryKarcew
                  03.01.2026 04:38

                  Значит гугл определяет ваш ipv4 как HK

                  все остальные сервисы-то как Хельсинки определяют.
                  Ща сохраню конфигурацию и попробую (поломать боюсь, я ж не настоящий сварщик - просто маску нашёл)


                  1. novikovpashka
                    03.01.2026 04:38

                    Такое вполне может быть, что многие сервисы определяют финку, а конкретно гугл - другую страну, потому что у них судя по всему свои базы. Самый правильный способ проверить, это подключиться к консоли своего впс и запустить скрипт:

                    bash <(wget -qO - https://github.com/vernette/ipregion/raw/master/ipregion.sh)

                    Конкретно у меня это вообще вот так выглядит, хостинг в Нидерландах
                    Конкретно у меня это вообще вот так выглядит, хостинг в Нидерландах


                    1. AndryKarcew
                      03.01.2026 04:38

                      что-то не алло
                      что-то не алло


                      1. novikovpashka
                        03.01.2026 04:38

                        Ну тут уже я не помогу, нужно с впс разбираться. Это нормально, когда перед первым использованием скрипта нужно какие-то dependencies подгрузить, вы правильно выбрали "y", но почему дальше не сработало, я хз.


                      1. AndryKarcew
                        03.01.2026 04:38

                        Запустил...страннненько, конечно
                        Запустил...страннненько, конечно


                      1. novikovpashka
                        03.01.2026 04:38

                        Ну по идее нужно убрать эти два правила (если второе это geosite: category-google) и ютуб и гугл станут определять вас как ru. Можно сделать только правило geosite:google-gemini через ipv4, если вам гемини нужен.


  1. HSerg
    03.01.2026 04:38

    Впервые такое слышу про SQLite. Ну и если уж у неё такие проблемы на этих хостингах, то нормальные СУБД там совсем неприменимы.


  1. Mr_Boshi
    03.01.2026 04:38

    Очень вовремя эта статейка, конечно. 3 января автор 3X-UI выкатил обновление с ошибкой. В версии 2.8.6 был совершен переход с wget на curl, при этом забыли добавить в Dockerfile установку этого пакета. В результате собранный образ не работает. Все, кто со вчерашнего дня пулят 3x-ui с тегом latest получают неработающий прокси.

    Автор о проблеме в курсе и даже принял PR, который это исправляет, но фикс выйдет только в следующей версии. Мне это кажется очень странным подходом к разработке и фиксу багов. Конечно, проще всего просто запинить в у себя образ на версию 2.8.5 до лучших времён, но может и правда стоит посмотреть в сторону более профессиональных решений.


  1. 0ka
    03.01.2026 04:38

    1. Ркн уже тестировали блокировку множества тлс сессий (>12) к одному серверу

    2. были единичные сообщения о том что ТСПУ сверяет SNI и IP и временно банит ip сервера при несоответствии (сам не поймал этот блок к сожалению)

    3. вы ставите nltimes.nl для "маскировки", которая на самом деле только лишь палит ваш прокси из вне: очевидно что nltimes не будет висеть на какой-то рандомной впске, которая к тому же становится зеркалом на cloudflare (nltimes на cloudflare), в некоторых случаях это даже позволяет использовать вашу впс как прокси для любого сайта на cloudflare (но для определения что это зеркало это не важно)

    после этого вы всё равно пишете "VLESS + Reality это база", серьезно? с таким конфигом, для определения что у вас на сервере vless+reality, не нужно даже вклиниваться в трафик, его может найти любой на censys search, я нашел там два сервера с nltimes (https://search.censys.io/search?resource=hosts&sort=RELEVANCE&per_page=25&virtual_hosts=EXCLUDE&q=services.tls.certificate.parsed.subject.common_name%3Anltimes.nl): первый сервер на royale hosting/servers guru (там очевидно стоит vless+reality т.к. дополнительно имеется зеркало на google), второй сервер на google cloud. если они не авторские, то возможно его еще не заиндексировался.

    "Приколы с MTU": никаких приколов с MTU тут быть не может, vless это не VPN, это tcp прокси (как socks5, только зашифрован)


  1. ki11j0y
    03.01.2026 04:38

    Vless +reality это база, правда, только стоит добавить что вариант с steel oneself единственный рабочий и надёжный, вам нужен соответственно домен и сертификат, настроенный сайт обманка выглядящий как реальный сайты страница правильно настроенный обратный прокси, и многое другое, и главное чтобы трафик на ру сайты не шёл.

    У меня двухступенчатая схема, примает сервер в рф reality в панели 3xui настроен outbound на сервер в nl, мтс не пускал на nl напрямую пришлось сделать так для телефона теперь весь трафик гонится так