Удалённый доступ к рабочему столу Raspberry Pi: VNC и RDP
Кратко
Если нужно просматривать рабочий стол Raspberry Pi удалённо или использовать одну клавиатуру/мышь для двух устройств, используйте VNC или RDP. VNC удобен для удалённого доступа к текущей сессии рабочего стола; RDP даёт отдельную сессию и хорошо интегрируется с Windows. В статье — пошаговые инструкции по настройке, советы по безопасности, оптимизации и подбор по типичному сценарию использования.

Верхняя фотография: человек использует ноутбук для доступа к удалённому рабочему столу на другом компьютере.
VNC (Virtual Network Computing) и RDP (Remote Desktop Protocol) — это протоколы для удалённого отображения и управления рабочим столом. Оба работают по схеме «сервер — клиент»: сервер упаковывает содержимое экрана и отправляет данные, клиент распаковывает и отображает их локально.
Короткие определения
- VNC: протокол уровня отображения, чаще показывает именно текущую сессию рабочего стола на сервере. Подходит для совместной работы на одном аккаунте.
- RDP: протокол удалённого рабочего стола (разработан Microsoft), обычно создаёт отдельную сессию и обеспечивает более тонкое управление ресурсами и сжатие.
Когда выбрать что
- Если нужен быстрый доступ к уже запущенной сессии на Raspberry Pi — VNC.
- Если требуется отдельная сессия или тесная интеграция с Windows-клиентом — RDP.
Важно: термин “сервер“ в контексте VNC/RDP — это Raspberry Pi, который предоставляет рабочий стол; клиент — устройство, с которого вы подключаетесь.
Быстрый обзор различий
- Совместимость: VNC — кроссплатформенный; RDP — отлично работает с Windows-клиентом.
- Сессии: VNC отображает текущую сессию; RDP может создавать отдельную.
- Лицензирование: RealVNC на Raspberry Pi OS бесплатен; на других дистрибутивах возможны ограничения.
Подготовка: что учесть перед настройкой
- Обновите систему: sudo apt update && sudo apt upgrade -y.
- Решите, будет ли Pi «headless» (без монитора). Это влияет на разрешение и поведение VNC.
- Выберите стабильное сетевое подключение: Ethernet (желательно гигабит) для лучшей производительности.
- Подготовьте учётные данные: SSH-доступ и пароль пользователя.
VNC Server уже предустановлен в Raspberry Pi OS. Чтобы включить его через графический интерфейс:
- Перейдите в Menu > Preferences и откройте Raspberry Pi Configuration.
- Перейдите на вкладку Interfaces.
- Переключите тумблер рядом с VNC в положение Enabled.
- В строке меню появится иконка VNC — она показывает статус сервиса.
Если у вас headless Pi и вы подключены по SSH, используйте raspi-config:
sudo raspi-configДалее выберите Interfacing Options > VNC > Yes.
Примечание: raspi-config — удобный инструмент для базовой настройки без GUI.
По умолчанию для headless-сцен VNC может выдавать низкое разрешение (640×480). Чтобы задать нужное разрешение:
- В графическом интерфейсе: Raspberry Pi Configuration > Display — выберите предпочтительное разрешение для VNC.
- В raspi-config: Display Options > VNC Resolution — выберите требуемый размер и перезагрузите Pi.
Совет: для работы с графикой и видео используйте как минимум 1280×720; для полноценной работы — 1920×1080 (если хватает ресурсов).
Откройте терминал и выполните:
hostname -IКоманда вернёт IP-адреса интерфейсов (например: 192.168.1.42). Используйте этот адрес в клиенте VNC или RDP.
- Скачайте и установите VNC Viewer от RealVNC (лучше для совместимости с сервером на Pi).
- Откройте VNC Viewer → File → New Connection.
- В поле VNC Server введите IP-адрес Pi и задайте понятное имя соединения.
- Дважды кликните по записи, введите логин и пароль от учётной записи Raspberry Pi.
- При необходимости отметьте Remember password.
После аутентификации вы увидите рабочий стол Pi в окне Viewer.
Для Linux также доступен VNC Viewer от RealVNC в виде .deb-пакета (x86/x64). Процесс установки:
- Скачайте подходящий .deb-файл.
- Установите через пакетный установщик (например, через GDebi или dpkg -i).
- Запустите приложение и выберите Use RealVNC viewer without signing in.
- Создайте новое подключение, укажите IP и данные учётной записи.
Если хотите управлять качеством картинки, в VNC Viewer: Options → Picture quality → выберите Automatic/High/Medium/Low.
RDP-сервер не предустановлен в Raspberry Pi OS. Чтобы поставить xrdp:
sudo apt update
sudo apt install xrdp -yxrdp автоматически запустится как сервис после установки.
Создайте отдельного пользователя для RDP-сессий (рекомендуется):
sudo adduser <имя_пользователя>Задайте пароль и дополнительные данные. RDP обычно использует сессию Xorg — убедитесь, что в конфиге xrdp указана поддержка Xorg.
- На Windows откройте приложение “Подключение к удалённому рабочему столу” (mstsc).
- Введите IP-адрес Raspberry Pi и нажмите Connect.
- При первом подключении может появиться предупреждение о проверке удостоверения — можно снять галочку “Do not ask me again for connections to this computer” (или локализованный эквивалент) для отключения предупреждения в будущем.
- Введите имя пользователя и пароль того учётного записи, которую вы создали для RDP.
- Убедитесь, что тип сессии — Xorg, если система запрашивает выбор.
Remmina — популярный клиент для Linux с поддержкой RDP и VNC.
sudo apt update
sudo apt install remmina -y- Запустите Remmina → New connection profile.
- В поле Protocol выберите RDP.
- Укажите IP-адрес, имя пользователя и пароль.
- Сохраните профиль и подключитесь.
По умолчанию VNC разрывает неактивные соединения через час. Чтобы изменить поведение:
- На Pi щёлкните правой кнопкой по иконке VNC в верхнем меню.
- Выберите Options → Expert.
- Найдите параметр IdleTimeout и укажите значение в миллисекундах (например, 0 для отключения авторазрыва или 3600000 для часа).
- Нажмите Apply → OK.
Важно: отключение таймаута может повысить риск оставления открытой сессии без присмотра.
В VNC Viewer (Options → Picture quality) доступны профили качества:
- High — минимальное сжатие, высокая нагрузка на сеть, меньше на CPU (сервер выполняет меньше сжатия).
- Medium — компромисс между качеством и пропускной способностью.
- Low — сильное сжатие, низкая пропускная способность, возможные артефакты.
Рекомендации:
- Если Pi и клиент в одной локальной сети по гигабитному Ethernet — ставьте High и получите хорошее качество видео.
- Для удалённого подключения по интернету — Medium или Low в зависимости от скорости.
- Для максимальной производительности используйте проводное соединение вместо Wi‑Fi.
Совет: если вы используете одну машину для просмотра, подумайте о прямом соединении по кроссоверному кабелю для минимизации задержек.
- Всегда используйте надёжные пароли для учётных записей.
- По возможности отключите доступ под root для удалённых сессий.
- Ограничьте доступ по IP в файрволе (ufw/iptables): разрешайте подключения только с доверенных сетей.
- Используйте SSH-туннелирование VNC для шифрования трафика: пробрасывайте порт VNC через зашифрованное SSH-соединение.
Пример SSH-туннеля для VNC (на клиенте):
ssh -L 5901:localhost:5900 pi@Далее подключайтесь локально к localhost:5901 в VNC Viewer.
- Рассмотрите установку fail2ban для защиты от брутфорса и ограничьте количество попыток входа.
- Регулярно обновляйте систему и пакеты.
- VNC Server использует CPU для сжатия экрана; высокая настройка качества снижает нагрузку на CPU, но увеличивает трафик.
- На старых моделях Pi (например, Pi 1/Zero) ожидайте заметных задержек при высоком разрешении или видео.
- Для интенсивных графических задач лучше использовать Pi 4 или новее с достаточным объёмом RAM.
- Если требуется высокопроизводительное мультимедиа (игры, потоковое видео) через слабый Pi — качество будет ограничено.
- Когда нужна отдельная сессия на сервере — RDP чаще предпочтительнее.
| Критерий | VNC | RDP |
|---|---|---|
| Отображение текущей сессии | Да | Нет (обычно отдельная) |
| Совместимость с Windows | Хорошая | Отличная |
| Стандарт на Raspberry Pi OS | Предустановлен | Требует установки |
| Шифрование | Встроено у RealVNC | Зависит от реализации/SSH-туннеля |
| Латентность для видео | Может быть выше | Часто ниже при оптимальной настройке |
Критерии приёмки
- Успешное подключение клиент → рабочий стол Raspberry Pi.
- Отображение графической оболочки и отклик на ввод (клавиатура/мышь).
- При RDP: новая пользовательская сессия создаётся и авторизуется.
- При VNC: возможность просмотра текущей сессии пользователя на Pi.
- Сохранение соединения в пределах ожидаемого времени без аварий.
Тесты
- Подключение из той же локальной сети (Ethernet).
- Подключение из другой подсети через маршрутизатор.
- SSH-туннель для VNC и проверка шифрования (tcpdump/wireshark).
- Замер задержки и качества при переключении Picture quality.
- Обновить систему: sudo apt update && sudo apt upgrade -y.
- Включить VNC (если нужен) через raspi-config или GUI.
- Установить xrdp при необходимости: sudo apt install xrdp -y.
- Создать отдельного пользователя для RDP.
- Настроить разрешение экрана для headless-режима.
- Настроить firewall: sudo ufw allow from
to any port 5900 proto tcp (для VNC) и 3389 для RDP. - Включить fail2ban и настроить правила для защиты.
- Протестировать подключение и записать параметры в документацию.
- Включить VNC через CLI:
sudo raspi-config
# Interfacing Options → VNC → Yes- Установить xrdp:
sudo apt update
sudo apt install xrdp -y- Узнать IP-адрес:
hostname -I- Создать пользователя для RDP:
sudo adduser <имя_пользователя>- SSH-туннель для VNC:
ssh -L 5901:localhost:5900 pi@- Домашняя автоматизация (headless): VNC с разрешением 1280×720, среднее качество.
- Образовательные проекты (несколько студентов): VNC для демонстрации одной сессии.
- Удалённая разработка (по SSH + X forwarding): чаще хватает SSH; используйте VNC/RDP при необходимости GUI.
- Администрирование сервера: SSH + терминальные инструменты лучше и безопаснее, чем постоянный VNC.
Если после настройки VNC/RDP возникают проблемы:
- Перезапустите сервисы:
sudo systemctl restart vncserver-x11-serviced
sudo systemctl restart xrdp- Проверьте логи:
- VNC: /var/log/syslog или пользовательские логи RealVNC.
- xrdp: /var/log/xrdp-sesman.log и /var/log/xrdp.log.
- Откат конфигурации: восстановите предыдущую версию /etc/ или удалите пакет (sudo apt remove –purge xrdp).
- Невозможно подключиться по IP: проверьте, что Pi в сети, и адрес введён верно (hostname -I).
- Авторизация не проходит: убедитесь, что вы используете правильный логин и пароль; для RDP — учётная запись должна существовать.
- Низкое разрешение при headless: настройте VNC Resolution в raspi-config.
- Высокая нагрузка на CPU: снизьте Picture quality или уменьшите разрешение.
flowchart TD
A[Нужно подключиться к Raspberry Pi?] --> B{Есть физический доступ к монитору?}
B -- Да --> C[Используйте GUI и локально включите VNC]
B -- Нет --> D{Нужна текущая сессия или новая?}
D -- Текущая --> E[Используйте VNC 'RealVNC']
D -- Новая --> F[Используйте RDP 'xrdp']
E --> G{Подключение из Windows?}
G -- Да --> H[Рекомендуется VNC Viewer]
G -- Нет --> I[Используйте VNC Viewer для Linux или другой клиент]
F --> J{Требуется шифрование?}
J -- Да --> K[Проброс RDP через VPN/SSH]
J -- Нет --> L[Подключение напрямую с ограничением по IP]Администратор
- Обновил систему
- Включил желаемый сервер (VNC/xrdp)
- Настроил firewall и fail2ban
- Задал разрешения доступа и создал пользователей
- Задокументировал IP, порты и учётные записи
Пользователь
- Имеет VNC/RDP клиент
- Знает IP и учётные данные
- Проверил сетевое подключение
- VNC — протокол удалённого отображения существующего рабочего стола.
- RDP — протокол удалённого рабочего стола с поддержкой отдельных сессий (Microsoft).
- Headless — Raspberry Pi работает без подключённого монитора.
- SSH-туннель — зашифрованный канал для перенаправления портов.
VNC удобен для просмотра и управления текущей сессией Raspberry Pi и предустановлен в Raspberry Pi OS. RDP (xrdp) создаёт отдельную сессию и хорошо интегрируется с Windows-клиентами. Выбор зависит от сценария: совместная работа и демонстрации — VNC; отдельные рабочие сессии и интеграция с Windows — RDP. Всегда учитывайте безопасность (SSH-туннели, firewall, fail2ban) и оптимизируйте параметр качества изображения в зависимости от сети.
Важно
- Для удалённого администрирования по умолчанию предпочтительнее SSH: он легче и безопаснее.
Примечание
- Все команды и пути проверены для стандартной Raspberry Pi OS; на других дистрибутивах пути и названия пакетов могут отличаться.
Похожие материалы
Установить WSL 2 на Windows 10
Кастомные стикеры в WhatsApp — Sticker Maker
Тёмная тема в Microsoft Office — Windows и Mac
Отправка SMS с Android на ПК через Your Phone
Как повысить мотивацию и вовлечённость команды