Vnc server windows

What is TightVNC?

TightVNC is a free remote control software package. With TightVNC, you can see the desktop of a remote machine and control it with your local mouse and keyboard, just like you would do it sitting in the front of that computer. TightVNC is:

  • free for both personal and commercial usage, with full source code available,
  • useful in administration, tech support, education, and for many other purposes,
  • cross-platform, available for Windows and Unix, with Java client included,
  • compatible with standard VNC software, conforming to RFB protocol specifications.

With TightVNC, you can:

  • cut your expenses and save your time on traveling,
  • help your friends and family to solve problems with their computers remotely,
  • make sure nothing wrong is happening on your computers when you are away.

Download Now!

Selected News

April 6, 2017 – TightVNC for Windows 2.8.8 Released

The newest TightVNC fixes just a few problems, but the bugfixes include important ones. Version 2.8.8 is a recommended update for all TightVNC users. Make sure to download new TightVNC packages. Also, here you can see what’s changed in every version of TightVNC.

October 4, 2016 – New releases: TightVNC for Windows 2.8.5, Java Viewer 2.8.3

Grab the newly updated TightVNC packages in Downloads. Don’t forget to see what’s new in the updated versions, as well as in all previous releases.

February 9, 2016 – Introducing Remote Ripple for iPhone and iPad

First version of Remote Ripple for iOS has been published today. Remote Ripple is our new VNC Viewer for Android and iOS, the perfect mobile companion to TightVNC. Get it in the App Store!

March 25, 2015 – Remote Core SDK: .NET Viewer

We are glad to introduce our newest addition to the TightVNC product family: Remote Core SDK. It’s a Software Development Kit, a set of libraries that implements TightVNC connectivity, and hides all the complexity of TightVNC protocol behind a simple and convenient API.

The first component we are offering today is the .NET Viewer SDK. It allows you to easily add TightVNC Viewer functionality to your .NET-based software. If you are interested, please see information here.

Read all news

.

Вход в многопользовательскую систему через VNC

База знаний

База знаний разделена на разные категории. Вы можете найти ответы на вопросы, выбрав категорию, или воспользоваться поиском.

Поиск

Категории

Linux VPS (2)
Статьи, относящиеся к VDS с ОС Linux
Администрирование Windows (23)
Инструкции по типовым задачам администрирования Windows серверов
Вопросы новых клиентов (12)
Вопросы, задаваемые большинством новых клиентов после активации сервера
Общие вопросы (24)
Вопросы не вошедшие в другие разделы и новые, еще не отсортированные статьи
Партнерская программа (1)
Ответы на вопросы по партнерской программе
Техподдержка (5)
Информация и советы для более эффективного взаимодействия с техподдержкой
Удаленный рабочий стол (11)
Информация и советы по работе с удаленным рабочим столом
Управление VDS сервером (15)
VNC консоль, перезагрузка, переустановка, установка свой ОС, подключение ISO и другие операции с VDS
Финансовые вопросы (14)
Вопросы оплаты, тарифов, трафика и т.д.
Что делать, если… (14)
Подборка типовых вопросов со ссылками на подходящие статьи

Популярное

Powered by WHMCompleteSolution

Справка

Подключение к виртуальному серверу по VNC

Для работы с виртуальным сервером по VNC на компьютере пользователя нужно запустить программу-клиент (VNC viewer, VNC client). Эта программа передает на виртуальный сервер данные о нажатиях на клавиши и о движениях мыши, сделанных пользователем, и показывает информацию, предназначенную к выводу на экран виртуального сервера.

Установка VNC-клиента

Для ОС Windows можно бесплатно скачать и инсталлировать VNC-клиент UltraVNC и TightVNC.

Mac OS X начиная с версии 10.5 имеет поддержку VNC-клиента в RemoteDesktop. Для предыдущих версий можно использовать VNC-клиенты JollysFastVNC и Chicken.

Для Linux ветви Debian (Ubuntu) VNC-клиент устанавливается из репозитория командой:

apt-get install vncviewer

Для ветви RedHat (CentOS, Fedora) — командой:

yum install vnc

Для FreeBSD VNC-клиент (TightVNC) устанавливается из пакетов командой:

pkg_add -r tightvnc

Подключение VNC-клиента к виртуальному серверу

Для подключения VNC-клиента к VDS/VPS требуется указать его IP-адрес или DNS-имя, и номер дисплея (по умолчанию, :0) или номер TCP-порта (по умолчанию, 5900).

Если VNC-сервер требует авторизации, то при подключении к нему VNC-клиент запросит пароль. Обратите внимание, что пароль доступа к VNC-серверу не связан с каким-либо аккаунтом (учетной записью пользователя) на виртуальном сервере, а служит только для ограничения доступа к дисплею VNC-сервера.

После установки соединения и открытия экрана, в зависимости от настроек VNC-сервера может потребоваться авторизация пользователя на виртуальном сервере или может быть открыта уже запущенная рабочая сессия какого-либо пользователя.

Так как на компьютере одновременно могут работать несколько VNC-серверов, для их разделения используют параметр .

VNC клиент для Windows. Как скачать, установить и настроить!

Например, один VNC-сервер может быть запущен на дисплее :0, другой — на дисплее :1. Каждому номеру дисплея соответствует номер TCP-порта, на котором VNC-сервер принимает соединения. Номер порта для дисплея получается прибавлением номера дисплея к базовому номеру порта — 5900. Дисплею :0 соответствует TCP-порт 5900, дисплею :1 — порт 5901.

Отключение VNC-клиента от виртуального сервера

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

Тюнинг VNC-клиента

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

Главный параметр, который влияет на объем передаваемых данных — алгоритм кодирования передаваемой графики. Для уменьшения объема и, соответственно, ускорения работы, рекомендуется использовать алгоритмы Tight, ZLib, ZRLE — по сравнению с несжатыми данными (Raw), они обеспечивают сжатие в десятки раз, заметно нагружая процессор. Эти алгоритмы кодирования обеспечивают комфортную работу даже на каналах со скоростью 256-512 Кбит/сек.

Также, для сокращения объема передаваемой по сети информации можно устанавливать высокий уровень сжатия (Compression Level, Compression Value), низкий уровень качества JPEG (JPEG Quality) и включать режим уменьшения количества цветов (-bgr233, Restricted colors). Самый большой эффект из них при заметном снижении качества изображения дает режим уменьшения количества цветов — объем передаваемой информации уменьшается в 1.5-3 раза, соответственно, в 1.5-3 раза ускоряется отображение на экране.

JPEG применяется алгоритмом кодирования Tight для сжатия участков экрана, содержащих фотографии и другие сложные изображения с большим числом цветов. Использование Tight+JPEG сокращает в 2-5 раз объем передаваемых при этом данных. Другие алгоритмы кодирования JPEG не поддерживают.

1. Выпадающего меню «Система -> Параметры»

Объем передаваемых данных и скорость отображения на канале 1 Мбит/сек при открытии выпадающего меню «Система -> Параметры» (на рисунке меню выделено зеленым пунктиром):

Частые проблемы
Не удается подключиться к VNC-серверу

Нужно проверить:

  1. есть ли доступ к интернету;
  2. отвечает ли виртуальный сервер на пинги;
  3. запущен ли на виртуальном сервере VNC-сервер;
  4. нет ли по пути файервола, закрывающего доступ к TCP-порту VNC-сервера;
  5. правльно ли указан номер дисплея или TCP-порт VNC-сервера (номер порта = 5900 + номер дисплея).
Медленная работа через достаточно быстрый канал

Если VNC-клиент не может согласовать с VNC-сервером использование алгоритм кодирования графики с компрессией данных, выбирается алгоритм по умолчанию — Raw, который передает данные без сжатия.

Также кодирование без сжатия или с низким уровнем сжатия может автоматически выбираться VNC-клиентом при работе через быструю локальную сеть. Данную проблему можно исправить, принудительно указав в настройках VNC-клиента алгоритм кодирования с высоким уровнем сжатия — ZLib, ZRLE, Tight.

Однако, для некоторых сочетаний клиента и сервера, такое решение может быть бесполезным из-за ошибок в согласовании алгоритма кодирования. Например, клиент TightVNC с сервером RealVNC часто могут работать только с кодировкой Raw. Решением в этом случае будет смена VNC-клиента или VNC-сервера.

Инструкции, VNC, VNC-клиент

Virtual Network Computing

Это руководство о том, как настроить noVNC для удалённого доступа к компьютерам на Windows.

Почему noVNC?

— У Windows есть «родное» средство для удалённого доступа — Remote Desktop Connection. Но оно есть не во всех версиях Windows — например нет в Home edition.
— Также существует множество VNC серверов и клиентов для любой версии Windows. Но для их использования нужно ставить VNC клиент. А бывают случаи, когда ставить ничего нельзя (ограничение прав), или нежелательно, чтобы не оставлять следов на чужом компьютере.

Насколько я знаю, noVNC — единственное средство, которое позволяет подключиться к удалённому компьютеру без установки какого-либо клиента — используется лишь браузер.
Ещё есть SPICE, но для него я не нашёл сервера под Windows.

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

Необходимым условием является проброс портов, или белый IP удалённого компьютера. Также можно воспользоваться VNC repeater. Но это уже выходит за рамки этой статьи.

Общая схема

Сначала мы поставим обычный VNC сервер на порт 5900.

Затем поставим noVNC и WebSockify на порт 5901.
WebSockify — это своего рода прокси, который с одной стороны умеет разговаривать с VNC, который у нас на порту 5900, а с другой — умеет транслировать это браузеру через вебсокет, который у нас будет на порту 5901.
noVNC — это просто html-приложение, или как сегодня это называют Single Page Application, которое и будет работать в клиентском браузере и «говорить» с WebSockify на сервере.

Вообще-то в природе существуют VNC серверы, которые умееют сразу соединяться через вебсокеты:
— MobileVNC, но он платный (10 Евро за устройство)
— Есть библиотека LibVNCServer, которая поддерживает вебсокеты, и теоретически работает под Windows, но я не нашёл ни одного готового сервера под Windows с этой библиотекой.

В этом случае WebSockify уже не будет нужен.

Ставим VNC

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

Сначала я попробовал поставить TightVNC, но у noVNC были с ним какие-то проблемы с аутентификацией.

Думаю, что можно было разобраться, но я поставил UltraVNC (осторожно, у них там тонны рекламы, реальные ссылки — внизу страницы) и всё заработало.

Скорее всего будут работать большинство VNC серверов, которые поддерживают Windows.

VNC сервер я поставил на порт 5900.
Не забудьте установить пароль на VNC соединение. UltraVNC не даст подсоединиться до тех пор, пока вы не установите пароль.

Проверьте, что VNC сервер работает, подключившись к нему с помощью VNC клиента с другого компьютера или смартфона.

noVNC и WebSockify

Создаём папку в удобном для себя месте, и загружаем туда:
— распаковываем zip архив noVNC
— распаковываем zip архив WebSockify
Цель, чтобы получилось приблизительно вот так:

Теперь запускаем command prompt с администраторскими правами:

Запускаем WebSockify:

Первый параметр выше — порт на котором noVNC будет слушать: 5901. Этот порт нужно сделать доступным для клиентов.

Второй параметр — IP и порт, где стоит VNC сервер: 127.0.0.1:5900

Третий параметр —web инструктирует noVNC, чтобы он отдавал содержимое директории c:\noVNC\noVNC-master по HTTP(s). По умолчанию noVNC отдаёт только VNC вебсокет, но этот параметр позволяет иметь и HTTP сервер на этом же порту.

В директории c:\noVNC\noVNC-master переименуйте файл vnc.html в index.html, чтобы он отдавался по умолчанию.

Теперь noVNC клиент должен быть доступен на порту 5901:

Попробуйте также открыть noVNC страницу с другого компьютера / смартфона, чтобы удостовериться, что она доступна снаружи. Если нет — то проверьте:
— что у вас Windows Firewall не блокирует внешние подключения на этот порт,
— что ваш роутер правильно перенаправляет запросы на этот порт на нужный компьютер; если надо гуглите «проброс портов».

Соединяемся (Connect), вводим VNC пароль и видим рабочий стол удалённого компьютера!

Если что-то пошло не так, то ошибки должны показаться в нашей консоли.

Остановить noVNC сервер можно нажав Ctrl-C в консоли.

Описанная выше конфигурация работает по HTTP (и по WS).

Добавляем SSL с самоподписанным сертификатом

Создать самоподписанный сертификат можно вот так:

Для Windows openssl можно взять здесь.

В результате получаем файл self.pem, на который надо указать при старте noVNC:

Теперь у нас работает HTTPS и WSS (WebSocket Secure). Для WSS в настройках (Settings) нужно указать Encrypt. Интересно, что noVNC использует один и тот же порт для HTTP и HTTPS — он «умеет» различать запросы и правильно отвечать.

Так как сертификат самоподписанный, то в браузере нужно будет принять этот сертификат.

Let’s Encrypt

У меня нет инструкций о том, как настроить систему, чтобы Let’s Encrypt автоматически генерировал сертификат специльно для нашей системы. Для этого потребовалось бы, чтобы noVNC работал на порту 80, что конечно же возможно, но может быть неудобно, и найти способ интегрировать certbot, чтобы эти файлы публиковались в нужную директорию. Думаю, что это возможно, но я этого не сделал. Если вы допилите — поделитесь в комментариях.

В моём случае, у меня уже есть домашний сервачок с NGINX и DDNS именем, который настроен автоматически получать сертификат от Lets Encrypt.

Вы можете запустить что-то похожее у себя. Здесь есть инструкции о настройке Let’s Encrypt для Linux и Windows.

Поэтому для noVNC я просто использую уже существующие pem-файлы, сгенерированные для nginx.
Let’s Encrypt создаёт следующие файлы:

На Ubuntu их можно найте по вот такому пути: /etc/letsencrypt/live/your_domain_name

Нужно скопировать (объединить) fullchain.pem и privkey.pem в один файл, например назовём его encrypt.pem, и этот файл мы будем использовать для noVNC.

Конечно, работать это будет только если nginx сервер и noVNC — на одном домене. Порты могут быть разными.

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

Добавляем noVNC, как Windows сёрвис

— загружаем zip архив, и распаковываем файлы оттуда так, чтобы они лежали в той же папке, где и файл websockify.exe, то есть в нашем случае в c:\noVNC\websockify.

При запуске, сёрвис будет использовать параметры из файла noVNCConfig.ini.
Вот пример моего конфига:

В консоли, запущенной с администраторскими привилегиями создаём новый сёрвис:

Если нужно будет удалить сервис, то вот так:

Открываем сёрвисы (Control Panel -> Administrative Tools -> Services) и запускаем noVNC Websocket Server. Также здесь можно настроить, чтобы сёрвис стартовал каждый раз вместе с Windows:

Известные недоработки

Раскладка клавиатуры

Я обнаружил, что русская раскладка клавиатуры работает довольно необычным образом:
Если у клиента выбран русский язык, то на удалённый компьютер нажатия клавиш не передаются вообще.
Поэтому, чтобы печатать по русски на удалённом компьютере:
— на клиента должна быть выбрана английская раскладка
— на удалённой система должна быть выбрана русская раскладка

Буфер обмена

Буфер обмена (клипборд) работает через кнопку в браузере (на скриншоте выше), то есть вы можете туда что-то положить и забрать на удалённой системе, или наоборот. И оно (у меня) не умеет работать с русскими буквами.
ссылка на оригинал статьи https://habrahabr.ru/post/326164/

Запись опубликована автором admin в рубрике Без рубрики. Добавьте в закладки постоянную ссылку.

Добавить комментарий

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