Бесплатный VNC-сервер чаще всего ищут, когда нужно получить удалённый доступ к рабочему столу компьютера без покупки платной подписки — например, чтобы администрировать домашний ПК из офиса или помочь родственнику с настройкой системы. Протокол VNC (Virtual Network Computing) передаёт изображение экрана по сети и позволяет управлять клавиатурой и мышью удалённой машины так, будто вы сидите прямо перед ней.
В этой статье разберём, какие бесплатные VNC-серверы существуют, чем они отличаются, как установить и настроить такое решение на Windows и Linux, а также какие меры безопасности обязательны при открытии удалённого доступа. Отдельно рассмотрим типичные ошибки подключения и способы их диагностики.
Что такое VNC-сервер и как он работает
VNC — это технология удалённого доступа, построенная на протоколе RFB (Remote Framebuffer). Архитектура проста: на управляемом компьютере работает серверная часть, которая захватывает изображение экрана и принимает команды ввода, а на устройстве администратора запускается клиент — VNC Viewer, который отображает этот экран и пересылает движения мыши и нажатия клавиш.
По умолчанию VNC-сервер слушает порт 5900 (для первого дисплея; последующие дисплеи получают порты 5901, 5902 и так далее). Соединение может работать как в локальной сети, так и через интернет — во втором случае потребуется проброс портов на роутере или туннелирование.
Важно понимать: сам по себе протокол RFB передаёт данные без встроенного шифрования на уровне экранного трафика. Разные реализации добавляют собственные механизмы защиты, но базовое правило остаётся неизменным — открывать VNC-порт напрямую в интернет без дополнительной защиты категорически небезопасно.
Обзор популярных бесплатных VNC-серверов
Существует несколько зрелых реализаций VNC с бесплатными версиями. Они различаются поддерживаемыми платформами, функциями и условиями лицензирования. Перед выбором проверьте актуальные условия на официальном сайте проекта — лицензионная политика может меняться.
| Программа | Платформы | Лицензия | Особенности |
|---|---|---|---|
| TightVNC | Windows, Linux | Бесплатная (GPL) | Компактность, экономия трафика |
| UltraVNC | Windows | Бесплатная (GPL) | Передача файлов, чат, плагины шифрования |
| TigerVNC | Windows, Linux, macOS (клиент) | Бесплатная (GPL) | Высокая производительность, активная разработка |
| RealVNC (VNC Connect) | Windows, Linux, macOS | Бесплатный тариф с ограничениями | Облачное соединение, простая настройка |
| x11vnc | Linux | Бесплатная (GPL) | Доступ к существующей X-сессии |
Для Windows чаще всего выбирают TightVNC или UltraVNC — оба проекта существуют давно и хорошо документированы. На Linux-серверах популярен TigerVNC, а если нужен доступ к уже запущенной графической сессии (а не к новому виртуальному рабочему столу), используют x11vnc.
Установка и настройка TightVNC на Windows
Рассмотрим базовый сценарий установки на примере TightVNC. Порядок действий может незначительно отличаться в зависимости от версии установщика, поэтому сверяйтесь с подсказками мастера установки.
- 📥 Скачайте установщик только с официального сайта проекта — сторонние сборки могут содержать вредоносный код.
- ⚙️ При установке выберите компонент Server (клиентская часть Viewer опциональна).
- 🔑 Задайте пароль для удалённого доступа — без него подключение либо невозможно, либо небезопасно.
- 🛡️ Разрешите работу службы в брандмауэре Windows, когда система запросит подтверждение.
- ✅ Проверьте подключение сначала из локальной сети, указав IP-адрес компьютера и порт
5900.
После установки сервер обычно запускается как системная служба и стартует вместе с Windows. Значок в системном трее позволяет открыть настройки, сменить пароль и посмотреть активные подключения.
☑️ Проверка перед первым подключением
Если клиент не подключается, первым делом проверьте, отвечает ли порт. В командной строке на стороне сервера выполните:
netstat -an | findstr 5900
Строка со статусом LISTENING означает, что сервер слушает порт. Если её нет — служба не запущена или сбилась конфигурация.
Настройка VNC-сервера на Linux
На Linux сценариев два: поднять виртуальный рабочий стол (отдельная сессия, не видимая на физическом мониторе) или открыть доступ к текущей сессии. Для первого варианта подходит TigerVNC, для второго — x11vnc.
Типовая последовательность для TigerVNC в дистрибутивах на базе Debian или Ubuntu выглядит так (команды могут отличаться в зависимости от дистрибутива и версии пакета):
sudo apt install tigervnc-standalone-server
vncpasswd
vncserver :1
Команда vncpasswd задаёт пароль доступа, а vncserver :1 запускает первый виртуальный дисплей на порту 5901. Для остановки сессии используется vncserver -kill :1. Какое окружение рабочего стола запустится, определяется конфигурационным файлом ~/.vnc/xstartup — его содержимое зависит от установленного окружения (XFCE, GNOME и других).
Почему после подключения виден серый экран
Наиболее частая причина — в файле ~/.vnc/xstartup не указано окружение рабочего стола или оно не установлено в системе. Проверьте, что пакет окружения (например, xfce4) установлен, а в xstartup есть строка его запуска. Также убедитесь, что файл имеет права на исполнение (chmod +x ~/.vnc/xstartup).
Для доступа к уже запущенной графической сессии вместо виртуального дисплея используйте x11vnc:
x11vnc -display :0 -usepw
Этот способ удобен, когда нужно видеть тот же экран, что и локальный пользователь, — например, для удалённой помощи.
Безопасность: что обязательно настроить
VNC исторически считается «лёгким» протоколом, и его базовая аутентификация не выдерживает серьёзной критики: пароль в классической схеме ограничен по длине, а трафик экрана передаётся открытым текстом, если не включено шифрование. Поэтому безопасность VNC-сервера — это не опция, а обязательная часть настройки.
⚠️ Внимание: не пробрасывайте порт 5900 (и соседние) напрямую в интернет через роутер. Сканеры автоматически находят открытые VNC-порты, и слабый пароль будет подобран перебором. Для доступа извне используйте VPN или SSH-туннель.
- 🔐 Используйте SSH-туннель: подключение к VNC заворачивается внутрь шифрованного SSH-канала командой вида
ssh -L 5900:localhost:5900 user@server. - 🧱 Ограничьте доступ файрволом — разрешайте подключение только с доверенных IP-адресов.
- 🔑 Задавайте длинные уникальные пароли и меняйте их при смене состава пользователей.
- 🔄 Регулярно обновляйте VNC-software — в старых версиях находили уязвимости.
Типичные проблемы и их диагностика
Даже корректно установленный VNC-сервер иногда отказывается принимать подключения. Разберём частые сценарии. Проверять стоит последовательно — от сети к приложению.
Соединение отклоняется сразу (connection refused). Возможная причина — служба сервера не запущена или слушает другой порт. Проверьте статус службы и вывод netstat. Также убедитесь, что клиент указывает правильный порт: для дисплея :1 это 5901, а не 5900.
Соединение зависает по таймауту. Здесь вероятнее всего трафик режется брандмауэром или сетевым экраном провайдера. Проверьте правила файрвола на сервере и промежуточных устройствах. Если подключение идёт через интернет, убедитесь, что проброс портов настроен корректно и провайдер не выдаёт «серый» IP-адрес.
Чёрный экран после подключения. Возможные причины: на Windows — конфликт с драйвером захвата экрана или активная блокировка сеанса; на Linux — не запущено окружение рабочего стола в виртуальной сессии. Попробуйте перезапустить VNC-службу и проверить журналы сервера.
⚠️ Внимание: если VNC используется для доступа к рабочему компьютеру в организации, согласуйте настройку с системным администратором. Самовольное открытие удалённого доступа может нарушать политику безопасности компании.
Альтернативы VNC: когда стоит посмотреть в сторону
VNC — не единственный способ удалённого доступа, и в ряде сценариев альтернативы удобнее. На Windows встроенный протокол RDP (Remote Desktop) обычно даёт более плавную картинку и лучше работает со звуком и буфером обмена, однако серверная часть доступна не во всех редакциях системы.
Для разовой удалённой помощи популярны решения вроде RustDesk (открытый код, возможность self-hosting) — они не требуют проброса портов, так как работают через промежуточный сервер соединений. Это проще для пользователя, но добавляет зависимость от инфраструктуры.
Тем не менее VNC остаётся актуальным там, где нужны кроссплатформенность, открытый протокол и полный контроль над сервером без сторонних посредников.
Часто задаваемые вопросы
Какой порт использует VNC-сервер по умолчанию?
Стандартный порт — 5900 для первого дисплея. Каждый следующий дисплей увеличивает номер на единицу: 5901, 5902 и так далее. В клиенте порт часто указывают в сокращённой форме через двоеточие, например 192.168.1.10:1, что соответствует порту 5901.
Можно ли использовать VNC через интернет без VPN?
Технически — да, через проброс портов на роутере, но это небезопасно: открытые VNC-порты быстро находятся сканерами, а встроенная аутентификация уязвима к перебору. Рекомендуемые варианты — SSH-туннель, VPN или решения со встроенным шифрованием и облачным соединением.
Чем TightVNC отличается от UltraVNC?
Оба проекта бесплатны и работают на Windows. UltraVNC предлагает больше встроенных функций: передачу файлов, чат, плагины шифрования. TightVNC компактнее и традиционно ценится за экономичное использование канала. Выбор зависит от того, что важнее — функциональность или минимализм.
Почему VNC-клиент показывает чёрный экран?
Возможные причины: на Linux не запущено окружение рабочего стола в виртуальной сессии (проверьте ~/.vnc/xstartup), на Windows — проблемы с драйвером захвата экрана или заблокированный сеанс. Начните с перезапуска VNC-службы и изучения журналов сервера.
Есть ли бесплатный VNC-сервер для macOS?
В macOS встроена функция «Общий экран» (Screen Sharing), которая работает по протоколу VNC и не требует установки стороннего ПО. Включается она в системных настройках, в разделе общего доступа. Для подключения подойдёт любой VNC-клиент.