Установка Marzban

Marzban — это веб-панель, предназначенная для управления прокси-серверами и поддерживающая такие протоколы, как VMess, VLESS, Trojan и ShadowSocks. С ее помощью можно эффективно управлять пользователями, настраивать различные параметры прокси-соединений, включая ограничения по трафику и срокам действия, а также контролировать доступ по IP-адресам. Панель также поддерживает автоматическую настройку SSL-сертификатов и интеграцию с Telegram для удобного получения уведомлений и управления. Marzban отлично подходит как для опытных администраторов, так и для тех, кто только начинает работать с прокси-серверами, предлагая интуитивно понятный интерфейс и гибкие настройки.

Это собственный протокол для связи в проекте V2Ray, который разрабатывался специально для обхода сетевых ограничений и обеспечения приватности. Этот протокол поддерживает как TCP, так и UDP трафик, что делает его универсальным. Одной из ключевых особенностей VMess является то, что он использует шифрование и обфускацию для сокрытия данных передаваемых между клиентом и сервером, что значительно усложняет обнаружение трафика интернет-провайдерами.

Для установки подойдет промо-тариф на базе Ubuntu 20.04:

1 ядро, 1 ГБ оперативной памяти и 10 ГБ NVMe накопителя.

Преимущества

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

  • REST API для гибкого управления: Вся функциональность Marzban доступна через REST API, что позволяет интегрировать его с другими системами и автоматизировать процессы управления прокси-серверами на программном уровне.

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

  • Мультипротокольная поддержка для пользователей: Каждый пользователь может использовать несколько протоколов одновременно, что обеспечивает гибкость и совместимость с различными клиентами.

  • Поддержка нескольких пользователей на одном соединении: Marzban позволяет создавать несколько учетных записей пользователей, которые могут использовать одно входящее соединение (inbound), оптимизируя использование серверных ресурсов.

  • Размещение нескольких входящих соединений на одном порту: Платформа поддерживает размещение нескольких inbound-соединений на одном порту, с возможностью настройки fallback-механизмов, что повышает надежность соединений.

  • Ограничения по трафику и сроку действия: Панель умеет устанавливать ограничения по объему трафика и срокам действия для учетных записей пользователей, что помогает эффективно управлять ресурсами сервера.

  • Мониторинг серверных ресурсов: Встроенные инструменты мониторинга позволяют в реальном времени отслеживать состояние серверов и использование трафика, что помогает оперативно реагировать на изменения нагрузки.

  • Поддержка современных технологий безопасности: Панель интегрирована с TLS и новыми технологиями, такими как REALITY, что обеспечивает безопасность и устойчивость соединений.

  • Встроенный Telegram бот: Для удобного управления доступен встроенный Telegram бот, с помощью которого можно получать уведомления и выполнять команды прямо через мессенджер.

  • Интерфейс командной строки (CLI): Marzban также поддерживает управление через командную строку, что особенно полезно для опытных пользователей, предпочитающих текстовый интерфейс.

Установка

Используйте команду для установки панели Marzban:

sudo bash -c "$(curl -sL https://github.com/Gozargah/Marzban-scripts/raw/master/marzban.sh)" @ install

После установки Вы сможете наблюдать вывод логов. Остановить их можно нажав Ctrl+C. Все файлы Marzban будут сохранены в каталоге /opt/marzban, а основной файл конфигурации можно будет найти по адресу /opt/marzban/.env

Для создания учетной записи администратора введите команду:

sudo marzban cli admin create --sudo

Введите логин для нового аккаунта, пароль, повторите пароль. Затем система запросит Ваши Telegram ID и Discord Webook, это дополнительные настройки для управления, их можно пропустить нажав Enter. После чего Вы увидите сообщение об успешном создании аккаунта администратора.

Перейдите по ссылке http://SERVER_IP:8000/dashboard/ (замените SERVER_IP на IP-адрес Вашего сервера). Введите данные ранее созданного пользователя для авторизации.

На главной странице панели управления используйте кнопку "Create User" для создания нового пользователя.

Если требуется, Вы можете установить дневной лимит трафика (в ГБ), а также задать дату окончания действия данного пользователя. По умолчанию выбраны все протоколы, но мы оставим только VLESS, как наиболее удобный и надежный. Нажмите "Create User".

Настройка протокола Vless TCP Reality

Для качественной работы данного протокола необходимо:

  1. Добавить протокол Vless TCP Reality в панель Marzban

  2. Сменить Server Names (по умолчанию установлен example.com)

  3. Сменить Dest (по умолчанию установлен example.com:443)

  4. Смена ключа шифрования и параметра shortIds

  5. Исправление ошибки Timeout при подключении через приложение Hiddify

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

Начнем с добавления протокола Vless TCP Reality. Открываем данные настройки

Наблюдаем что в блоке "Inbounds" только Shadowsocks TCP, добавим Vless TCP Reality в начало блока после квадратной скобки.

{
      "tag": "VLESS TCP REALITY",
      "listen": "0.0.0.0",
      "port": 443,
      "protocol": "vless",
      "settings": {
        "clients": [],
        "decryption": "none"
      },
      "streamSettings": {
        "network": "tcp",
        "tcpSettings": {},
        "security": "reality",
        "realitySettings": {
          "show": false,
          "dest": "заменить:443",
          "xver": 0,
          "serverNames": [
            "заменить"
          ],
          "privateKey": "заменить",
          "shortIds": [
            "заменить"
          ]
        }
      },
      "sniffing": {
        "enabled": true,
        "destOverride": [
          "http",
          "tls",
          "quic"
        ]
      }
    },

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

После добавления протокола Vless TCP Reality требуется изменить значения: 1. ServerNames 2. Dest 3. Privatekey 4. shortIds

Сменим Server Name и Dest.

Подбор Server Name и Dest рекомендуем выполнять командой ping Чем ниже пинг до определенного сайта, тем меньше задержка при работающем соединении Необходимо выбирать надежные сайты, если сайт будет недоступен, соединения не будет. Обязательно выбирайте не популярные но надежные сайты в качестве Server Name и Dest для вашей конфигурации Vless TCP Reality.

Требования к сайту: 1. TLS 1.3 2. HTTP/2 3. Не должен находиться за CDN сервисом.

Проверить ping можно командами:

ping www.ign.com
ping cryptcheck.fr
ping github.com
ping telegram.org

В данном случае ping до сайта cryptcheck.fr оказался самым низким, выберем его в качестве Server Name и Dest, укажем их в данные строки

Сгенерируем новые ключи шифрования и параметр shortIds в командной строке вашего сервера командами

docker exec marzban-marzban-1 xray x25519
openssl rand -hex 8

Нам необходимо скопировать параметры Private key и shortIds после чего заменить их в панели

После внесения изменений, необходимо сохранить изменения, перезагрузить ядро и перезагрузить страницу в браузере.

На данном моменте Vless TCP Reality настроен.

Нам осталось убрать ошибку "Таймаут" при подключении через программу Hiddify.

Возвращаемся в конфигурацию панели и находим пункт "Routing".

Вставляем следующее правило в самое начало блока rules после квадратной скобки

{
        "outboundTag": "DIRECT",
        "domain": [
          "full:cp.cloudflare.com",
          "domain:msftconnecttest.com",
          "domain:msftncsi.com",
          "domain:connectivitycheck.gstatic.com",
          "domain:captive.apple.com",
          "full:detectportal.firefox.com",
          "domain:networkcheck.kde.org",
          "full:*.gstatic.com"
        ],
        "type": "field"
      },

После внесения изменений, необходимо их сохранить и перезагрузить ядро.

Подключение к прокси

Пользователь успешно создан. Далее скопируйте конфиг, используя кнопку, выделенную на скриншоте.

Для подключения с Windows / MacOS / Linux / Android мы рекомендуем использовать программу Hiddify. Скачать для любой из систем.

Для того, чтобы VPN работал полностью исправно и без нареканий, Вам потребуется установить запуск приложения от имени администратора в свойствах ярлыка.

После установки и запуска программы используйте кнопку "New Profile" и нажмите "Add From Clipboard" для вставки кода авторизации из буфера обмена. Перед этим убедитесь, что Вы его скопировали, как это показано выше.

После того, как мы вставили конфигурацию VPN необходимо перейти в Config Options, там нужно будет поменять удаленный и прямой DNS, а также режим работы.

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

Переходим на любой сайт, дабы проверить наш IP адрес и вуаля, мы переместились в другую страну!

Last updated