Тарифы Услуги Сим-карты

Ultravnc подключение. Поле «File Transfer » — «Передача файлов».Да, пригодится

  • Tutorial

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

Почему noVNC?

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

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

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

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

Общая схема

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

Затем поставим noVNC и WebSockify на порт 5901.

Цель, чтобы получилось приблизительно вот так:


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


Запускаем WebSockify:

C:\> cd c:\noVNC\websockify c:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master WARNING: no "resource" module, daemonizing support disabled WebSocket server settings: - Listen on:5901 - Flash security policy server - Web server. Web root: c:\noVNC\noVNC-master - No SSL/TLS support (no cert file) - proxying from:5901 to 127.0.0.1:5900
Первый параметр выше - порт на котором 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 с самоподписанным сертификатом

Добавлять SSL - необязательно. Создать самоподписанный сертификат можно вот так:

Openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
Для Windows openssl можно взять .

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

C:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master --cert=c:\noVNC\self.pem
Теперь у нас работает 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 создаёт следующие файлы:

Cert.pem: Your domain"s certificate chain.pem: The Let"s Encrypt chain certificate fullchain.pem: cert.pem and chain.pem combined privkey.pem: Your certificate"s private key
На 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 . Вот пример моего конфига:

5901 127.0.0.1:5900 --web C:\noVNC\noVNC-master --cert=c:\noVNC\encrypt.pem
В консоли, запущенной с администраторскими привилегиями создаём новый сервис:

Sc create "noVNC Websocket Server" binPath= "c:\noVNC\websockify\noVNC Websocket Service.exe" DisplayName= "noVNC Websocket Server"
Если нужно будет удалить сервис, то вот так:

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

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

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

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

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

Начнем с установки UltraVNC

1. Запускаем инсталляцию на компьютере к которому будем подключаться — сервере.

2. Выбираем пункт "UltraVNC_server only".

3. В следующем окне на вопрос "Download Vista addons files now" в случае установленной операционной системы Vista. Жмем "Далее".

4. В окне "Download the mirror driver" ставим галочку и продолжаем установку.

5. В следующем окне устанавливаем галочки в следующих строках:

Register UltraVNC Server as a system service - автоматический запуск сервера как службы UltraVNC в качестве системной службы.

Start or restart UltraVNC service — остановить/перезапустить службу UltraVNC.

Create UltraVNC desktop icons — создать ярлыки.

Associate UltraVNC Viewer with .vnc file extension - зарегистрировать расширения. .vnc в системе.

На этом процедура установки закончена.

Теперь кратко расскажу о предварительных настройках , в которые входим открыв меню "Admin Properties" нажатием правой кнопкой мыши на синей эмблеме программы возле часов.

1. Accept Socket Connections — принимать входящие подключения - отмечаем

2. Ports — порты. Main — порт для подключения uvnc-клиента. Http — порт для подключения java-клиента. оставляем значения по-умолчанию.

3. VNC Password — пароль для подключения. Сразу придумайте новый пароль и запишите его.

4. Remove Aero (Vista) - советую включать этот пункт для ускорения работы программы. Он позволит отключить дополнительные настройки графики в Windows.

5. Remove Wallpaper for Viewers — убирать обои рабочего стола - советую устанавливать.

6. Disable Tray icon — убрать иконку сервера из из трея - на ваше усмотрение.

7. В раделе File Transfer ставьте значение Enable. Это разрешит копирование файлов между машинами.
На этом пункте основные настройки закончены.

Переходим к запуску Viewer (просмотрщика).

1. В поле VNC Server — нужно ввести адрес сервера, для выполнения подключения.

Как унать IP адрес компьютера и проверить открытые порты, подробно описано в вопросе.

На этом настройки программы окончены.

Процедура проверки открытых портов и внешнего IP адреса описана в ответе на вопрос

В случае возникновения сложностей с доступом к ПК по сети, задавайте вопросы и мы сделаем все возможное для решения вашей проблемы.

Здравствуйте, дорогие читатели сайта Страна IT. Сегодня мы с вами поговорим о еще одной программе удаленного доступа. С её помощью вы можете полностью управлять удаленным компьютером. Речь пойдет про VNC клиент для Windows. Данная позволяет пользователям подключаться к компьютерам с операционной системой Windows и Linux и выполнять любые настройки. Так же имеется полная поддержка практически всех современных операционных систем. VNC клиент, может стать для вас незаменимым помощником, если вам часто приходится управлять удаленными компьютерами либо если вы обслуживаете парк ПК. В статье я вам подробно расскажу, как скачать, установить и настроить утилиту.

Чтобы начать пользоваться программой, её необходимо скачать, чтобы не наловить на компьютер вирусов, загружать программу мы будем с официального сайта. Для этого перейдите по ссылке – www.realvnc.com/download /

На странице загрузки, чтобы скачать бесплатно VNC клиент для Windows, необходимо выбрать соответствующую иконку и нажать на кнопку «DOWNLOAD VNC CONNECT». Так же под кнопкой загрузки можно выбрать в каком расширении скачивать программу: exe, Zip или в формате MSI Installer.

Установка программы состоит из двух частей серверной и клиентской. Если вы хотите управлять удаленным компьютером, то устанавливаем клиентскую часть – VNC Viewer, если же вы хотите в дальнейшем управлять данным компьютером, то ставите VNC Server.

Как установить VNC.

Давайте теперь подробно рассмотрим, как установить VNC клиент для Windows. Для этого запускаем скаченный исполняемый файл и выполняем все по шагам:


Мы с вами смогли установить VNC клиент для Windows, теперь давайте рассмотрим, как настроить программу и как ею пользоваться.

Как пользоваться VNC — программой удаленного доступа к компьютеру.

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

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

Для того, чтобы выполнять удаленные подключения со своего компьютера к другим ПК, нам с вами понадобится VNC Viewer. Запускаем его. Окно программы выглядит скромно, но зато нет ничего лишнего. В самом центре располагается строка «VNC server» в нее необходимо ввести имя удаленного компьютера или IP адрес. Как узнать IP адрес читайте статью – . Если вы хотите подключиться по имени, то посмотреть его можно в свойствах системы.

В моем случае, я буду вводить IP адрес. После нажатия на кнопку «Connect» появится окно для ввода пароля подключения к серверу. После этого перед вами отобразится удаленный рабочий стол. Теперь вы сможете выполнять любые действия, будто это ваш компьютер.

Что делать, если не получается подключиться.

Часто бывают случаи, когда после установки VNC клиента для Windows не удается выполнить подключение. На это существует ряд определенных причин, рассмотрим их подробнее:

  • Антивирусные программы заблокировали работу VNC. Очень часто антивирусы определяют программы удаленного доступа как нежелательное ПО и блокируют их работу всеми способами. Для того, чтобы избежать такой ситуации необходимо добавить программу в списки исключений антивируса;
  • Неправильный IP адрес. Иногда случаются случаи, когда пользователь удаленного компьютера говорит вам неправильный IP адрес. Тем самым вы не можете подключиться. Рекомендую уточнить информацию и повторить подключение;
  • Неправильный пароль. Если вы сами задавали пароль для серверной версии. То необходимо проверить, правильно ли вы его вводите, возможно у вас включен заглавный ввод букв или выбран неправильный язык ввода;
  • Программа переключилась на другой порт работы. По умолчанию, программа работает через порт 5900. Проверьте, не занят ли данный порт каким-то другим приложением. Так же можно выполнить переадресацию портов.

Это основные проблемы, которые встречаются при работе с VNC Viewer. Как видите, они вполне себе решаемые. Функционал программы достаточно простой, здесь нет каких-то суперполезных функций. Программа имеет вполне стандартный набор инструментов, который схож с и , а возможно и чем-то уступает своим собратьям. Чем подкупает VNC клиент для Windows, так это высокая скорость работы и большая поддержка всех современных платформ. Это делает программу достаточно привлекательной для пользователей, которые имеют устройства с разными операционными системами.

Подведем итоги.

Сегодня получился какой-то сумбурный обзор программы. Но все же я вам представил общую картину. Теперь вы знаете про VNC клиент для Windows и сможете его скачать и установить. Возможно программа войдет в вашу повседневную жизнь и заменит более популярные программы, например, такие как

Предупреждение: все прилетевшие тапочки будут проданы, помидоры – съедены, яйца – пожарены, испорченные – выброшены. Те, кто думают, что мы маемся фигней – вы угадали, возьмите с полки пирожок. Автор не призывает бросать мешки грудью на амбразуры. Он вообще ни к чему не призывает – он же не политик и не гражданин с активной гражданской позицией. А вот желающих подискутировать – милости просим. Сегодня я буду рассказывать вам занимательную историю о замене Teamviewer на UltraVNC.

Зачем вообще нужны такие заморочки, ведь Teamviewer такой офигенный? В моем случае это обусловлено несколькими причинами. В работе была нужна система удаленного управления серверами и рабочими станциями пользователей, а их у нас на поддержке >1000. Teamviewer контролируется сторонней компанией и неизвестно, что она делает с трафиком. Teamviewer не пользуется доверием у некоторых наших клиентов. Нам нужны были уникальные ID для всех пользователей. Ну и его стоимость для достаточно большой инфраструктуры очень приличная, что тоже повлияло на решение. При этом у нас достаточно широкие каналы связи и нет жестких требований к скорости отклика, что нивелировало основной недостаток UltraVNC, а именно - более низкую скорость работы.

Как это работает

Исходная архитектура VNC протокола слабо предназначена для работы через глобальные сети. Для этого есть несколько причин.
  • Отсутствие шифрования передаваемых данных.
  • Короткие пароли (8 символов в современном мире? Вы серьезно?)
  • Отсутствие сквозной нумерации серверов, подключение по IP.
  • Невозможность работы из-за NAT.
Я, конечно, перечислил не все. Но это основные недостатки, которые мешали нам рассматривать данное решение всерьез. В итоге, все они были тем или иным образом преодолены. Текущая схема работы выглядит примерно так:

Клиентский UltraVNC сервер подключается к нашему репитеру, который одним своим портом (нестандартным) смотрит в интернет и принимает подключения. А мы подключаемся к этому же серверу по внутреннему адресу изнутри и уже оттуда - к клиенту. Соединения шифруются RSA2048/AES256. Так как серверы и клиенты цепляются на разные порты, можно гибко ограничить, у кого и откуда есть право подключения, не трогая возможность UltraVNC-серверов подключаться к репитеру.

Установка UltraVNC репитера

Так как репитер будет единственным публичным сервисом, его настройке надо уделить максимум внимания. Использовать нестандартные порты, блокировать подозрительную активность, например сканирование портов и жестко определять, откуда можно будет подключаться Viewer-ам. Но начнем с самого простого – установки и настройки. Сервер настраивается во втором режиме, третий (через SSL) требует специальных сборок просмотрщиков и серверов, поэтому его решили не использовать.

Итак, заходим на сервер, которому предначертано стать будущим репитером и начинаем колдунство. Установка будет описана для Ubuntu 16.04. Ставим необходимые зависимости.

Sudo apt-get install build-essential
Создаем пользователя для запуска репитера.

Sudo useradd -c "UltraVNC Repeater User" -M -s /sbin/nologin uvncrep
Скачиваем исходники репитера.

Wget http://www.wisdomsoftware.gr/download/uvncrep017-ws.tar.gz
Распаковываем репитер и заходим внутрь папки.

Tar -xzvf uvncrep017-ws.tar.gz && cd uvncrep017-ws
Собираем репитер.

Make
Устанавливаем репитер в систему.

Sudo ./install.sh
У нас все готово к успешному запуску, но надо немного изменить файл настроек. Поэтому открываем в любимом редакторе /etc/uvnc/uvncrepeater.ini и приводим настройки к следующему виду:

Viewerport = 5900
По странной прихоти автора номер порта отличается от стандартного. У себя нестандартный порт мы выставим на файрволе.

Logginglevel = 2
Немного повышаем уровень логирования, чтобы видеть информацию о бинде портов и подключениях в логе.

Allowedmodes = 2
Запрещаем оба режима, оставляем только 2, потому что первый работает по другому принципу и может создавать для нас уязвимость.

Useeventinterface = false
Отключаем отправку сообщений. Пока мы никому ничего отправлять не будем. Может быть потом…

Сохраняем файл и тестируем корректность его настроек.

Sudo uvncrepeatersvc /etc/uvnc/uvncrepeater.ini
UltraVnc Linux Repeater version 0.17 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): viewerPort: 5900 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): serverPort: 5500 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): maxSessions: 100 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): loggingLevel: 2 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): ownIpAddress (0.0.0.0 = listen all interfaces) : 0.0.0.0 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): runAsUser (if started as root) : uvncrep UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): Mode 1 connections allowed: No UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): Mode 2 connections allowed: Yes UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): Mode 1 allowed server port (0=All) : 0 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): Mode 1 requires listed addresses: No UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): Mode 2 requires listed ID numbers: No UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): useEventInterface: false UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): eventListenerHost: localhost UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): eventListenerPort: 2002 UltraVnc Sat Feb 11 16:48:29 2017 > listInitializationValues(): useHttpForEventListener: true UltraVnc Sat Feb 11 16:48:29 2017 > dropRootPrivileges(): privileges successfully dropped, now running as user uvncrep UltraVnc Sat Feb 11 16:48:29 2017 > routeConnections(): starting select() loop, terminate with ctrl+c
Все в порядке, можно запускать как стандартную службу. Останавливаем репитер с помощью Ctrl+C и запускаем уже как сервис.

Sudo systemctl start uvncrepeater
Проверяем, что служба запустилась.

$ ps ax | grep uvnc 11168 ? S 0:00 /usr/sbin/uvncrepeatersvc /etc/uvnc/uvncrepeater.ini 11170 pts/0 S+ 0:00 grep --color=auto uvnc
Файл лога можно посмотреть по адресу /var/log/uvncrepeater.log.

Установка и настройка UltraVNC сервера

Итак, первое препятствие между нами и нирваной рухнуло с треском. Теперь мы можем подключаться к клиентам за NAT. На очереди два следующих – отсутствие сквозной нумерации и шифрования. Настраиваем тестовый UltraVNC-сервер. Так как у нас основной парк управляемых машин – это Windows, установка сервера и клиента будет расписана для них.
  • SecureVNC Plugin:

Запускаем установщик UltraVNC сервер. Принимаем условия соглашения и нажимаем Next > .

Вчитываемся с интересом и Next > .

Выбираем установку только UltraVNC Server и нажимаем Next > .

Жмем Next > и никаких гвоздей.

Ставим указанные галочки, чтобы установить UltraVNC сервер как системную службу и запустить его сразу после установки. Жмем Next > .

Смотрим на этот экран с умным видом, потом нажимаем Install .

Здесь есть только одна кнопка для нажима. Жмем на нее.

Снимаем галочку, чтобы не смотреть какие-то последние версии, и жмем Finish .

Кнопконажимательная часть миссии закончена. Теперь надо доустановить необходимые компоненты и настроить сервер. Копируем плагин безопасности в папку UltraVNC.

Распаковываем папку с драйвером.

Заходим в папку с соответствующим драйвером и устанавливаем его путем запуска install.bat.

Внимание! Установку драйвера надо производить с административными правами. Причем запустить от имени администратора только install.bat не получится, потому что он запускает еще одну программу и она будет работать уже не от администратора. Поэтому запускаете консоль от администратора, идете в папку установки драйвера и запускаете install.bat оттуда.

Я выполнял тестовую сборку по XP с правами администратора, потому мне это не потребовалось.

Запускаем настройки VNC сервера – uvnc_settings.exe.

Переходим на вкладку Security .

  • В разделе Authentication выставляем два пароля. Пароли должны быть одинаковыми, состоять из цифр и больших и малых латинских букв, не более 8 символов длиной .
  • В разделе Encryption ставим галочку Use , выбираем из выпадающего списка наш плагин, и жмем на кнопку Configuration .

Галочки должны стоять так, как показано на скриншоте. Если все правильно, закрываем окно нажатием кнопки Close .

Переходим на вкладку Connection .

  • В разделе Multiple connections выбираем Keep existing connections .
  • В разделе Disconnect выбираем Do Nothing .

Переходим на вкладку Screen Capture .

  • В разделе Advanced выбираем Use system hookdll, Use mirror driver, Remove Aero while connected и Remove wallpaper while connected .

Переходим на вкладку Misc/logging .

  • В поле Service command line вбиваем самую главную строку. Эта строка содержит ID и адрес и данные репитера для подключения. Выглядит она так:
-autoreconnect ID:XXXXXXXX -connect :
ID получается с помощью скрипта по методике приведенной ниже.

После всех проделанных действий нажимаем ОК для сохранения настроек. Потом запускаете настройки еще раз и переходите на вкладку Service . На ней нажатием соответствующих кнопок сначала останавливаете, потом запускаете сервис.

Генерация уникального ID

Скрипт получения 8-значного номера ID. Написан на php, потому что это было проще всего. В качестве источника вдохновения использовались комментарии вот к . Как работает, думаю, пояснять не надо. Почему именно скрипт генерации и почему именно по MAC? Потому что репитер не даст подключиться двум серверам с одинаковым ID, а вести журналы со списками ID было предельно лень. А так как MAC-адреса и так уникальны, то почти гарантированно получаем уникальный номер с достаточно низкой вероятностью коллизии.


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

Установка и настройка UltraVNC Viewer

Скачиваем необходимые компоненты по ссылкам. Компоненты должны иметь архитектуру (x86 и x64), соответствующую архитектуре компьютера, на который происходит установка Viewer.
  • Finish .

    Устанавливаем все настройки так же, как и на скрине. ID сервера для подключения вводится именно в таком формате, то есть ID:XXXXXXXX . IP и порт репитера вводятся такими, какими были назначены при установке репитера.

    Все, можно подключаться и радоваться жизни.

    Замечания по использованию

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

Внимание! Вышла новая версия UVNC — 1.0.9.2 . Заявлена поддержка Windows 7, Vista и Aero!

Рассмотрим следующую ситуацию. Удаленный офис, имеется локальная сеть на несколько компьютеров, NAT роутер. К одному из компьютеров необходимо получить удаленный доступ для оказания удаленной помощи. Компьютер работает под управлением Windows 7.

Запускаем установщик UltraVNC. Несколько первых экранов обычные бла-бла, ознакомление с лицензией и т.п. Важные моменты начинаются с экрана выбора типа инсталляции:

Доступно несколько вариантов:

  • Full installation — полная установка. Устанавливается сервер + клиент.
  • UltraVNC Server Only — устанавливается только сервер.
  • UltraVNC Server Only «silent» — устанавливается только сервер в режиме «без лишних вопросов».
  • UltraVNC Viewer Only — устанавливается только клиент.

Наш выбор — UltraVNC Server Only.

Далее нам предлагается скачать дополнения для Windows Vista (они актуальны и для Семерки). Самое важное из них: cad.exe — без него клиент не сможет послать команду CTRL+ALT+DEL на удаленный компьютер. Опцию «Download Vista addons files now» отмечаем.

В следующем окне нам предложат скачать драйвер захвата. Лично я предпочитаю устанавливать драйвер в ручную, поэтому опцию Download mirror driver НЕ отмечаем:

Следующий экран:

Отмечаем опции:

  • Register UltraVNC Server as a system service — зарегистрировать сервер UltraVNC в качестве системной службы.
  • Start or restart UltraVNC service — запустить/перезапустить службу UltraVNC.
  • Create UltraVNC desktop icons — создать ярлыки на рабочем столе.
  • Associate UltraVNC Viewer with .vnc file extension — открывать файлы с расширением.vnc с помощью UltraVNC Viewer.

Нажимаем Next, после загрузки дополнений, завершаем установку. При необходимости перезагружаемся.


В архиве driver.zip содержится несколько папок, соответствующих разным версиям ОС. Для установки под 32-битную Windows 7, открываем папку Vista (этот драйвер отлично работает и под Семеркой). Далее запускаем файл install.bat. На вопрос системы: «Установить программное обеспечение для данного устройства?» отвечаем Установить.

Теперь можно перейти к настройке основных параметров сервера UltraVNC.

Настройка UltraVNC.

В трее делаем правый клик на иконке UltraVNC и выбираем пункт Admin Properties:

Подробнее о настройках. Раздел Incoming Connections — входящие соединения.

  • Accept Socket Connections — принимать входящие подключения. Для нормальной работы этот пункт должен быть обязательно отмечен.
  • Display — номер дисплея.
  • Ports — порты. Main — порт для подключения uvnc-клиента. Http — порт для подключения java-клиента. Лучше всего оставить значение Auto.
  • Enable Java Viewer (Http Connect) — разрешить подключения java-клиента.
  • Allow Loopback Connections — разрешить обратные подключения (подключения к адресам из диапазона 127.х.х.х). необходимо отметить, если на этот компьютер устанавливается репитер.
  • Loopback Only — разрешать только обратные подключения.

Раздел When Last Client Disconnects — когда отключается последний клиент.

  • Do Nothing — ничего не делать. Оставляем эту опцию.
  • Lock Workstation (W2K) — залочить сеанс (чтобы войти потребуется ввод пароля).
  • Logoff Workstation — завершение сеанса.

Раздел Query On Incoming Connection — вывести запрос при получении нового входящего соединения.

  • Display Query Window — показать окно запроса.
  • Timeout — время до выполнения действия по умолчанию.
  • Default action — действие по умолчанию. Refuse — отклонить, Accept — принять.

Раздел Keyboard & Mouse — клавиатура и мышь.

  • Disable Viewers Inputs — запретить ввод с клиента.
  • Disable Local Inputs — запретить ввод с сервера.
  • Japanese — ??? Возможно, имеется в виду поддержка японской клавиатуры… Иногда помогает при глюках с русской раскладкой.

Раздел Multi Viewer Connections — одновременное подключение нескольких клиентов.

  • Disconnect all existing connections — отключить все текущие соединения. Одновременно может быть подключен только один клиент. Последний подключившейся побеждает.
  • Keep existing connections — поддерживать текущие соединения. Одновременно может быть подсоединено несколько клиентов.
  • Refuse the new connection — ???. Смысл непонятен. При выставлении этой опции можно подключаться нескольким клиентам…
  • Refuse all new connections — запретить все новые соединения. Одновременно может быть подключен только один клиент. Первый подключившейся побеждает. Выбираем этот вариант.

Раздел Authentication — аутентификация.

  • VNC Password — пароль для входа. После установки необходимо придумать новый пароль, иначе подключиться не получится.
  • View-Only Password — пароль для входа в режиме просмотра. С этим паролем клиент будет подключаться в режиме просмотра (настройки клиента и сервера игнорируются).
  • Require MS Logon — использовать аутентификацию Windows (компьютер и пользователь должны быть в одном домене).
  • New MS Logon — активирует MS-Logon II (кросс-доменная аутентификация).

Раздел Misc. — разное.

  • Remove Aero (Vista) — отключить Aero (3D, прозрачность и прочие примочки интерфейса Висты). Рекомендуется.
  • Remove Wallpaper for Viewers — убрать обои рабочего стола. Рекомендуется.
  • Enable Blank Monitor on Viewer Request — по запросу клиента отключает монитор сервера (на весь экран выводится картинка). Странно, но опция также закрывает картинкой и экран клиента. Этот баг можно обойти, если отключить использование драйвера захвата (Properties -> Video Hook Driver).
  • Disable Only Inputs on Blanking Request — запрещает только ввод с консоли сервера, при этом экран не закрывается.
  • Enable Alpha-Blending Monitor Blanking — другой вариант отключения монитора сервера. Используйте, если с первым вариантом проблемы.
  • Capture Alpha-Blending — включение этой опции позволяет В НЕКОТОРЫХ СЛУЧАЯХ «видеть» клиенту видео запущенное на сервере в видеоплеере, например в Windows Media Player (зависит от установленных на компьютере-сервере кодеков).
  • Disable Tray icon — убрать иконку из трея. Если пользователь любопытный, лучше убрать.
  • Forbid the user to close down WinVNC — запретить пользователю закрытие uvnc-сервера. Рекомендуется.
  • Default Server Screen Scale — масштаб экрана по умолчанию.

Раздел File Transfer — передача файлов.

  • Enable — разрешить передачу файлов.
  • User Impersonation (for Service only) — ???

Раздел DSM (Data Stream Modification) Plugin — подключение плагинов (в настоящее время доступны несколько плагинов для шифрования потока данных).

Раздел Logging — создание log-файла.

  • Log Debug infos to the WinVNC.log file — запись данных о функционировании uvnc в лог-файл.
  • Path — путь для сохранения лог-файла.

После установки параметров нажимаем Apply и затем Ок. Каждый раз Windows попросит подтвердить внесение изменений.

Следующий этап — настройки захвата экрана. Делаем правый клик на иконке UltraVNC и выбираем пункт Properties.

  • Poll Full Screen (Ultra Fast) — ??? Особой разницы при включении/отключении не замечал.
  • Poll Foreground Window — ??? При использовании этой и следующих трех опций некоторые части экрана могут подвиснуть и перестать обновляться. Эта информация — просто мое предположение…
  • Poll Console Windows Only -???
  • Poll Window Under Cursor — ???
  • Poll On Event Only — ???
  • System HookDll — опция имеет смысл на Windows 9x.
  • Video Hook Driver — использовать драйвер захвата видео. Обеспечивает наилучшую производительность на Windows XP/Vista/7. Этот вариант обеспечивает наилучшее быстродействие.
  • Low Accuracy (Turbo Speed) — дает прибавку в скорости за счет снижения точности (лично я изменений не замечал, возможно, эта опция для медленных соединений).
  • Share only the Server Window Named: — показывать не весь экран, а только окно с указанным именем. Сколько не пытался, ни разу не получилось…

Кнопка Check the Video Hook Driver используется для проверки функционирования драйвера захвата. Использовать ее нужно только, если к серверу подключен хотя бы один клиент. В противном случае всегда будет выводиться сообщение, что драйвер не активен. Вот как выглядит сообщение, что драйвер установлен и функционирует:

На этом настройка базовая настройка сервера UltraVNC завершена.

Чтобы сервер был доступен через Интернет, на роутере необходимо настроить проброс порта tcp 5900. Также этот порт должен быть открыт в брандмауэре сервера. Если используется только встроенный брандмауэр Windows, то никаких дополнительных действий предпринимать не надо, нужные разрешения уже созданы во время установки.

Подключение к серверу

Запускаем UltraVNC Viewer (клиент):

Основные параметры UltraVNC Viewer:

  • VNC Server — адрес сервера.
  • AUTO, ULTRA, LAN, MEDIUM, MODEM, SLOW, MANUAL — в зависимости от скорости вашего канала программа оптимизирует настройки качества.
  • View Only — подключиться в режиме просмотра. Взаимодействие с консолью запрещено.
  • Auto Scaling — автоматическая настройка масштаба. Отметьте, чтобы исключить вероятность появления полос прокрутки.
  • Confirm Exit — подтвердить выход. При закрытии окна клиента будет выводиться диалоговое окно.
  • Use DSMPlugin — использовать плагин.
  • Proxy/Repeater — использовать репитер. Здесь же необходимо указать адрес репитера.
  • Save connection settings as default — сохранить текущие настройки в качестве настроек по умолчанию.

Дополнительные параметры uvnc клиента (кнопка Options):

Все опции описывать не буду, отмечу только наиболее важные:

  • Track remote cursor locally — показывать курсор/указатель мыши.
  • Don’t show remote cursor — не показывать курсор/указатель мыши.
  • Show button’s bar («Toolbar») — показывать или нет панель инструментов.
  • Full-screen mode — полноэкранный режим.
  • Viewer Scale — настройки масштабирования.
  • Disable clipboard transfer — отключить синхронизацию буфера обмена.
  • Number of times the reconnect is attempted — число повторных попыток подключения.

Установка и настройка репитера.

Скачиваем repeater.zip . В архиве только один файл — repeater.exe. Рекомендую сразу перенести его в папку C:\Program Files\UltraVNC\Repeater.

Запускаем repeater.exe. В трее появится иконка. Делаем правый клик по ней и в меню выбираем пункт Settings:

Следует проверить значения следующих опций:

  • Listen port Viewer — значение 5901.
  • Enable Proxy(443) — отключить.
  • Enable Mode I — включено.
  • Enable Mode II — отключить.

Остальные опции оставляем без изменений. Save — сохраняем настройки и закрываем окно.

Следующий этап — открыть порт tcp 5901 в брандмауэре. В настройках роутера необходимо создать правило для переадресации порта tcp 5901 на компьютер, где установлен репитер.

Для подключения через репитер в настройках клиента необходимо сделать следующее:

  • В поле VNC Server указать не внешний, а внутренний адрес сервера в локальной сети.
  • Отметить опцию Proxy/Repeater и указать внешний адрес роутера с портом, на который настроен репитер (например 83.45.67.8:5901 ).

Последний штрих. Чтобы репитер был постоянно доступен, его необходимо запускать в качестве системной службы. Для этого открываем командную строку от имени администратора, и запускаем repeater.exe с параметром -install. Будет создана служба repeater_service (по умолчанию она не запущена, поэтому осуществите запуск вручную или просто перезагрузитесь).
Для удаления службы запустите repeater.exe с параметром -uninstall.

UltraVNC SC (Single Click) — удаленная помощь без предварительной установки UltraVNC сервера.

Как это работает. На своем компьютере вы запускаете UltraVNC Viewer в режиме ожидания (listen mode). Пересылаете (по электронной почте или как-то еще) на удаленный компьютер архив с заранее сконфигурированным сервером UltraVNC SC. Пользователь распаковывает архив, запускает программу и производит подключение. В итоге вы получаете доступ к консоли удаленного компьютера. Т.к. подключение инициирует удаленный компьютер, нет необходимости настройки брандмауэра и роутера в удаленной сети.

Теперь подробнее о настройке. Сначала необходимо сконфигурировать UltraVNC SC.

Нам понадобятся следующие файлы: winvnc_SCII_100.exe и custom.zip . Далее создаем папку с произвольным названием (например UltraVNC SC). В ней подпапку data. В эту подпапку переносим winvnc_SCII_100.exe и туда же распаковываем содержимое custom.zip.

Теперь необходимо отредактировать файл helpdesk.txt. Этот файл отвечает за интерфейс менеджера подключений:

Каждый раздел helpdesk.txt отвечает за текстовое поле (см. скриншот ниже):

Вот пример моего helpdesk.txt:

Удаленная помощь q2w3.ru maxbond.no-ip.org -connect test.no-ip.org:5500 -noregistry // вместо test.no-ip.org необходимо указать свой ip-адрес иди домен, порт 5500 лучше лучше не менять Выберите подключение Используйте двойной клик, чтобы начать соединение q2w3.ru http://www.q2w3.ru Закрыть Подключение... Соединение установлено!

Если будете создавать свой helpdesk.txt на основе моего, незабудьте удалить комментарии начинающиеся с «\\».

Файл rc4.key не удаляем, он нужен для шифрования.

Возвращаемся к папке UltraVNC SC. Чтобы пользователь не путался, создадим ярлык для запуска winwvnc_SCII_100.exe прямо из нее. Для этого делаем правый клик на winwvnc_SCII_100.exe и выбираем пункт «Создать ярлык». Созданный ярлык переносим на уровень выше, в UltraVNC SC. Теперь открываем свойства ярлыка. Поле «Рабочая папка» очищаем, оно должно быть пустое. В поле прописываем следующую команду:

%windir%\system32\cmd.exe /C start /B /D .\data .\data\winvnc_SCII_100.exe

Вся эта магия необходима, чтобы ярлык использовал относительный путь для запуска winvnc_SCII_100.exe, а не абсолютный как это принято по умолчанию.

В конце концов запаковываем папку UltraVNC SC в архив и отправляем его пользователю.

Осталось подготовить свой компьютер к приему соединения. UltraVNC Viewer необходимо запустить в режиме ожидание соединения (listen mode). Для этого используем ярлык Программы -> UltraVNC -> UltraVNC Viewer -> Run UltraVNC Viewer (listen mode) или запускаем vncviewer.exe с параметром -listen. Также незабываем открыть порт tcp 5500 в брандмауэре и настроить форвардинг этого же порта на роутере (если, кончено, таковой присутствует в вашей сети).

Обратите внимание, что параметры подключения (качество и т.п.) настраиваются по-прежнему в UltraVNC Viewer (правый клик на иконке uvnc в трее -> Default connection options…).

  • Как сохранить настройки подключения в файл?
    Подключаетесь к серверу (сохранить настройки можно только во время подключения), затем нажимаете CTRL+ALT+F5 .