Tightvnc горячие клавиши. Подключение к удаленному компьютеру по VNC. Медленная работа через достаточно быстрый канал

  • Дата: 27.12.2022
Бывает нам нужен удаленный доступ в визуальную оболочку Linux, данная задача требуется крайне редко, но если это требуется, нет ничего не возможного:) Для этой цели рекомендую использовать tightvnc , почему именно tightVNC? Данный софт способен как из linux , так и из windows удаленно подключиться к рабочему столу, его установка крайне проста и не требует каких-то особенных танцев с бубном:) Возможно есть еще более лучший софт, ну поделитесь им с нами:)
В довесок ко всему прочему tightVNC способен работать на низких каналах связи, для оптимизации это хороший плюс.
Перейдем к установке!

Установка сервера tightvnc на машине, к которой нужно подключиться:
sudo apt-get install tightvncserver
В последних обновлениях ubuntu, а именно с 14.04 версии был небольшой баг с gnome, когда при подключение вместо раб. стола выводил серый экран, поэтому для подключения нужно использовать другой модуль оболочки:
sudo apt-get install xfce4 xfce4-goodies
Установка пароля для доступа:
vncpasswd ~/.vnc/passwd Файл passwd будет создан в скрытой папки в вашей домашней директории… Можете сами создать эту папку.vnc...

Запустить с нужной вам настройкой:
sudo tightvncserver -geometry 1024x768 -depth 16 Запуск tightVNC с разрешением 1024х768 и глубиной цветов 16 бит

Стандартный запуск:
sudo vncserver:1
Уничтожить процесс после завершения:
sudo vncserver -kill:1

Примечание:

Как изменить стандартный порт tightVNC?
Для доступа на удаленной машине должен быть проброшен порт 5901, это стандартный порт tightVNC , изменить его можно при подключение, при подключение в стандартном случае Вы используете:1 - это порт 5901, если хотите использовать порт 5911, следовательно при подключение будет:11 и так далее: например вам нужен порт 7829, запускаем vncserver с таким правилом:
sudo vncserver:7829 вычитаем 5900 = 1929, значит при подключение к удаленной машине пишем: айпи:1929 или так: айпи:7829, используйте как нравится, не забудьте пробросить нужный вам порт.
tightVNC серый экран при подключение
Если у вас был баг с серым экраном при подключение и вы установили пакет xfce4 , тогда вам нужно изменить файл xstartup :
sudo nano root/.vnc/xstartup За-комментируйте всё, что есть в данном файле и допишите следующее:
#!bin/sh xrdb $HOME/.Xresources startxfce4 &
tightVNC не работает смена раскладки клавиатуры
Если у Вас не переключается раскладка клавиатуры, допишете:
#!bin/sh xrdb $HOME/.Xresources startxfce4 & export XKL_XMODMAP_DISABLE=1 Но это лишнее, этот баг случается крайне редко...
Ниже прикреплю установочные пакеты tightVNC viewer и server для Windows 32 и 64 bit .

Работа с общими файловыми ресурсами - лишь один из примеров использования SSL Explorer. Ниже мы покажем способ удалённого доступа к рабочему столу Windows средствами решения, основанного на открытом исходном коде - TightVNC, совмещённом с туннелированием SSL Explorer.

Вы спросите: почему нужно использовать TightVNC, если в SSL Explorer уже есть поддержка RDP? На самом деле, поддержка RDP есть, и вовсе не обязательно использовать TightVNC. К сожалению, не все ОС поддерживают RDP, например Windows XP Home.

Кроме того, RDP является протоколом Windows, а VNC - кросс-платформенным. Другими словами, расширение Windows TightVNC, установленное на компьютер с SSL Explorer, позволит работать не только с Windows, но и с Linux и другими системами, на которые установлен сервер VNC. VNC является решением, основанным на открытом исходном коде, и не требует покупки лицензии, а также его можно самостоятельно изменять по мере необходимости. Кстати, для SSL Explorer есть расширения с поддержкой и других протоколов, таких как Citrix ICA для пользователей серверов Citrix.

Для настройки TightVNC нужно сделать всего три шага.

  • Установить поддержку TightVNC в SSL Explorer в разделе "Управление расширениями/Extension Manager".
  • Установить TightVNC на ПК, к которому нужно предоставить удалённый доступ.
  • Создать ярлык для подключения SSL Explorer к нужному ПК.

Шаг 1

Скачиваем TightVNC . В архиве есть XML-файл для интеграции с SSL Explorer.

Заходим в раздел "Управление расширениями/Extension Manager" в меню "Конфигурация/Configuration" (рис. 27).

Рис. 28. Экран закачки расширения. Нажмите на картинку для увеличения.

Нажимаем "Найти/Browse" , выбираем местоположение скачанного TightVNC. Нажимаем кнопку "Закачать/Upload" для установки на SSL Explorer.

Надо установить TightVNC на ПК, к которому нужен удалённый доступ. ПО можно скачать, например, . После скачивания, нужно установить его на ПК. Убедитесь, что оно установилось как служба. Отметим, что также нужно задать пароль для доступа к серверу TightVNC. Закладка настройки находится в разделе "Показать свойства пользователя/Show current user properties" - рис. 29.


Рис. 29. Настройка TightVNC.

Этот пароль будет нужно указывать при каждом подключении к ПК с клиента VNC (в том числе через SSL Explorer). Рекомендуем отметить "разрешить локальные подключения/allow loopback connections" в разделе администрирования (рис. 30).


Рис. 30. Администрирование TightVNC.

Примечание. SSL Explorer использует порт TCP 443, TightVNC - TCP 5900. На компьютере с серверной частью VNC брандмауэр должен разрешать входящие подключения на порт TCP 5900.

Шаг 3

Создадим ярлык для подключения TightVNC. Выбираем "Приложения/Applications" в меню "Управление ресурсами/Resource Management" (рис. 31).

Рис. 31. Приложения. Нажмите на картинку для увеличения.

Выбираем тип ярлыка. В нашем случае "TightVNC for Windows" (рис. 32).

Рис. 32. Ярлык. Нажмите на картинку для увеличения.

Указываем название и описание ярлыка (рис. 33).

Рис. 34. Настройки приложения. Нажмите на картинку для увеличения.

Нужно выбрать политику для ресурса. В нашем случае - "Все/Everybody" (рис. 35).

Рис. 35. Политика. Нажмите на картинку для увеличения.

На следующем экране (рис. 36) подтверждаем выбор. Если всё указано верно, то нажимаем "Завершить/Finish".

Рис. 37. Подтверждение настроек. Нажмите на картинку для увеличения.

В правом верхнем углу экрана нажимаем "Выход/Logout" для завершения сеанса Super User. Выполняем вход от имени только что созданного пользователя (в нашем случае John Smith). После входа видим список доступных ярлыков "My Favorites" , в котором показаны все установленные приложения.

Рис. 38. Консоль пользователя. Нажмите на картинку для увеличения.

Экран, показанный на рис. 38, - именно то, что увидит пользователь при работе с SSL Explorer. Выбираем TightVNC, после чего SSL Explorer запустит клиента Java VPN, настроит туннель и запустит клиента TightVNC для удалённого подключения к рабочему столу ПК. Если всё настроено правильно, то появится экран входа TightVNC, где нужно указать соответствующий пароль (рис. 39).

Рис. 39. Аутентификация TightVNC.

После аутентификации появится окно рабочего стола. На рис. 40 показан пример.

Рис. 40. Удалённый рабочий стол TightVNC. Нажмите на картинку для увеличения.

Для наглядной демонстрации настройки можно просмотреть Flash-ролик на сайте 3SP, в котором показаны основные этапы настройки удалённого администрирования. Несмотря на то, что в ролике показана настройка SSL Explorer со встроенным клиентом RDP, основные параметры для TightVNC будут те же. Более подробно о TightVNC можно почитать на сайте tightvnc.com .


Сегодня я расскажу про установку и настройку vnc сервера tightvnc в ubuntu 14.04 и 16.04. Сначала поговорим о том почему я выбрал именно tightvnc. Когда я первый раз ставил vnc сервер, я сначала поставил x11vnc, его описывали как легкий в установке и удобный vnc сервер. Так и есть, все работает «из коробки», но вот незадача — этот vnc сервер работает с уже существующей сессией пользователя, а не создает новую. То есть он подключается к текущему рабочему столу пользователя. Многим это подойдет, но мне нужен был такой vnc сервер, который бы при запуске создавал новую сессию. Тут на помощь мне и пришел tightvnc сервер. При запуске tightvnc сервер создает новую сессию для пользователя. Плюсы такого сервера в том, что можно задать произвольное разрешение создаваемого рабочего стола, в независимости от ограничений, наложенных системой компьютера. Например, если удаленный компьютер позволяет выставить максимальное разрешение 1280х1024, это никак не помешает создать с помощью tightvnc сервера рабочий стол с разрешением еще больше. Так же с помощью tightvnc сервера можно создать несколько рабочих столов. Это очень удобно когда необходимо организовать работу для нескольких пользователей на одном компьютере.

И так, давайте приступим к установке tightvnc server в ubuntu 16.04 и 14.04 :

Sudo apt-get install tightvncserver

Запуск tightvnc : в терминале набираем (запуск от текущего пользователя, sudo не нужен)

Vncserver

При первом запуске нужно будет ввести пароль доступа к vnc серверу (минимум 6 символов), и по желанию пароль доступа в режиме «только просмотр».

По умолчанию порт tightvnc сервера 5901. Можно указать другой порт так:

Vncserver:2

При этом tightvnc сервер будет запущен на порту 5902.

Запуск tightvnc server с заданным разрешением экрана осуществляется с параметром geometry, например:

Vncserver -geometry 1280x1024

То есть, если в терминале набрать:

Vncserver -geometry 1280x1024:3

то на порту 5903 будет запущен vnc сервер с разрешением рабочего стола 1280×1024 пикселей. Есть еще куча параметров — глубина цвета и много чего еще, в этой статье рассматриваются только основные.

Остановка tightvnc server :

Vncserver -kill:1

Будет остановлен vncserver на порту 5901.

Настройка tightvnc server

При установке tightvnc server в каталоге /home/пользователь/.vnc создается скрипт запуска, который называется xstartup. Дело в том, что при создании новой сессии tightvnc server запускает обычные иксы, а xstartup — конфигурационный файл для создаваемой x-сессии, в котором нужно указывать все программы, которые должны загружаться при старте x-сессии, вплоть до таких, как оконный менеджер, например. Вот почему, если не редактировать скрипт запуска и подключится к tightvnc серверу, то вы увидите просто серый экран. Чтобы это исправить, давайте отредактируем файл /home/пользователь/.vnc/xstartup. Первое, что нам понадобится — это добавить туда оконный менеджер. Я рекомендую оконный менеджер «metacity». Установим его:

Sudo apt-get install metacity

После установки добавим строку «metacity &» в файл xstartup:

#!/bin/sh xrdb $HOME/.Xresources #xsetroot -solid grey metacity &

Далее нужно запустить одно приложение, хотя бы терминал. В зависимости от версии дистрибутива linux команды для запуска терминала могут различаться. У меня установлен gnome-terminal. В вашем случае он может не быть установлен, а установлен xterm например. Вообщем, смотрите логи, если у вас ничего не запустится. Логи находятся в той же папке, что и xstartup.

Добавьте строку терминала следующей строкой после «metacity &»:

Gnome-terminal &

В принципе, это минимально возможная конфигурация, так как из терминала можно запустить любое приложение, но мы, чтобы до конца понять суть xstartup, добавим туда еще и браузер firefox. Все вместе получится приблизительно так:

#!/bin/sh xrdb $HOME/.Xresources #xsetroot -solid grey metacity & gnome-terminal & firefox # Fix to make GNOME work export XKL_XMODMAP_DISABLE=1 /etc/X11/Xsession

После внесения изменений в xstartup обязательно перезапустите tightvnc server, если он был запущен. Сейчас после подключения к tightvnc серверу на рабочем столе должен появится открытый терминал и браузер firefox. Но это еще не все. При желании вы можете добавить туда множество приложений, nautilus например, ну вообщем по вашему усмотрению. Я бы рекомендовал добавить док панель вместо них, например gnome-panel, чтобы каждый раз не лезть в терминал для запуска того или иного приложения. Давайте установим ее:

Sudo apt-get install gnome-panel

И добавим ее в файл xstartup вместо приложений terminal и firefox:

#!/bin/sh xrdb $HOME/.Xresources #xsetroot -solid grey metacity & gnome-panel # Fix to make GNOME work export XKL_XMODMAP_DISABLE=1 /etc/X11/Xsession

Теперь при старте x-сессии будет запускаться панель gnome.

Вот и все, настройку tightvnc server на этом можно завершить. Но для прожженных гномоводов у меня еще кое что есть, при старте x-сессии можно запустить gnome сессию. Вот скрипт запуска для gnome сессии:

#!/bin/sh gnome-session & gnome-panel & gnome-settings-daemon & metacity export XKL_XMODMAP_DISABLE=1 #/etc/X11/Xsession

Хочу предупредить, что у меня в gnome сессии возникали глюки с браузерами: раскладка не переключалась, некоторые клавиши срабатывали неправильно. Вообщем смотрите что для вас лучше — иксы или gnome сессия.

Вопрос распространения ПО всегда актуален. Теперь он касается TightVNC. Можно просто прикрепить к политике msi-пакет. Но настройки придётся вносить отдельно: либо вручную, либо батником.

Вкратце - ниже.

Создаем батник следующего содержания:

net use O: \\%1\C$

copy vnc.msi O:\ /y

copy vnc.reg O:\ /y

psexec \\%1 msiexec /i C:\vnc.msi /quiet /norestart

psexec \\%1 regedit -s C:\vnc.reg

net use O: /delete /y

O: - название сетевого диска;

%1 - имя удаленного компьютера (можно подать как параметр при вызове батника из командной строки или же заменить прямо в батнике на нужное имя);

vnc.msi - установочный файл TightVNC, должен лежать в той же папке, что и батник, тестировалось на версии TightVNC 2.6.4 32-bit;

vnc.reg - предварительно экспортированная в файл ветка реестра HKEY_LOCAL_MACHINE\SOFTWARE\TightVNC с машины, на которой уже установлен и настроен TightVNC (ветка содержит такие параметры, как пароль для подключения, файл должен лежать в той же папке, что и батник).

Если удобней стартовый скрипт - пожалуйста! Если доверяем только себе - вручную через psexec.

P.S. Рег-файлы под Windows7 и Windows XP отличаются.

P.S.2. DFMirage-драйвер дисплея ставить тоже нужно, но с этим надо разбираться отдельно. Без него VNC-сервер может знатно тормозить.

VNC (расшифровывается как Virtual Network Computing) - это система, позволяющая вам использовать клавиатуру и мышь для взаимодействия с графическим интерфейсом пользователя на удалённом сервере. Эта система позволяет управлять файлами, программным обеспечением и настройками на удалённом сервере пользователям, чувствующим себя некомфортно при работе с инструментами командной строки.

В этой статье мы опишем процесс установки VNC на сервер с Ubuntu 16.04, а также узнаем, как создать защищённое соединение с этим сервером с помощью SSH туннеля. В качестве сервера VNC мы будем использовать TightVNC - быстрый и лёгкий пакет для удалённого доступа. Благодаря этому продукту наше VNC соединение будет работать надёжно даже на медленном соединении с Интернетом.

Перед установкой

Для следования описанным в этой статье инструкциям вам понадобятся:

    Дроплет с Ubuntu 16.04, настроенный согласно шагам, описанным в , включая создание не-рутового (non-root) пользователя с привилегиями sudo.

    Локальный компьютер с клиентом VNC, поддерживающим соединения через SSH туннель. Если вы используете Windows, вы можете воспользоваться TightVNC, RealVNC или UltraVNC. Пользователи Mas OS X могут использовать встроенную утилиту Screen Sharing, или воспользоваться кросс-платформенным приложением, например, RealVNC. Пользователи Linux имеют широкий выбор: vinagre , krdc , RealVNC, TightVNC и др.

Шаг 1 - Установка Desktop Environment и сервера VNC

По умолчанию дроплеты с Ubuntu 16.04 не имеют графической среды рабочего стола и установленного сервера VNC, поэтому мы начнём с их установки. Мы установим пакеты последней версии среды рабочего стола Xfce и пакет TightVNC из репозиториев Ubuntu.

На вашем сервере установите пакеты Xfce и TightVNC.

  • sudo apt install xfce4 xfce4-goodies tightvncserver

Для завершения первичной настройки VNC сервера после его установки воспользуйтесь командой vncserver для установки надёжного пароля.

  • vncserver

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

Выполнение vncserver завершает установки VNC созданием файлов конфигурации по умолчанию, а также созданием информации для соединения с нашим сервером. После установки этих пакетов мы можем начать настраивать наш сервер.

Шаг 2 - Настройка сервера VNC

Сначала укажем команды, которые сервер VNC должен выполнять при запуске. Эти команды задаются в конфигурационном файле xstartup в поддиректории.vnc вашей домашней директории. Скрипт запуска был создан во время выполнения команды vncserver на предыдущем шаге, сейчас мы изменим некоторые команды для работы с Xfce.

При первом запуске VNC запускает инстанс сервера по умолчанию на порту 5901. Этот порт называется портом отображения (display port), и в VNC он имеет обозначение:1 . VNC может запускать много инстансов на других портах, например, :2 , :3 , и так далее. При работе с серверами VNC помните, что порт отображения с номером:X работает на порту 5900+X .

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

  • vncserver -kill:1

Вывод должен выглядеть похожим образом с точностью до идентификатора процесса (process ID):

Killing Xtightvnc process ID 17648

Перед внесением изменений в новый файл xstartup , сделаем резервную копию исходного файла.

  • mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

Теперь создадим новый файл xstartup используя nano или другой текстовый редактор.

  • nano ~/.vnc/xstartup

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

#!/bin/bash xrdb $HOME/.Xresources startxfce4 &

Первая команда файла xrdb $HOME/.Xresources сообщает фреймворку графического интерфейса пользователя VNC, что необходимо использовать пользовательский файл.Xresources . Файл.Xresources сохраняет определённые пользовательские настройки рабочего стола, например, цвета терминала, тему курсора, рендеринг шрифтов. Вторая команда предписывает серверу запустить Xfce, который и позволяет вам комфортно управлять вашим сервером.

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

  • sudo chmod +x ~/.vnc/xstartup

Теперь перезапустим сервер VNC.

  • vncserver

Сервер должен перезапуститься и вывести нечто похожее в консоль:

New "X" desktop is your_server_name.com:1 Starting applications specified in /home/sammy/.vnc/xstartup Log file is /home/sammy/.vnc/liniverse.com:1.log

Шаг 3 - Тестирование рабочего стола VNC

Теперь проверим соединение с вашим VNC сервером.

Сначала создадим SSH соединение на вашей локальной машине для установки безопасного соединения с VNC. Вы можете сделать это с помощью терминала на Linux или OS X следующей командой. Не забудьте заменить username и server_ip_address на имя своего пользователя с правами sudo и IP адрес вашего сервера.

  • ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address

Если вы используете графический клиент SSH, например, PuTTY, задайте server_ip_address в качестве IP адреса соединения, а также установите localhost:5901 в качестве пробрасываемого порта в настройках соединения SSH своего клиента.

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

Вы можете осуществлять доступ к файлам в вашей домашней директории с помощью файлового менеджера или из командной строки:

Шаг 4 - Создание файла сервиса VNC

Сначала создадим юнит-файл /etc/systemd/system/[email protected] с помощью вашего текстового редактора:

Скопируйте и вставьте в него следующее содержимое. Убедитесь, что вы изменили значение поля User и имя пользователя в поле PIDFILE на ваши значения.

/etc/systemd/system/[email protected]

Description=Start TightVNC server at startup After=syslog.target network.target Type=forking User=sammy PAMName=login PIDFile=/home/sammy /.vnc/%H:%i.pid ExecStartPre=-/usr/bin/vncserver -kill:%i > /dev/null 2>&1 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800:%i ExecStop=/usr/bin/vncserver -kill:%i WantedBy=multi-user.target

  • sudo systemctl daemon-reload

Активируем юнит-файл.

Остановим текущий инстанс сервера VNC, если он запущен.

  • vncserver -kill:1
  • sudo systemctl start vncserver@1

Убедимся, что сервис запущен, этой командой:

  • sudo systemctl status vncserver@1

Если запуск прошёл корректно, вывод должен выглядеть похожим образом:

Название Вывод

[email protected] - TightVNC server on Ubuntu 16.04 Loaded: loaded (/etc/systemd/system/[email protected]; enabled; vendor preset: enabled) Active: active (running) since Mon 2016-04-25 03:21:34 EDT; 6s ago Process: 2924 ExecStop=/usr/bin/vncserver -kill:%i (code=exited, status=0/SUCCESS) ... systemd: Starting TightVNC server on Ubuntu 16.04... systemd: pam_unix(login:session): session opened for user finid by (uid=0) systemd: pam_unix(login:session): session opened for user finid by (uid=0) systemd: Started TightVNC server on Ubuntu 16.04.

Заключение

Теперь у вас есть установленный и настроенный сервер VNC на вашем сервере с Ubuntu 16.04. Вы можете управлять своими файлами, программным обеспечением и настройками с помощью простого и знакомого графического интерфейса пользователя.