Собственный VPN сервер на Ubuntu 24.04LTS + 3X-UI — Скажи запретам — НЕТ

В этой статье я расскажу вам как поднять свой собственный VPN сервер на Ubuntu 24.04LTS, в моем случае я разворачиваю свою VDS машинку в Германии на Хостинге Nuxt.cloud

Неоправданная цензура и диктатура в средствах массовой информации и Интернете неуклонно растет изо дня в день, тот же ДЗЕН не является независимой площадкой и также блокирует статьи под предлогом якобы нарушающих закон.

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

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

Содержание статьи

  • Зачем использовать собственный VPN?
  • Почему 3X-UI
  • Возможности решения
  • Хостинговая площадка
  • Подготовка сервера
  • Установка 3X-UI
  • Настройка решения
  • Добавление учетных записей
  • Установка 3X-UI в Docker
  • Клиентские приложения
  • Подключение Windows клиентов
  • Клиентские браузеры
  • Тестируем работу Youtube и Rutracker.org
  • Заключение

Зачем использовать собственный VPN?

  • Для обеспечения конфиденциальности ваших коммуникаций и позволяет сохранить доступ к открытому Интернету.
  • При использовании VPN-провайдеров никто не даст вам гарантий относительно несанкционированного доступа к вашим данным.
  • Высокая производительность в режиме 24х7
  • Полная анонимность посещаемых ресурсов от сегмента российских провайдеров и лиц в погонах

Почему 3X-UI

3X-UI — это универсальная панель управления собственным VPN сервером, с поддержкой целого ряда протоколов: VLESS, VMESS, Trojan, Shadowsocks.

Решение имеет качественный установочный скрипт, а также консольный конфигуратор, с помощью которого можно:

В этом материале мы рассмотрим настройку и использование классического прокси сервера.

Возможности решения

  • Мониторинг состояния системы
  • Поиск по всем входящим и клиентским ресурсам
  • Темная/светлая тема
  • Поддержка многопользовательской и многопротокольной работы
  • Поддерживает протоколы, в том числе VMESS, VLESS, Trojan, Shadowsocks, Dokodemo-door, Socks, HTTP, wireguard
  • Поддержка нативных протоколов XTLS, включая RPRX-Direct, Vision, REALITY
  • Статистика трафика, лимит трафика, лимит по времени экспирации
  • Настраиваемые шаблоны конфигурации Xray
  • Поддерживает панель доступа HTTPS (самостоятельно предоставленное доменное имя + SSL-сертификат)
  • Поддержка приложения SSL-сертификата в один клик и автоматического продления
  • Для получения более подробной информации о параметрах конфигурации, пожалуйста, обратитесь к панели
  • Исправлены маршруты API (пользовательские настройки будут создаваться с помощью API)
  • Поддерживает изменение конфигураций по различным элементам, представленным в панели.
  • Поддерживает экспорт/импорт базы данных из панели

Хостинговая площадка

В качестве хостинг провайдера я пользуюсь услугами https://nuxt.cloud/ — оплата в рублях, хостинг площадки в Москве, Германии и Нидерландах.

Параметры виртуальной машины:

Подготовка сервера

Все действия в системе я произвожу под root:

sudo -s

Обновляем систему:

apt update -y && apt upgrade -y

Устанавливаем имя нашему серверу:

hostnamectl set-hostname vpn.tuning-admina.ru

Устанавливаем дополнительные пакеты:

apt install mc net-tools git curl -y

Перезагружаем машинку:

reboot

Установка 3X-UI

Запускаем установочный скрипт:

bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

Cкрипт скачивает архив и запускает процедуру установки, входе которого спрашивает нас, желаем ли мы задать порт для панели управления:

Указываем порт, я указываю порт по умолчанию 2053:

Скрипт выполнит установку и выдаст таблицу команд для конфигурирования и управления решением из консоли:

Заходим в меню скрипта управления:

x-ui

Вводим цифру 6 для смены имени учетной записи и пароля:

  • Cкрипт спросит нас действительно ли мы желаем сбросить значения пользователя и пароль, вводим: y
  • Вводим имя учетной записи: admin
  • Вводим пароль: P@ssw0rd
  • Скрипт спросит вы действительно желаете не использовать двухфакторную авторизацию, вводим: y
  • Будет предложено перезапустить панель управления, вводим: y

Вводим Enter для того, чтобы попасть в основное меню:

Вводим цифру 7 и 8 для сброса настроек и удаления Web Base Path, при этом учетные данные не сбрасываются, в обоих случаях подтверждаем сброс: y

Вводим цифру 18, для попадания в меню управления SSL сертификатами:

Нам будет предложено следующие возможности, выбирает 1 для получения SSL сертификата:

Вас попросят ввести ваше доменное имя, в моем случае это vpn.tuning-admina.ru:

По умолчания используется 80 порт, нажимаем Enter:

Видим, что мы благополучно получили SSL Сертификаты:

Нам будет предложено провести изменения, выбираем y:

Nginx у нас нету на борту, выбираем 0:

На этом установка и первичная настройка завершена.

Настройка решения

Так как у нас в панели управления решением не добавлены сертификаты, то в браузере переходим по адресу:

http://vpn.tuning-admina.ru:2053

Нас встречает dashboard с параметрами загруженности системы:

Первым делом прописываем пути к сертификатам FullChain и Privkey, переходим в меню Настройки —> Сертификаты:

Не забываем нажать Сохранить и Перезапуск панели:

Видим благополучно подцепленные сертификаты:

Приступаем к настройке VPN сервера, для этого переходим в раздел Инбаунды и нажимаем Создать инбаунд:

Выбираем протокол http, порт на ваше усмотрение и учетные записи для подключения и нажимаем Создать:

Добавление учетных записей

Переходим в раздел Инбаунды, видим созданное нами ранее настроенное по протоколу http подключение и чуть ниже названия столбца Меню нажимаем на три точки, выбираем Изменить:

В блоке настроек пользователей нажимаем +:

Указываем пользователей и нажимаем Обновить:

На этом настройка клиентских подключений со стороны сервера завершена.

Установка 3X-UI в Docker

Если вы любите гонять решения в Docker, то ниже исчерпывающая инструкция

Добавим GPG key от репозитория Docker:

Устанавливаем права на директорию:

install -m 0755 -d /etc/apt/keyrings

Скачиваем ключ репозитория:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

Меняем права на файл ключа репозитория:

chmod a+r /etc/apt/keyrings/docker.asc

Добавим репозиторий Docker:

echo \

«deb [arch=$(dpkg —print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \

$(. /etc/os-release && echo «$VERSION_CODENAME») stable» | \

tee /etc/apt/sources.list.d/docker.list > /dev/null

Обновим сведения о пакетах в репозиториях:

apt update

Устанавливаем Docker:

apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

Проверяем статус службы Docker:

systemctl status docker

Клонируем проект с GitHub:

git clone https://github.com/MHSanaei/3x-ui.git

Переходим в директорию проекта:

cd 3x-ui

Редактируем docker-compose.yml:

nano docker-compose.yml

version: «3»

services:

3x-ui:

image: ghcr.io/mhsanaei/3x-ui:latest

container_name: 3x-ui

hostname: vpn.tuning-admina.ru

volumes:

— $PWD/db/:/etc/x-ui/

— $PWD/cert/:/root/cert/

environment:

XRAY_VMESS_AEAD_FORCED: «false»

tty: true

network_mode: host

restart: unless-stopped

Сохраняем файл, выходим из редактора:

CTRL+O, CTRL+X

Создаем и запускаем контейнер:

docker compose up -d

Переходим в панель по адресу:

https://vpn.tuning-admina.ru:2053

Login: admin

Pass: admin

Клиентские приложения

Для всех основных платформ существуют клиентские приложения:

Подключение Windows клиентов

На клиентском компьютере под операционной системой Windows находим пункт меню Параметры прокси-сервера:

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

Клиентские браузеры

Клиентские браузеры по умолчанию берут системные настройки прокси сервера, поэтому единственное, что вам потребуется это указать учетную запись

Тестируем работу Youtube и Rutracker.org

Открываем браузер и проверяем свою геолокацию

Проходим по ссылке: https://2ip.ru/

Тестирую производительность канала:

На данном тарифе гарантированная ширина канала не превышает 100мбит, мне для тестовых и личных целей более чем за глаза.

Проверяем работу ресурсов и убеждаемся, что все работает:

Заключение

Спасибо что дочитали до конца. Надеюсь вам понравилась статья и она окажется для вас полезной и продуктивной.

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх