Как установить сервис ultravnc сервер. Общие сведения о программе VNC Viewer. Добавляем noVNC, как Windows-сервис

Тип программы: Инсталлятор/Portable Поддерживаемые ОС: Windows 10/8.1/8/7/Vista/XP Лицензия: Бесплатная Язык интерфейса: Английский/есть русификатор

Управлять удаленно компьютером можно абсолютно бесплатно. Для этого нужно скачать программу UltraVNC с официального сайта.

Устанавливаем UltraVNC Server на компьютер, которым планируем управлять. Для этого:

1. Запускаем скачанный с официального сайта файл . Далее во время установки выбираем UltraVNC Server, а с остальных снимаем флажки.

Для русификации нужно загрузить файлы локализации . В архиве с программой будет две папки: языковые пакеты для сервера (translated_server) и языковые пакеты для Viewer (translated_viewers). Чтобы русифицировать программу (на примере сервера) нужно файл russian.dll из папки translated_server скопировать в папку с установленной программой (по умолчанию это папка C:\Program Files\uvnc bvba\UltraVNC. После этого нужно файл russian.dll переименовать в vnclang_server.dll . Тогда перезапустить программу

2. Запускаем программу.

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

Скриншоты установки и настройки:

4.Устанавливаем UltraVNC Viewer на компьютер , телефон , планшет ... Покажу на примере планшета .

Для того чтобы узнать о своем IP нужно зайти в: Панель управления → Сеть и Интернет → Центр управления сетями и общим доступом → Изменение параметров адаптера. Далее вызвать контекстное меню на своем соединении (Wi-Fi, Ethernet) Состояние и нажать на «Сведения...». В открывшемся окне можно будет увидеть свой IP.

Скриншоты:

Для управления нужно установить клиента, который называется UltraVNC Viewer. Данная программа может быть установлена с того же установочного пакета что и сервер. Просто во время установки нужно снять флажок с ненужных утилит, а оставить только Viewer.

Для операционной андроид найти клиента для управления совсем несложно. Достаточно в маркете ввести в поиск UltraVNC. Так как это открытая и бесплатная программа, то решений для управления достаточно. Мне понравилась программа bVNC .

6. Устанавливаем bVNC.

7. Открываем и вводим IP адрес и пароль, который мы задали в программе UltraVNC Server. После этого нажимаем «Подключиться»

8. Готово. Все должно работать.

Существует платная программа Remote Ripple PRO , которая также без проблем работает. Просто вводим IP адрес, пароль и выполняем соединение. Панель управления компьютером довольно удобная.

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

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

UltraVNC берется на . Другие известные реализации VNC - RealVNC и TightVNC , еще варианты можно найти . Теоретически они все совместимы между собой, хотя некоторые специальные функции (clipboard или file transfer) могут между разными реализациями не работать.

Помогаем новичкам

Удобен VNC и для помощи другим пользователям. Помогать, видя происходящее на экране, гораздо проще.

Однако у очень многих стоят раутеры и файерволы, и нереально требовать от новичка умения открыть для входящих соединений нужный порт. Нам на помощь приходит reverse connection (обратное соединение). В этом режиме соединение инициирует VNC сервер.

Опытный пользователь запускает у себя VNC клиент в listening mode (режиме слушания порта) (vncviewer.exe /listen ) и делает у себя порт 5500 доступным снаружи. Новичку остается только скачать и запустить VNC сервер и соединиться с клиентом по указанному IP адресу.

Вот специальная страница с инструкциями для новичка. Думаю, опытному пользователю подробные инструкции не нужны. Отмечу только, что во время соединения clipboard становится общим, и что если у новичка разрешение экрана больше вашего, то в клиенте можно масштабировать изображение до приемлемого размера.

Дополнительно

Достоинства VNC - многоплатформенность и бесплатность. Если у вас везде стоит Windows XP, то для удаленного доступа вам вероятно подойдут и встроенные средства - Remote Desktop или Remote Assistance. Вроде бы их тоже можно соединять через reverse connection.

Если у вас динамический внешний IP адрес, удобно сделать себе (бесплатный) Dynamic DNS, например на dyndns.com . У вас на компьютере будет работать маленькая программка (а в некоторых раутерах есть такая встроенная функциональность), извещающая DynDNS сервис об изменениях вашего IP. Как результат, выбранный вами domain, к примеру pupkin.dyndns.org, будет всегда показывать на ваш текущий IP адрес

Если вы профессионально занимаетесь технической поддержкой, то вам может быть особенно удобен . Это специальная облегченная версия VNC сервера, которая может делать только reverse connection и только на заранее сконфигурированные вами IP адреса. Конечно, тогда вы должны быть достаточно авторитетны для пользователя, чтобы он согласился скачать и запустить этот сконфигурированный VNC сервер с вашего собственного сайта.
(А, кого я тут обманываю... Многие пользователи и так запустят все, что им предложат)

  • 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 Добавить метки

Предупреждение: все прилетевшие тапочки будут проданы, помидоры – съедены, яйца – пожарены, испорченные – выброшены. Те, кто думают, что мы маемся фигней – вы угадали, возьмите с полки пирожок. Автор не призывает бросать мешки грудью на амбразуры. Он вообще ни к чему не призывает – он же не политик и не гражданин с активной гражданской позицией. А вот желающих подискутировать – милости просим. Сегодня я буду рассказывать вам занимательную историю о замене 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 сервера . В процессе использования было отмечено, что сервис сервера иногда падает. Для того, чтобы в нужный момент не потерять связь с машиной рекомендуется в настройках сервиса установить его автоматический перезапуск при падениях.
Добавить метки

Этот пост для того чтобы дать просто ссылку, а не описывать по телефону всё это каждый раз для друзей, знакомых, сотрудников и всех остальных.
Значит так. Во-первых Ultr@VNC бесплатна и во-вторых она замечательно работает. Для установки необходимы минимальные знания английского языка и некоторые навыки настройки любых программ, и конечно же права администратора. Естественно, если интернет идёт через роутер или еще как-то усложнён, то всё гораздо веселее. О форвардинге портов и прочем я писать не буду, этого и так хватает для любой железки .
Для примера возьмём свеженькую UltrаVNC 1.0.6.4, в старых было кое-что иначе, но не сильно.

Для начала Скачиваешь самую свежую версию UltraVNC с сайта .
Запускаешь установку. Next, next, next. До окошка выбора устанавливаемых компонентов:

Full Inslallation – устанавливает всё и сразу, и сервер и клиент (он же вьювер). По умолчанию ставится он и это правильно.
UltraVNC server only – только сервер. Я обычно ставлю на удалённые машины только его.
UltraVNC server only “silent” – то же самое, только не будет задавать лишние вопросы. (хорошо при обновлении версии)
UltraVNC viewer only – только вьювер. Может кому-то и нужен только он.


Если в будет где-то виста, то ставим галочку. Если не будет, то не ставим. Логично.


Mirror driver – полезная штука, ускоряет и улучшает и зрительно увеличивает. Ставим.


Выбираем чтобы сервер был системной службой и стартовал вместе с системой. Иконки на рабочий стол и ассоциацию с типом.vnc по желанию.


Правой клавишей мыши ткнуть в этот синий глаз, вылезает меню. В данный момент нам нужны admin properties . В результате видим все настройки UVNC сервера.


Это мои типовые настройки. От того что есть по умолчанию недалеко ушло.
Краткое описание кнопочек и галочек, идём сверху вниз и слева направо:
Секция “Incoming connections”
Accept Socket Connections – должно быть включено, чтобы всё работало.
Display – я так и не понял зачем это.
Ports – указывает порт по которым будет работать программа. По умолчанию авто, порты 5900 и 5800 соответственно. (в билдах 1.0.6.х есть глюк, вручную порты можно прописать только редактируя файл ultravnc.ini). Пусть остаётся авто, не критично.
Enable JavaViewer (HTTP connect) – возможность подключения через любой браузер с java. Полезно.
Allow Loopback Connections – разрешает короткое замыкание (оно же петля), только для тестирования работоспособности.
Loopback Only – то же самое, но отрубает вообще все подключения извне. Не нужно.
Секция “Authentication”
VNC password – пароль для подключения. Тут только латиница, остальные требования как и ко всем паролям.
Require MS Logon (и всё что к нему относится) – для управления доступом по именам и паролям пользователей windows. Я не пользуюсь.
Секция “File Transfer” – включает возможность передачи файлов. Нужно.
Секция “DSM Plugin” – возможность шифровать данные, для параноиков. Я побаловался и отключил.
Секция “When last client disconnects” – указывает что делать когда завершается подключение. Ничего, блокировать комп, завершить сеанс. Я включаю ничего. Меньше проблем.
Секция “Keyboard & Mouse” – при соединении отключается либо клавиатура/мышь на этом компе (полезно чтобы не мешали), либо не дает рулить тому кто подключился. Поддержка японского языка иногда помогает решить проблему с русским.
Секция “Query on incoming connection” – если поставить галочку, то когда кто-то подключается на локальном компе всплывает окно с вопросом “дать подключиться или не дать?”. Можно указать время, по истечении которого будет автоматически либо отказано либо принято подключение. Иногда полезно.
секция “Multi viewer connections” – регулирует, что будет если подключаются сразу несколько клиентов.
“Disconnect all existing connections” – но тут пришёл лесник и всех выгнал из леса. Крайний подключившийся выкидывает всех остальных.
“Keep existing connections” – в тесноте, да не в обиде. Все сидят и мешают друг другу.
“Refuse the new connection” – кто первый встал, того и тапки. Первый подключившийся никого не пускает.
“Refuse all new connections” – непонятная вариация предыдущего пункта.
секция “Misc.” – тут всякие полезности для удобства, ускорения работы, уменьшения трафика.
Remove Aero (Vista) – при подключении вырубает украшательства висты, и правильно.
Remove Wallpaper for Viewers – убирает обоину с рабочего стола. Полезно.
Enable Blank Monitor on Viewer Request – дает клиенту возможность отключить монитор. Пользователей внезапно потухший экран пугает больше, чем комп живущий сам по себе.
Enable Alpha-Blending Screen Blanking – то же самое, только по другому реализованое.
Capture Alpha-Blending – неведомое.
Disable Tray icon – отключает иконку в трее. Может кому и пригодится, хотя по цвету этой иконки можно видеть – подключен кто-то или нет.
Forbid the user to close down WinVNC – запрещает отключать сервер. Иногда полезно.
Default Server Screen Scale – масштаб экрана при подключении. У меня везде 1/1, ибо уменьшить всегда можно в клиенте при подключени.
Log debug info to the WinVNC.log file – пишет лог сервера, и прячет его глубоко в системную папку. Неинтересно.

Включаем что хочется, жмём “ОК” и тут может вылезти такое предупреждение.

Убираем галочку и соглашаемся. Вносим в белый список (или исключения) файрволла две программы: winvnc.exe и vncviewer.exe с соответствующими портами (по умолчанию 5900 и 5800). Как это делается надо уже уметь. В крайнем случае отключаем его.

По идее сервер настроен и работает. Желательно перезапустить компутер, на всякий случай.Чтобы проверить работу должно быть разрешено подключение на себя, запускаем UltraVNC Viewer.

Если не знаем свой IP лезем на сайт http://ip-address.domaintools.com/ и смотрим что он там пишет. Вбиваем только его, если порты стандартные. Если порты придумал сам, то что-то типа свои_ip_адрес:свой_порт (про то что у тебя есть доменное имя говорить нет смысла, зачем тогда это читаешь?). Всё остальное авто. По идее должен выдать запрос пароля. Если не выдаёт – вместо ip-адреса вбиваем localhost , вот тут то точно должен спросить пароль. Если просит – значит какие-то проблемы с входящими соединениями из сети. Ищем затык в настройках антивируса, роутера, еще чего-то что стоит между компом и интернетом. Если всё еще не просит – надо читать ошибку, курить мануал и танцевать с бубном. Но я с этим не сталкивался, что-то сделать не так – трудно.
Тут еще стоит сказать, что у многих провайдеров ip-адрес моет меняться с каждым подключением к интернету. Для нормальной и продолжительной работы придётся либо регистрироваться на https://dyn.com/ или https://www.noip.com/, либо заказывать услугу постоянный ip-адрес (он же белый, он же статический) у провайдера. В крайнем случае звонить кому-то рядом с удалённым компом, чтобы посмотрели и сказали.

Вкратце по настройкам клиента (это который UltraVNC Viewer):
Оговорю сразу, все эти настройки можно будет поменять уже подключившись, если что-то не понравится. В главном окне вбивается адрес удалённого компа, выбирается качество картинки в зависимости от скорости соединения. Можно поставить галочки: “только посмотреть” (для вуайеристов или не желающих сразу вмешиваться в работу), автоматически изменять масштаб в зависимости от размеров окна, запрашивать подтверждение выхода. Все они используются в зависимости от ситуации.
Если вам взбрело в голову использовать DSM Plugin или прокси-сервер – используйте, возможность указать их по быстрому тоже есть. Ну и в случае, если вы нашли идеальные параметры можно их сделать используемыми по умолчанию.

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


Format and Encoding – Первым делом настройки соединения, компрессия и количество цветов. Можно поиграться, но это имеет смысл, только если скорость маленькая, а трафик дорогой. В таких случаях выбираются просто минимальные комфортные настройки.
Misc :
share the server – можно или нельзя подключаться другим клиентам.
deiconify on bell – похоже даже разработчики не знают, что это такое.
disable clipboard transfer – отключает синхронизацию буферов обмена между сервером и клиентом. Иногда нужная штука.
Mouse and Keyboard – зачем-то можно перенастроить кнопки мыши, и включить поддержку японских шрифтов (опять же помогает и с русскими). Также регулирует поведение курсора на удалённом компе: повторять движения из клиента, не повторять, вообще не показывать курсор.
Display ^ показывать или нет панель управления (мне помогает), только смотреть, полноэкранный режим, и масштабирование окна.
Здесь же можно выставить количество попыток подключения, и что-то там про рекламу.