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

В повседневной жизни довольно часто возникает ситуация, когда необходимо установить или настроить программы на компьютерах который находиться в соседнем кабинете, офисе или в другом городе. Бегать по кабинетам и по офисам конечно полезно для здоровья, особенно если приходится обслуживать свысше 30 компов:)) но мы не будем так над собой измываться, организуем и настроим удаленный доступ к ПК. Программ для удаленного доступа очень много и каждая по своему выделяется.

Для более продвинутых пользователей

Рассмотрим UltraVNC . Почему выбрал именно это прогу?:

  • Бесплатная,
  • Поддерживает Клиент Серверный режим работы.
  • Поддерживает передачу файлов
  • Многоклиентный режим
  • Работает под windows, Linux, Mac OS X
  • Реализовано шифрование
  • Возможность развертования в домене через политики.

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

Ниже опишу настройки для особо любопытных

Incoming Connections — входящие подключения

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

When Last Client Disconnects Когда последний клиент отключается, действия

  • Do Nothing - переводится как, ничего не делать. Пускай галочка стоит на нем:)
  • Lock Workstation (W2K) - Блокировка рабочей станции для (W2K).
  • Logoff Workstation - выход рабочих станций .

Query On Incoming Connection Запрос входящих подключений

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

Keyboard & Mouse - клавиатура и мышь.

  • Disable Viewers Inputs - отключить управление компом, будет разрешен тока просмотр.
  • Disable Local Inputs - оключить локальный ввод.

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

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

Authentication - аутентификация.

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

Misc — дополнительно

  • Remove Aero (Vista) — отключить визуальные эффекты Vista. Оставляем галочку.
  • Remove Wallpaper for Viewers — отключить обои. Для беспалевного входа на ПК, лучше убрать галочку, так как при подключении к ползователю у него будут исчезать обои. Но если нам нужна высокая производительностьвключаем эту настройку.
  • Capture Alpha-Blending — позволяем просматривать видео на сторене клиента. Хотя и не всегда эта опция работает.
  • Disable Tray icon - убрать иконку.
  • Forbid the user to close down WinVNC - запретить закрывать UltraVnc сервак.
  • Default Server Screen Scale - масштаб экрана по умолчанию.

File Transfer — управление файлами.

  • Enable — разрешить передавать файлы.

Подключение к UltraVnc server

Запускаем UlnraVnc viewer (vncviewer.exe) появляется окно с настройками:

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

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

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

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

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

    Начнем с установки 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 адреса описана в ответе на вопрос

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

    Давно вынашивал идею так чтобы управлять домашним сервером удаленно. Но так же давно всё никак не было понятия какой из моих домашних компов является сервером в конкретный момент. Однако недавно я приобрел себе новый телевизор с сетевым подключением Samsung UE40D5000 , потом купил планшет на андроиде Pegatron Duke 3G. И то и другое – замечательные устройства, достойные отдельной статьи. В итоге пришлось полностью перестраивать концепцию домашнего медиа сервера. В итоге я реализовал таки удаленное управление домашним сервером с помощью бесплатной программы .

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

    О выборе VNC клиента

    Я выбрал в качестве VNC клиента , да и сервера бесплатныю программу UltraVNC . Каких либо причин выбрать именно его не было. Просто на него наткнулмя первым. Он показался более простым в настройке, чем radmin (пожалуй самый популярный VNC клиент). Так и оказалось -UltraVNC очень прост в настройке . Плюс у UltraVNC есть portable версия клиента. Это полезно многим.

    Каких либо откровений здесь не будет. Процесс установки достаточно тривиален. Скачал, установил. Прописал порты и пароли. Главное в моем случае, что сервер сидит за роутером – прописать порты. «Авто» в этом случае выбрать нельзя.

    Настройка UltraVNC за роутером – проброс портов.

    Сложностей с подключением к установленному UltraVNC по локалке сразу никаких не возникло. Но когда я попробовал подключиться с внешнего IP – ничего не получилось. Оно и понятно. Для того чтобы увидеть сервер UltraVNC за роутером с внешнего IP нужно как минимум.