Skip to content

Развертывание прокси протокола VLESS с помощью Marzban

1. Создание личного прокси за несколько минут

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

1.1. Покупка необходимого тарифа с предустановленным Marzban

Для этого нам потребуется купить необходимый сервер в желаемой локации. В нашем случае это будет базовый тариф SWEs-1 в Швеции

Переходим в раздел «Предустановленного ПО»

В предустановленном ПО выбираем скрипт Marzban

Информация

Установка ОС будет произведена согласно указанной ОС в скрипте предустановленного ПО, в данном случае будет установлен Ubuntu 22.04 + Marzban

Выбираем желаемый срок аренды сервера, при необходимости отключаем услугу «Бекапы» и жмём кнопку "Оплатить":

Отлично

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

1.2. Переустановка существующего сервера с выполнением установки скрипта Marzban

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

Вы увидите данное меню, в котором перейдем во вкладку «Предустановленного ПО»

Выбираем скрипт Marzban, указываем новый пароль от сервера, нажимаем переустановить

Информация

Переустановка ОС будет произведена согласно указанной ОС в скрипте предустановленного ПО, в данном случае будет установлен Ubuntu 22.04 + Marzban

Отлично

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

Информация

Вы так же можете обратиться в поддержку для помощи в установке данного ПО.

2. Получение данных для входа в Marzban

Подключаемся к серверу посредством WinSCP (или другого удобного вам SFTP клиента) и указанием IP, логина и пароля из личного кабинета, либо письма с вашей почты.

В корневом каталоге необходимо открыть файл "marzban.txt" с данными для подключения к панели управления Marzban:

Важно

В связи с последними обновлениями безопасности, есть два варианта доступа в панель:

  1. Через SSH-Туннель
  2. Через привязку доменного имени к серверу и получении SSL сертификата

Рассмотрим оба случая

2.1. Вход в панель через SSH-туннель

Для входа в панель без использования SSL сертификата и доменного имени, нам требуется создать туннель.

Команда для создания туннеля строится следующим образом:

shell
ssh -L {локальный порт}:{удалённый хост}:{удалённый порт} {пользователь}@{адрес сервера}

В нашем случае команда выглядит следующим образом:

shell
ssh -L 8000:localhost:8000 root@IP_сервера

Информация

Для Windows систем команду необходимо вводить в командной строке (cmd). Для Linux и MacOS - в терминале.

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

Теперь панель должна быть доступна в браузере по ссылке: http://127.0.0.1:8000/dashboard/

Рассмотрим способ получения доступа к панели с мобильных устройств.

Нам потребуется программа Termius:

После установки переходим в нее и первый раз авторизуемся на сервере через SSH, после чего выходим в главное меню и выбираем вкладку "Port Forwarding"

В нижнем углу нажимаем "+" после чего выбираем Local и нажимаем Continue

Выбираем сервер из списка, после чего указываем следующие данные:

Задаем имя данному туннелю и нажимаем на "Галочку" чтобы сохранить настройки:

Активируем туннель путем нажатия на данное правило:

Теперь панель должна быть доступна в браузере по ссылке: http://127.0.0.1:8000/dashboard/

Важно

Если пароль из файла marzban.txt не подошел, необходимо создать юзера командой ниже, после чего введите имя пользователя и пароль, остальные пункты можно пропустить клавишей Enter.

shell
sudo marzban cli admin create --sudo

После входа мы увидим главную страницу панели:

2.2. Вход в панель Marzban через HTTPS

Для входа в панель Marzban через браузер без настройки SSH Туннелей требуется:

  1. Приобрести и привязать доменное имя к серверу с панелью Marzban (возможно использование собственного доменного имени)
  2. Выпустить SSL сертификат для доменного имени и указать сертификат в конфигурации панели Marzban

Информация

Вы можете быстро и легко приобрести домен у нас на сайте за несколько минут - https://my.aeza.net/order/domain

Если доменное имя уже имеется либо приобретено в другом месте, нужно добавить A-запись направленную на сервер с панелью Marzban

Правильно добавленная А-запись выглядит следующим образом:

После установки А-записи, необходимо дождаться обновления данных в глобальной сети: Обычно это происходит в течении 5-15 минут, но иногда время обновления DNS-записей занимает до 24 часов.

Проверить обновление данных в сети можно в различных сервисах, например: https://dnschecker.org

После глобального обновления доменного имени, переходим в SSH-консоль сервера и выпустим SSL-сертификат с использованием скрипта Acme.sh

Ниже пошагово указаны команды для получения SSL-сертификата через Acme.sh:

shell
sudo apt install cron socat
shell
curl https://get.acme.sh | sh -s email=Ваша почта
shell
sudo mkdir -p /var/lib/marzban/certs/

Важно

В команде ниже необходимо обязательно указать Ваше используемое доменное имя после параметра -d

shell
~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --standalone -d Ваше_доменное_имя \
 --key-file /var/lib/marzban/certs/key.pem \
 --fullchain-file /var/lib/marzban/certs/fullchain.pem

После выполнения команд вы увидите подобное сообщение о успешном выпуске сертификата:

Важно

Данный сертификат действует 3 месяца. Для автоматического продления его через cron, требуется оставить открытым 80 порт.

Откроем конфигурационный файл панели через редактор nano и укажем пути до SSL-сертификата:

shell
nano /opt/marzban/.env

После внесения изменений, сохраняем файл и перезагружаем панель командой:

shell
marzban restart

После перезапуска переходим в браузер по ссылке https://доменное_имя:8000/dashboard и наблюдаем окно входа в панель Marzban:

Важно

Если пароль из файла marzban.txt не подошел, необходимо создать юзера командой ниже, после чего введите имя пользователя и пароль, остальные пункты можно пропустить клавишей Enter.

shell
sudo marzban cli admin create --sudo

После входа мы увидим главную страницу панели:

2.3. Настройка протокола Vless TCP Reality в панели Marzban и создание пользователя

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

  1. Добавить протокол Vless TCP Reality в панель Marzban
  2. Сменить Server Names (по умолчанию установлен example.com)
  3. Сменить Dest (по умолчанию установлен example.com:443)
  4. Смена ключа шифрования и параметра shortIds
  5. Фикс ошибки Timeout при подключении через приложение Hiddify
  6. Создание пользователя

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

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

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

json
{
      "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 можно командами:

shell
ping www.ign.com -c 4
shell
ping cryptcheck.fr -c 4
shell
ping github.com -c 4
shell
ping telegram.org -c 4

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

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

shell
docker exec marzban_marzban_1 xray x25519

Если вышла ошибка, попробуйте другую команду:

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

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

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

Отлично

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

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

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

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

json
{
        "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"
      },

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

Создадим пользователя в панели Marzban и выберем протокол Vless TCP Reality

Копируем ключ подключения к нашему серверу данным образом и переходим в третий пункт "Подключение ключа в клиент VLESS"

Отлично

Готово. Вы создали пользователя для подключения к Вашему серверу, применили обязательные параметры, исправили ошибку "Таймаут"

3. Подключение ключа в клиент VLESS

Для ключей VLESS есть несколько приложений для подключения:

  1. Hiddify (для Операционных систем Windows, Android, Linux)
  2. Streisand (MacBook на процессорах от M1 и выше, iPhone, iPad)

Рассмотрим подключение для каждого приложения из списка.

3.1. Hiddify

Информация

Репозиторий Github в котором необходимо выбрать приложение под Вашу операционную систему:

https://github.com/hiddify/hiddify-next/releases

Приложение на Android можно установить через Google Play:

https://play.google.com/store/apps/details?id=app.hiddify.com

Необходимо скопировать ключ из панели, запускаем приложение Hiddify и кликаем новый профиль:

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

Нажимаем кнопку «Нажмите для подключения», с этого момента ваш IP адрес изменится на IP адрес вашего сервера.

Важно

Если после подключения к вашему серверу происходят ошибки, рекомендуем произвести следующие настройки

Отключим Регион "Россия" и включим режим VPN (по умолчанию установлен режим Системный прокси)

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

После данного действия, перезапускаем приложение и включаем режим VPN

Отлично

Готово. Приложение настроено.

3.2. Streisand

Информация

Данное приложение можно скачать по ссылке: https://apps.apple.com/ru/app/streisand/id6450534064

Необходимо скопировать ключ из панели, запускаем приложение Streisand и кликаем на знак «+» в правом верхнем углу:

Выбираем пункт «Добавить из буфера обмена», после чего ключ добавлен:

Нажимаем кнопку включения VPN, с этого момента ваш IP адрес изменится на IP адрес вашего сервера.

Приятного использования!

AézaWiki © 2024