- Подключение к удаленному компьютеру по VNC
- 🔖 8 Лучших клиентов VNC Viewer для Windows, Linux и Mac
- Vinagre
- TeamViewer
- AnyDesk
- Ammyy Admin
- RealVNC
- Chrome Remote Beta
- How to Install VNC on Ubuntu 20.04, 18.04 & 16.04 (Windows, Linux and Mac)
- Prerequisites
- Windows VNC Clients
- MacOS VNC Clients
- Linux VNC Clients
- 1. Install Xfce and VNC
- 2. Configure VNC Server
- 3. Create SSH Tunnel
- Linux and Mac
- Windows
- 4. Connect to VNC
- VNC Viewer on Windows and MacOS
- Linux
- 5. Run VNC as a Service
- 14 replies
- Leave a reply
- set PasswordAuthentication from no to yes
Подключение к удаленному компьютеру по VNC
Работа с VNC-клиентом. Материал ориентирован на неопытного пользователя.
1. Установка VNC-клиента
2. Подключение VNC-клиента к удаленному компьютеру
3. Отключение VNC-клиента от удаленного компьютера
4. Тюнинг VNC-клиента
5. Частые проблемы
Для работы с удаленным компьютером по VNC на компьютере пользователя нужно запустить программу-клиент (VNC viewer, VNC client). Эта программа передает на удаленный компьютер данные о нажатиях на клавиши и о движениях мыши, сделанных пользователем, и показывает информацию, предназначенную к выводу на экран.
1. Установка VNC-клиента
Для ОС Windows можно бесплатно скачать и инсталлировать VNC-клиент UltraVNC и TightVNC.
Mac OS X начиная с версии 10.5 имеет поддержку VNC-клиента в RemoteDesktop. Для предыдущих версий можно использовать VNC-клиенты JollysFastVNC и Chicken.
Для Linux ветви Debian (Ubuntu) VNC-клиент устанавливается из репозитория командой:
apt-get install vncviewer
Для ветви RedHat (CentOS, Fedora) — командой:
yum install vnc
Для FreeBSD VNC-клиент (TightVNC) устанавливается из пакетов командой:
pkg_add -r tightvnc
2. Подключение VNC-клиента к удаленному компьютеру
Для подключения VNC-клиента к удаленному компьютеру требуется указать его IP-адрес или DNS-имя, и номер дисплея (по умолчанию, :0) или номер TCP-порта (по умолчанию, 5900). Если VNC-сервер требует авторизации, то при подключении к нему VNC-клиент запросит пароль. Обратите внимание, что пароль доступа к VNC-серверу не связан с каким-либо аккаунтом (учетной записью пользователя) на удаленном компьютере, а служит только для ограничения доступа к дисплею VNC-сервера.
После установки соединения и открытия экрана, в зависимости от настроек VNC-сервера может потребоваться авторизация пользователя на виртуальном сервере или может быть открыта уже запущенная рабочая сессия какого-либо пользователя.
Так как на компьютере одновременно могут работать несколько VNC-серверов, для их разделения используют параметр номер дисплея. Например, один VNC-сервер может быть запущен на дисплее :0, другой — на дисплее :1. Каждому номеру дисплея соответствует номер TCP-порта, на котором VNC-сервер принимает соединения. Номер порта для дисплея получается прибавлением номера дисплея к базовому номеру порта — 5900. Дисплею :0 соответствует TCP-порт 5900, дисплею :1 — порт 5901.
3. Отключение VNC-клиента от удаленного компьютера
При закрытии окна VNC-клиента или после выхода из окружения средствами рабочего стола, в зависимости от настроек VNC-сервера, рабочая сессия пользователя может закрыться с остановкой всех используемых программ, или продолжать работу и быть доступной снова при повторном подключении к VNC-серверу.
4. Тюнинг VNC-клиента
Большое количество передаваемой на экран информации влечет за собой повышенные требования к скорости канала — к его пропускной способности и времени передачи пакетов. Нахватка пропускной способности приводит к некомфортным задержкам при больших изменениях показывамой на экране информации — открытии новых окон, скроллинге и т.д. Особенно большие задержки будут возникать при показывании фотографий и других изображений или элементов интерфейса, имеющих большое количество цветов и сложные формы.
Главный параметр, который влияет на объем передаваемых данных — алгоритм кодирования передаваемой графики. Для уменьшения объема и, соответственно, ускорения работы, рекомендуется использовать алгоритмы Tight, ZLib, ZRLE — по сравнению с несжатыми данными (Raw), они обеспечивают сжатие в десятки раз, заметно нагружая процессор. Эти алгоритмы кодирования обеспечивают комфортную работу даже на каналах со скоростью 256-512 Кбит/сек.
Для сокращения объема передаваемой по сети информации также можно устанавливать высокий уровень сжатия (Compression Level, Compression Value), низкий уровень качества JPEG (JPEG Quality) и включать режим уменьшения количества цветов (-bgr233, Restricted colors). Самый большой эффект из них при заметном снижении качества изображения дает режим уменьшения количества цветов — объем передаваемой информации уменьшается в 1.5-3 раза, соответственно, в 1.5-3 раза ускоряется отображение на экране.
JPEG применяется алгоритмом кодирования Tight для сжатия участков экрана, содержащих фотографии и другие сложные изображения с большим числом цветов. Использование Tight+JPEG сокращает в 2-5 раз объем передаваемых при этом данных. Другие алгоритмы кодирования JPEG не поддерживают.
1. Выпадающего меню «Система -> Параметры»
Объем передаваемых данных и скорость отображения на канале 1 Мбит/сек при открытии выпадающего меню «Система -> Параметры» (на рисунке меню выделено зеленым пунктиром):
Полноцветный режим | 256 цветов (BGR233) | |||
---|---|---|---|---|
Объем | Время | Объем | Время | |
ZLib | 11 Кб | 0.09 сек | 7 Кб | 0.06 сек |
HexTile | 208 Кб | 1.6 сек | 118 Кб | 0.95 сек |
Raw | 248 Кб | 2 сек | 128 Кб | 1 сек |
5. Частые проблемы
Не удается подключиться к VNC-серверу
Медленная работа через достаточно быстрый канал
Если VNC-клиент не может согласовать с VNC-сервером использование алгоритм кодирования графики с компрессией данных, выбирается алгоритм по умолчанию — Raw, который передает данные без сжатия. Также кодирование без сжатия или с низким уровнем сжатия может автоматически выбираться VNC-клиентом при работе через быструю локальную сеть. Данную проблему можно исправить, принудительно указав в настройках VNC-клиента алгоритм кодирования с высоким уровнем сжатия — ZLib, ZRLE, Tight.
Однако, для некоторых сочетаний клиента и сервера такое решение может быть бесполезным из-за ошибок в согласовании алгоритма кодирования. Например, клиент TightVNC с сервером RealVNC часто могут работать только с кодировкой Raw. Решением в этом случае будет смена VNC-клиента или VNC-сервера.
Источник
🔖 8 Лучших клиентов VNC Viewer для Windows, Linux и Mac
Вы хотите, чтобы какой-нибудь VNC Viewer имел удаленный доступ к вашим компьютерам?
Что ж, посмотрите этот список лучших VNC-клиентов для Windows, Mac и Linux.
Функция удаленного рабочего стола или также известная как VNC (Virtual Network Computing) – это функция, которая позволяет удаленно управлять любым устройством таким образом, что его контролирует пользователь или администратор.
Как только вы подключитесь, откроется окно компьютера, в котором вы увидите рабочий стол удаленной системы и через окно которого вы можете управлять мышью или клавиатурой, чтобы ввести код, пароль или выполнить точную настройку.
Компании, специализирующиеся на удаленной помощи или поддержке по техническим проблемам или даже звонках в службу поддержки, используют эти клиенты VNC, чтобы иметь возможность управлять определенными конфигурациями на компьютерах своих клиентов или проверить, есть ли на удаленном компьютере проблемы.
Другие утилиты, которые позволяют осуществить сеанс удаленного рабочего стола, позволяют это иметь операционную систему внутри другой операционной системы.
В этом случае со своего компьютера с Linux вы можете контролировать любой компьютер или компьютер с Windows или MacOS.
Все кажется очень простым, но для использования любого VNC-клиента мы должны помнить, что вам нужен мощный компьютер и, прежде всего, быстрое соединение.
Итак, давайте рассмотрим список лучших клиентов VNC для Windows, Mac и Linux.
Vinagre
Vinagre – это инструмент, интегрированный в дистрибутивы с рабочим столом Gnome.
Vinagre выполняет функции VNC на десктопе Gnome, хотя его можно изменить или удалить.
Он также есть в других рабочих столах, которые имеют мало общего с Gnome, например Ubuntu Unity.
Его конфигурация проста, хотя вы должны иметь определенные знания о сетях.
Чтобы использовать Vinegar, вам нужно только указать IP-адрес контролируемого оборудования и адрес шлюза.
В случае удаленного компьютера, он должен добавить IP-адрес вашего компьютера.
Vinegar – это мощный, но простой инструмент для начинающих пользователей, поэтому многие разработчики оставляют его в своих операционных системах, разработках и т. д.
Для пользователей KDE и аналогичных сред, в которых используются библиотеки QT, опция, идентичная Vinegar, называется KRDC.
Это программа, которая устанавливается по умолчанию, также как и Vinagre в Gnome и которая предлагает те же функции и фокусируется на пользователей того же типа, т.е. пользователи со знанием сетей.
TeamViewer
TeamViewer – это бесплатный VNC-клиент для Windows, Linux и MAc, который также имеет приложения для Android и iPhone.
Его работа настолько проста, что он превзошел ожидания не только на уровне бизнеса, но и на личном уровне, как лучший клиент VNC.
ам нужно только установить приложение хоста и клиента на обоих компьютерах.
Затем программа выдаст вам код, который относится к этому компьютеру.
Затем для удаленного подключения и управления ноутбуком необходимо ввести пароль другого компьютера, и все.
Как видите, вам не нужно знать что-то о сетях или IP-адресах, а настройки других программ не влияют на использование TeamViewer.
К сожалению, TeamViewer не является бесплатным приложением, но является проприетарным, хотя, если вы не очень разбираетесь в сетях, лучший вариант – выбрать этот инструмент.
AnyDesk
Простота и безопасность – вот две характеристики, которые могут определять AnyDesk.
У этого VNC-клиента нет версии для iOS или Android, но вы можете удаленно управлять компьютерами Windows или macOS.
Еще один момент, где больше всего выделяется AnyDesk – это скорость соединения.
Соединение легко установить.
Вы должны открыть одно и то же приложение на клиенте и сервере.
Приложение не нужно устанавливать, оно портативное (весит всего 1,5 МБ).
На клиентском компьютере вы вводите идентификатор серверного компьютера, принимаете запрос от серверного компьютера и управляете им.
Когда вы перемещаете мышь на клиенте, он автоматически перемещает ее на сервер.
Ammyy Admin
Интерфейс Ammyy Admin напоминает мне одного из первых клиентов VNC.
Как вы можете видеть на скриншоте, дизайн устарел, но это не имеет значения, так как он работает очень хорошо, несмотря на это.
Преимущество этого приложения по сравнению с остальными очевидно: вы можете установить скорость соединения.
Вы будете админами, которые будут выбирать, с какой скоростью вы подключаетесь, и не будете серверами компании, которая нам это навязывает.
В этой программе есть два типа подключений: дистанционное управление и «Просто смотри».
Второй – как если бы вы были в видеоконференции через видеовстречи или Skype, где, конечно, клиент не может управлять компьютером.
Ammy Admin весит намного меньше, чем другие клиенты (755 КБ) и не требует установки.
RealVNC
RealVNC – это программа с кодом, похожим на Vinagre.
Оба проекта основаны на одном и том же коде, но у RealVNC есть версии для многих других платформ, не только для Gnu / Linux, но и для других платформ, таких как MacOS или Windows, и аппаратных платформ, таких как Raspberry Pi.
RealVNC более сложен для начинающих пользователей.
Следовательно, RealVNC не присутствует во многих дистрибутивах предварительно установленным способом, и вам необходимо использовать репозитории или внешние пакеты.
Если вам нужны последняя версия, на официальном сайте вы можете найти ее бесплатно для вашей ОС.
SSH – это программа, которая использует протокол SSH и позволяет нам удаленно подключаться к операционной системе, хотя в этом случае соединение осуществляется через терминал.
Вы не сможете использовать мышь, и вам также нужно намного меньше ресурсов, чем в других приложениях, но это также проблемный протокол, который может вызвать проблемы с безопасностью.
Chrome Remote Beta
Эта опция, как и TeamViewer, проприетарна, но также подходит для начинающих пользователей.
Это решение Google позволяет нам использовать удаленный рабочий стол благодаря плагину в браузере.
Chrome – это широко используемый браузер среди компьютеров не только в Windows или MacOS, но и в Gnu / Linux, поэтому эту функцию можно использовать практически в любой операционной системе.
Для его использования и установки необходимо установи только плагин в браузерах Chrome обеих операционных систем.
Источник
How to Install VNC on Ubuntu 20.04, 18.04 & 16.04 (Windows, Linux and Mac)
In this guide we will install the xfce4 desktop environment and VNC server to allow us to control Ubuntu 20.04, 18.04 & 16.04 remotely from Linux, Mac or Windows.
Prerequisites
You should use a non-root user account with sudo privileges.
You will also need to download and install a VNC client for your OS. We recommend the following:
Windows VNC Clients
- VNC Viewer (RealVNC), TightVNC or UltraVNC
- For Windows users, you will also need the PuTTY client in order to create an SSH tunnel
MacOS VNC Clients
- VNC Viewer (RealVNC) or you can use the inbuilt screen sharing utility for Mac.
Linux VNC Clients
- Ubuntu Desktop comes preloaded with a VNC-capable client called Remmina
- VNC Viewer (RealVNC),TightVNC, vinagre, krdc
1. Install Xfce and VNC
Begin by updating the package lists.
Now install Xfce4 and VNC server. Press y and ENTER if prompted to install.
2. Configure VNC Server
You will be asked to enter a password. Generate a password 8 chars long, any longer and it will be truncated.
You will also be asked if you want a view-only password where the user can only view and not control the remote server. You can skip this if you don’t require it.
VNC Server should now be running.
We now need to edit the xstartup file. Before doing so, kill VNC service.
Back up xstartup file.
Edit xstartup file.
Add the following to the bottom of the file.
This will tell VNC to start the Xfce desktop environment when VNC starts.
Save and close. (press CTRL + X , press Y and then press ENTER )
Make the xstartup file executable.
Now start vncserver again.
3. Create SSH Tunnel
VNC server is now running, but in order to encrypt communications between the VNC client and server, we must create an SSH tunnel and connect through it. We can do this by binding port 5901 of the remote connection to port 5901 on your local machine.
Linux and Mac
You can create an SSH tunnel easily using terminal. Replace john with your non-root username and your_server_ip with your server IP.
Enter your Linux password (not your VNC password) and skip to Step 4 below.
Windows
You will need the PuTTY client to create an SSH Tunnel.
In PuTTY, select Connection > SSH > Tunnels.
In Source Port, enter 5901
In Destination, add your_ip:5901
Click Add.
In the left-hand category menu, go to Session.
In Host Name, enter your non-root Linux username and IP (e.g, john@192.168.1.10 ).
In Saved Sessions, enter “SSH Tunnel” (you can call this whatever you like).
Click Save and then click Open to start the connection.
When prompted, enter your Linux password to log in (not your VNC password).
Once logged in, to check if the SSH tunnel is up, right-click the PuTTY title bar to invoke the context menu, then click Event Log.
If the tunnel is up, at the bottom of the log, you should see Local port 5901 forwarding to ip_address:5901
You can now continue to the next step to connect to the VNC server using your VNC client.
4. Connect to VNC
Port 5901 of the remote connection should now be bound to port 5901 on your local machine, creating a secure SSH tunnel. You should now be able to connect to the VNC server using locahost:5509 with your VNC client of choice.
VNC Viewer on Windows and MacOS
There are many different VNC viewers for Windows and MacOS, but in this guide we are using VNC Viewer (RealVNC).
Run VNC Viewer, click File and click New Connection.
In the VNC Server field, enter localhost:5901 and click OK.
Double-click localhost:5901.
When prompted for a password, enter the VNC password you created earlier, check Remember Password, and click OK.
If you see a warning about Unencrypted connection, ignore it and click Continue. (VNC Viewer is not aware that we are using an encrypted SSH tunnel)
If VNC connects successfully, you should see the default Xfce desktop.
Click Use default config if prompted.
Linux
If you are using Ubuntu Desktop, it comes preloaded with a VNC-capable client called Remmina. Just type “VNC” or “remmina” in the dash to start it.
In the Name field, Enter a profile name of your choice.
In the Server field, enter localhost::5901 .
In the Password, field, enter your VNC password your created earlier.
Click Connect.
If VNC connects successfully, you should see the default Xfce desktop.
Click Use default config if prompted.
5. Run VNC as a Service
You should now make VNC a service so that it starts automatically should you ever reboot your server.
Create a new unit file for VNC. A unit file encodes information about a service
Paste in the following, replacing john with your own user name. You can also change 1280×800 to your desired resolution.
Save and close. (press CTRL + X , press Y and then press ENTER )
Reload systemd manager configuration.
Enable the unit file you just created.
Start vncserver again.
Ensure service is running.
If the vncserver is running, you should see:
Now if you ever reboot your server, the VNC Server service should start automatically.
To connect to VNC again, don’t forget to start your SSH tunnel in Step 3.
Let me know if this helped. Follow me on Twitter, Facebook and YouTube, or 🍊 buy me a smoothie.
p.s. I increased my AdSense revenue by 200% using AI 🤖. Read my Ezoic review to find out how.
14 replies
Leave a reply
When i get to step 3 and enter “ssh -L 5901:127.0.0.1:5901 -C -N -l (my username and ip)”, its asks for my password. I input my password and hit enter. Command line hangs forever (unless I ctl+c). When i enter ” lsof -ti:5901″, it returns empty.
I solve it myself by following command.
sudo apt-get install -y xfonts-75dpi xfonts-100dpi
touch /home/maint/.cache/sessions/xfce4-session- hostname
touch /home/jonh/.Xresources
chmod 777 /home/maint/.cache/sessions/xfce4-session- hostname
chmod 777 /home/jonh/.Xresources
sudo vi /etc/ssh/sshd_config
set PasswordAuthentication from no to yes
I am getting following error from VNC viewer.
“The connection closed unexpectedly.”
It seems VNC viewer is sending request “SYN_SENT” to the server.
But, it dose not show anything on the VNC viewer.
The vncserver is up and running on ubuntu as well as SSH Tunnel on windows 10.
Here is my environment information.
・Client side.
VNC Viewer(realVNC)
WIndows 10
・Server side
Ubuntu 20.04
Do you have any suggestion for this?
I followed your tutorial, but I am still running into issues with with VNC Viewer not being able to connect to the Ubuntu 18.04 VNC server. The encrypted tunnel is created & connected, but when I do the RealVNC set up as indicated I get this error: ‘channel 2: open failed: connect failed: Connection refused’ in the terminal with the active encrypted tunnel. Any advice on how to fix this? Cheers.
I love your articles and have started to follow them.
I have one problem with this article;
When I run VNC Viewer the windows in linux dont have the minimize, maximize, close button in the top right of windows. If open my laptop and log in i see the buttons.
Also how can i stop from loading directly into the GUI login screen on my laptop. I want the text based login on laptop but still have the desktop through SSH Tunnel.
Thank,
Tommy
Thank you. Great article. Works perfectly. All steps are very easy to follow.
Hi, where did you give command below,
ssh -L 5901:127.0.0.1:5901 -C -N -l john your_server_ip
in the server side? or in the client side?
it’s not clear in this article. (I’ve never done this thing before so I’m asking..)
Excellent…very simple explanation…Thanks a lot
Maybe, you can help me, I followed your tutorial, but it doesn’t work for me. I’m connected through a VPN, I can connected using ssh to VNC server. If i started a VNC client from the VNC server using MobaXterm ssh terminal (Xwindows export application), I can connect to the VNC server. However, if I started the VNC client from my local computer, I cannot connect to the VNC server.
Do you have an advice for me?
I had the same issue. I figured that the vncserver was not running on the server after I had shut down and restarted the system. So, if you work your way thru the tutorial, you will have to make sure you do it without interruption.
Try to start vncserver on the server and reconnect. Then automate the service so that vncserver starts automatically upon boot.
Great guide, i was able to connect and i’m glad i finally found a working article.
At first ufw was not enabled, so i double checked the guide and found out your initial setup guide and that fixed the connection problem.
Then i had grey screen after successfully connected. I googled for that too and found a solution like
sudo apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
and added the lines below to
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
thank you this config.. works on a fresh Ubuntu 18.04 .. now! I can see just one Window the files one… how I can see the menu bar?? thank you
Excellent explanation, and the one that works, unlike many other copy-pasted clickbait.
really works on 18.04, with some small error, but it starts-up, the error could be because of other tutorials that didnt work…
thank you guys.
how about samba tutoria to work with graphical gui on lubuntu?
regards from PowerPC G5 running lubuntu with 16 gigs of ram and 18 users for server ;)))
Источник