eco Начальный Туториал

Установка и настройка сервера RustDesk на VPS: создание защищённой альтернативы TeamViewer

calendar_month Май 10, 2026 schedule 9 мин. чтения visibility 48 просмотров
Установка и настройка сервера RustDesk на VPS: создание защищённой альтернативы TeamViewer
info

Нужен сервер для этого гайда? Мы предлагаем выделенные серверы и VPS в 50+ странах с мгновенной настройкой.

Нужен сервер для этого гайда?

Разверните VPS или выделенный сервер за минуты.

Установка и настройка сервера RustDesk на VPS: создание защищённой альтернативы TeamViewer

TL;DR

В данном руководстве мы рассматриваем процесс развёртывания собственного сервера RustDesk (ID и Relay серверы) на виртуальном сервере под управлением Linux. Это позволяет полностью отказаться от сторонних проприетарных решений, таких как TeamViewer или AnyDesk, обеспечивая максимальную приватность, отсутствие ограничений по времени сессий и минимальную задержку (latency) за счёт размещения сервера в оптимальной локации. Мы настроим серверную часть через Docker Compose, защитим соединение с помощью шифрования NaCl и настроим брандмауэр для безопасной работы в 2026 году.

  • Полный контроль: Ваши данные и ID-адреса не проходят через централизованные серверы разработчиков.
  • Производительность: Использование собственного Relay-сервера исключает лаги, характерные для бесплатных публичных серверов.
  • Безопасность: Принудительное шифрование и работа через закрытый ключ исключают несанкционированный доступ.
  • Экономия: Self-hosted решение на базе VPS обходится в разы дешевле корпоративных лицензий коммерческого ПО.
  • Гибкость: Возможность кастомизации под нужды команды или личного использования.

1. Что мы настраиваем и зачем: преимущества RustDesk

Схема: 1. Что мы настраиваем и зачем: преимущества RustDesk
Схема: 1. Что мы настраиваем и зачем: преимущества RustDesk

В условиях современной цифровой среды инструменты удалённого доступа стали критически важными как для бизнеса, так и для частных пользователей. Однако популярные решения вроде TeamViewer, AnyDesk или Microsoft Remote Desktop (RDP) имеют ряд существенных недостатков: от высокой стоимости лицензий до внезапных блокировок сессий и потенциальных рисков безопасности, связанных с хранением данных на чужих серверах. RustDesk — это open-source альтернатива, которая позволяет развернуть собственную инфраструктуру удалённого рабочего стола.

Основная задача, которую мы решаем в этом гайде — это установка серверных компонентов hbbs (ID-сервер для регистрации клиентов) и hbbr (Relay-сервер для передачи трафика, если прямое P2P соединение невозможно). Когда вы используете публичные серверы RustDesk, вы делите ресурсы с тысячами других пользователей, что приводит к задержкам. Собственный сервер на VPS гарантирует, что вся полоса пропускания принадлежит только вам.

Почему стоит выбрать self-hosted решение на VPS:

  • Приватность: Список ваших устройств и история подключений хранятся только на вашем сервере.
  • Отсутствие NAT-проблем: VPS с белым IP-адресом выступает в роли посредника, позволяя подключаться к компьютерам за сложными роутерами и корпоративными файрволами.
  • Скорость: Выбирая сервер в ближайшем дата-центре, вы минимизируете задержку ввода, что критично для комфортной работы.

2. Какой VPS-конфиг нужен под эту задачу

Схема: 2. Какой VPS-конфиг нужен под эту задачу
Схема: 2. Какой VPS-конфиг нужен под эту задачу

RustDesk — чрезвычайно легковесное программное обеспечение. Основная нагрузка ложится на сеть, а не на процессор или диск. Тем не менее, для стабильной работы под управлением современных дистрибутивов Linux (например, Ubuntu 24.04 или 26.04 LTS) требуются определённые ресурсы.

Характеристика Минимальные требования Рекомендуемые (для команд)
Процессор (CPU) 1 ядро (Shared) 2 ядра (Dedicated threads)
Оперативная память (RAM) 1 ГБ 2-4 ГБ
Дисковое пространство 10 ГБ SSD/NVMe 40 ГБ SSD (для логов и записей сессий)
Сеть 100 Мбит/с, безлимитный трафик 1 Гбит/с, приоритетный канал
IP-адрес 1 x IPv4 (обязательно) IPv4 + IPv6

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

Когда стоит задуматься о Dedicated сервере? Если вы планируете использовать RustDesk для трансляции высококачественного видео, работы с тяжелой графикой через удалённый стол в режиме 24/7 или если количество одновременных сессий превышает 50-100. В остальных случаях виртуализация (KVM) справляется идеально.

Локация сервера: Это важнейший параметр. Если вы находитесь в Москве, а подключаетесь к компьютеру в Берлине, сервер лучше располагать в одной из этих точек или посередине (например, в Варшаве). Чем ниже пинг между клиентом, сервером и хостом, тем меньше будет "отзывчивость" курсора мыши.

3. Подготовка сервера: базовые настройки безопасности

Схема: 3. Подготовка сервера: базовые настройки безопасности
Схема: 3. Подготовка сервера: базовые настройки безопасности

Перед установкой RustDesk необходимо подготовить операционную систему. Мы будем использовать Ubuntu как наиболее стандартный и документированный дистрибутив.

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


sudo apt update && sudo apt upgrade -y

Создадим отдельного пользователя с правами sudo, чтобы не работать под root. Это стандарт безопасности 2026 года:


# Создаем пользователя
sudo adduser rustadmin
# Добавляем в группу sudo
sudo usermod -aG sudo rustadmin
# Переключаемся на пользователя
su - rustadmin

Настройка брандмауэра (UFW) — критический этап. RustDesk использует несколько портов для разных задач. Нам нужно открыть их:

  • 21115 (TCP): NAT-тестирование.
  • 21116 (TCP/UDP): Основной ID-сервер (TCP — для запросов, UDP — для heartbeat/ID регистрации).
  • 21117 (TCP): Relay-сервер (передача данных).
  • 21118/21119 (TCP): Веб-клиент и поддержка WebSocket (если планируете использовать браузерную версию).

sudo ufw allow 22/tcp
sudo ufw allow 21115:21119/tcp
sudo ufw allow 21116/udp
sudo ufw enable

Для защиты от брутфорса SSH рекомендуем установить Fail2Ban:


sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

4. Установка Docker и необходимых зависимостей

Схема: 4. Установка Docker и необходимых зависимостей
Схема: 4. Установка Docker и необходимых зависимостей

Использование Docker — наиболее надежный способ развертывания RustDesk. Это изолирует приложение от системы и упрощает процесс обновления. В 2026 году Docker Compose является стандартом де-факто для оркестрации небольших self-hosted сервисов.

Установим Docker через официальный репозиторий:


# Установка зависимостей
sudo apt install ca-certificates curl gnupg lsb-release -y

# Добавление ключа GPG
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# Настройка репозитория
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Установка Docker Engine
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y

Проверим корректность установки:


docker --version && docker compose version

5. Пошаговая установка сервера RustDesk (hbbs и hbbr)

Схема: 5. Пошаговая установка сервера RustDesk (hbbs и hbbr)
Схема: 5. Пошаговая установка сервера RustDesk (hbbs и hbbr)

Мы создадим директорию для проекта и опишем конфигурацию в файле docker-compose.yml. Это позволит запускать оба необходимых компонента одной командой.


mkdir ~/rustdesk-server && cd ~/rustdesk-server
nano docker-compose.yml

Вставьте следующее содержимое в файл. Замените rustdesk.example.com на IP вашего VPS или ваш домен:


version: '3'

services:
  hbbs:
    container_name: hbbs
    image: rustdesk/rustdesk-server:latest
    command: hbbs -r rustdesk.example.com:21117 -k _
    volumes:
      - ./data:/root
    network_mode: host
    depends_on:
      - hbbr
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - ./data:/root
    network_mode: host
    restart: unless-stopped

Разбор параметров:

  • hbbs -r <host>:21117: Указывает ID-серверу адрес Relay-сервера. Это критично для корректной маршрутизации трафика.
  • -k _: Этот флаг заставляет сервер требовать обязательное использование публичного ключа при подключении клиентов. Это защищает ваш сервер от несанкционированного использования посторонними лицами.
  • network_mode: host: Используется для максимальной производительности и избежания проблем с пробросом UDP-портов внутри Docker-сети.

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


docker compose up -d

6. Настройка шифрования и авторизации по ключу

Схема: 6. Настройка шифрования и авторизации по ключу
Схема: 6. Настройка шифрования и авторизации по ключу

После первого запуска в директории ./data появятся ключи шифрования. Нам нужен файл с расширением .pub. Именно этот ключ мы будем вводить в настройках клиента.


cat ./data/id_ed25519.pub

Скопируйте вывод этой команды. Без этого ключа никто не сможет подключиться через ваш сервер, даже если знает его IP-адрес. Это реализует архитектуру Zero-Trust, где сервер является лишь посредником, не имеющим доступа к содержимому сессии.

Почему это важно? В публичных версиях RustDesk шифрование может быть опциональным. В нашей конфигурации мы сделали его обязательным. Весь трафик между оператором и удаленным хостом шифруется с помощью библиотеки NaCl (libsodium), что делает перехват данных бессмысленным.

7. Тонкая настройка клиента и оптимизация сети

Схема: 7. Тонкая настройка клиента и оптимизация сети
Схема: 7. Тонкая настройка клиента и оптимизация сети

Теперь, когда сервер запущен, необходимо настроить клиентское приложение на устройствах (Windows, macOS, Linux, Android или iOS).

  1. Откройте RustDesk на вашем компьютере.
  2. Перейдите в Настройки (Settings) -> Сеть (Network).
  3. Нажмите "Разблокировать настройки сети" (Unlock network settings).
  4. В поле ID-сервер (ID Server) введите IP-адрес или домен вашего VPS.
  5. В поле Relay-сервер (Relay Server) введите тот же адрес (порт 21117 подставится автоматически, если не указано иное).
  6. В поле Key вставьте содержимое файла id_ed25519.pub, которое мы получили на предыдущем шаге.
  7. Нажмите "Применить" (Apply).

Если всё настроено верно, в нижней части окна RustDesk появится статус "Ready" с зеленым индикатором. Теперь вы можете передать этот же ID и пароль (или настроить постоянный пароль) для доступа к удаленному устройству.

Оптимизация для медленных соединений: Если вы работаете через мобильный интернет, в настройках сессии выберите кодек VP9 или AV1 (если поддерживается оборудованием) и установите режим "Optimize reaction time". Это снизит битрейт, сохранив отзывчивость интерфейса.

8. Бэкапы, мониторинг и обслуживание системы

Схема: 8. Бэкапы, мониторинг и обслуживание системы
Схема: 8. Бэкапы, мониторинг и обслуживание системы

Сервер RustDesk практически не требует обслуживания, но для обеспечения надежности 99.9% стоит внедрить базовые практики эксплуатации.

Бэкап данных

Самое важное — сохранить ключи и базу данных ID. Если вы потеряете файл id_ed25519 (приватный ключ), вам придется перенастраивать все клиенты заново, так как публичный ключ изменится.


# Простой скрипт бэкапа в архив
tar -czvf rustdesk_backup_$(date +%F).tar.gz ~/rustdesk-server/data

Рекомендуется настроить cron задачу для еженедельного копирования этого архива на внешнее хранилище (например, S3 или другой VPS).

Обновление сервера

Чтобы обновить RustDesk до последней версии, достаточно выполнить:


cd ~/rustdesk-server
docker compose pull
docker compose up -d

Мониторинг

Для отслеживания состояния сервера можно использовать простую проверку портов. Если порт 21116 (UDP) не отвечает, значит, ID-сервер упал и клиенты не смогут найти друг друга.

9. Troubleshooting + FAQ: решение типичных проблем

Почему статус клиента "Not Ready"?

Чаще всего это связано с закрытыми портами на стороне VPS. Убедитесь, что ваш провайдер не блокирует входящий трафик на уровне внешней панели управления (Security Groups). Проверьте статус UFW: sudo ufw status. Также убедитесь, что в настройках клиента в поле Key нет лишних пробелов или символов переноса строки.

Какая задержка считается нормальной?

При работе внутри одного региона (например, Европа-Европа) задержка должна составлять 20-50 мс. Если пинг выше 150 мс, работа будет некомфортной. В этом случае проверьте загрузку CPU на VPS и убедитесь, что вы не используете публичный Relay-сервер по ошибке.

Можно ли использовать домен вместо IP?

Да, это рекомендуется. Если IP вашего VPS изменится, вам не придется перенастраивать все клиенты. Просто обновите A-запись в DNS вашего домена.

Как ограничить список лиц, имеющих доступ к серверу?

RustDesk Server Pro (платная версия) поддерживает детальные ACL. В бесплатной версии, которую мы установили, защита строится на знании Key. Не передавайте публичный ключ третьим лицам. Дополнительно можно ограничить доступ на уровне UFW, разрешив подключения только с определенных IP-адресов, если они у вас статические.

Какой VPS-конфиг минимально подойдёт?

Минимально достаточно 1 ядра CPU и 1 ГБ оперативной памяти. RustDesk написан на Rust, что обеспечивает высокую эффективность использования памяти. Основной ресурс — это пропускная способность сети. Для комфортной работы 2-3 одновременных пользователей хватит даже самого бюджетного тарифа.

Что выбрать — VPS или dedicated для этой задачи?

Для 95% сценариев (личная поддержка, администрирование до 200 ПК) VPS — идеальный выбор. Dedicated сервер стоит рассматривать только если вы строите глобальный сервис удаленной поддержки с тысячами одновременных сессий, где требуется гарантированная полоса пропускания в 1-10 Гбит/с без влияния "соседей" по гипервизору.

10. Выводы и следующие шаги

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

В качестве следующих шагов по оптимизации инфраструктуры рекомендуем:

  • Настроить собственный Address Book (адресную книгу), если у вас много устройств.
  • Развернуть веб-клиент для доступа к рабочим столам прямо из браузера без установки ПО.
  • Интегрировать мониторинг (например, Prometheus + Grafana) для отслеживания сетевого трафика и нагрузки на Relay-сервер.

Помните, что безопасность self-hosted решений — это постоянный процесс. Регулярно обновляйте Docker-образы и следите за обновлениями безопасности вашей операционной системы на VPS.

Поделиться этой записью:

установка и настройка сервера rustdesk на vps: создание защищённой альтернативы teamviewer
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.