Tightvnc не подключается к windows 10
В мире ИТ существует уже довольно широкий спектр операционных систем, начиная с серверных, заканчивая операционными системами для мобильных устройств. В обычных пользовательских компьютерах и в серверах довольно часто используются две ОС — Linux и Windows. Поэтому очень часто возникают ситуации, когда приходится подключаться по сети из одной операционной системы к другой для выполнения разнообразных операций.
В этой статье мы рассмотрим варианты подключения к Linux из Windows. Существуют бесплатные и условно бесплатные утилиты вроде AnyDesk или TeamViewer, но установка их довольно тривиальна и не нуждается в дополнительном пояснении. Утилиты подобного рода обладают рядом ограничений при бесплатном некоммерческом использовании, либо их функциональность не удовлетворяет тем или иным потребностям пользователя. Мы рассмотрим полностью бесплатные способы как подключится к Linux из Windows.
Удалённый доступ к Linux с помощью VNC
На сегодняшний день самое популярное удаленное подключение к Linux из Windows, с использованием привычный в Windows графического интерфейса, является VNC (Virtual Network Computing) — утилита, использующая протокол RFB (Remote FrameBuffer — удалённый кадровый буфер). Управление осуществляется путём передачи нажатий клавиш на клавиатуре и движений мыши с одного компьютера на другой и ретрансляции содержимого экрана через компьютерную сеть.
В качестве сервера VNC в данном примере будет использоваться TightVNC, установленный в Ubuntu 20.04. Для установки сервера VNC необходимо выполнить ряд действий:
Шаг 1. Установка рабочей среды XFCE
Xfce — одна из самых легковесных рабочих сред, используемых в Linux, она будет быстро работать даже при слабом и нестабильном сетевом подключении. Установите её с помощью команд:
sudo apt update
sudo apt install xfce4 xfce4-goodies
Шаг 2. Установка TightVNC
Далее установите TightVNC:
sudo apt install tightvncserver
Шаг 3. Настройка пароля
Перед началом выполнения всех действий необходимо задать пароль пользователя VNC. Выполните команду:
Вам будет предложено создать новый пароль, а также пароль только для просмотра. Откажитесь от второй опции:
Завершите процесс vncserver:
vncserver -kill :1
Шаг 4. Настройка скрипта запуска
Отредактируйте скрипт, который выполняется после запуска VNC-сервера:
Он должен содержать такой текст:
Сделайте файл исполняемым:
Шаг 5. Запуск VNC сервера
На этом этапе уже можно запустить VNC-сервер с помощью команды:
Шаг 6. Подключение из Windows
Для того, чтобы подключиться из Windows к вашему Linux-серверу, используйте TightVNC Viewer.
Укажите IP-адрес компьютера, к которому нужно подключиться, и номер порта в поле Remote Host. В данном примере — 192.168.56.102::5901:
После того, как будет введён пароль, вы должны увидеть рабочий стол Xfce:
Шаг 8. Настройка systemd
Для того, чтобы запуск вашего VNC-сервера добавить в автозагрузку надо использовать systemd. Создайте новый файл сервиса systemd:
sudo nano /etc/systemd/system/[email protected]
Его содержимое должно быть следующим:
[Unit]
Description=Systemd VNC server startup script for Ubuntu 20.04
After=syslog.target network.target
[Service]
Type=forking
User=ubuntu
ExecStartPre=-/usr/bin/vncserver -kill :%i &> /dev/null
ExecStart=/usr/bin/vncserver -depth 24 -geometry 800x600 :%i
PIDFile=/home/ubuntu/.vnc/%H:%i.pid
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
Измените имя пользователя ubuntu и рабочего каталога ubuntu на нужные вам значения. Если у вас запущен VNC-сервер, остановите его:
vncserver -kill :1
Сообщите systemd о появлении нового сервиса:
sudo systemctl daemon-reload
Добавьте запуск вашего нового сервиса в список автозагрузки:
sudo systemctl enable [email protected]
sudo systemctl start vncserver@1
Использование RDP для удалённого подключения
Помимо VNC, для управления Linux-сервером из Windows можно воспользоваться RDP (Remote Desktop Protocol). Для этого на компьютере с Ubuntu 20.04 установите утилиту xrdp:
sudo apt install xrdp
Для корректной работы сервиса необходимо добавить пользователя xrdp в группу ssl-cert:
sudo adduser xrdp ssl-cert
sudo apt-get install xfce4
Добавьте Xfce в сессии RDP в качестве рабочего стола по умолчанию:
Перезапустите сервис xrdp:
sudo systemctl restart xrdp.service
Процедура подключения из Windows к Linux-серверу по протоколу RDP почти ничем не отличается от подключения к удалённым Windows-серверам. Введите IP-адрес сервера, логин и пароль пользователя в Linux:
Если всё сделано правильно, вы увидите рабочий стол Xfce:
Подключение к Linux из Windows по SSH
Для подключения к компьютеру под управлением Linux по протоколу SSH из Windows можно воспользоваться PowerShell. Сначала становите OpenSSH Client, если ещё не установлен. Запустите на вашем компьютере PowerShell от имени администратора системы и выполните следующую команду:
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
Это необходимо для того, чтобы узнать текущую версию SSH-клиента. В данном примере доступна версия OpenSSH.Client-0.0.1.0. Установите OpenSSH.Client с помощью команды:
Add-WindowsCapability -Online -Name OpenSSH.Client
Для того, чтобы подключиться к устройству, на котором запущен SSH-сервер, необходимо ввести имя пользователя и IP-адрес. Команда для подключения по SSH используя PowerShell выглядит так:
Здесь ubuntu — имя пользователя на удалённом компьютере, а 192.168.56.1 — IP-адрес Linux-сервера, на котором запущен демон SSH.
При первом подключении необходимо подтвердить использование специального персонального ключа для шифрованного соединения по SSH-протоколу (введите слово Yes), затем введите пароль пользователя (в данном случае для пользователя ubuntu):
Как видите, соединение прошло успешно. Теперь можно выполнять все команды так же, как если бы вы их выполняли используя стандартный Linux SSH-клиент:
Для завершения терминальной сессии на удалённом компьютере введите команду exit. Теперь вы знаете как выполняется подключение к Linux из Windows по SSH.
Использование Putty для подключения к Linux
Пожалуй, одним из самых популярных способов подключения к Linux из Windows является кроссплатформенная утилита Putty — небольшая по размерам, но очень часто незаменима для подключения по таким протоколам как SSH, Telnet, rlogin и даже с помощью последовательных портов.
Для обычного подключения к Linux-серверу по протоколу SSH достаточно в поле Host Name (or IP-address) указать его IP-адрес и нажать кнопку Open (в данном примере Linux-сервер имеет IP-адрес: 192.168.56.102):
Далее нужно будет ввести логин и пароль. Если всё сделано правильно, запустится удалённая сессия терминала Linux:
Мало кто знает, что Putty позволяет запустить почти любое приложение, установленное на компьютере с Linux, по сети в Windows. Для этого на компьютере с Windows нужно установить собственный X-сервер. В данном примере воспользуемся Xming.
Скачайте Xming с официального сайта. Установка довольно тривиальная, поэтому не будем на ней останавливаться. Ничего не меняйте в процессе установки. Просто нажимайте кнопку Next до тех пор, пока программа не установится и не запустится:
Когда установка Xming завершится, откройте Putty и в настройках сессии для вашего подключения в разделе SSH -> X11 включите флажок напротив опции Enable X11 forwarding, а также, в строке Отображение дисплея X впишите значение localhost:0, после чего откройте сессию подключения с помощью кнопки Open:
В открывшемся терминале Putty введите консольное название программы, обладающей графическим интерфейсом. В данном примере введено название графического редактора drawing:
(Знак & позволит запустить программу в фоновом режиме, в этом случае в окне Putty можно будет выполнять и другие команды):
Как видите, Linux-приложение drawing успешно запустилось по сети на X-сервере, установленном в Windows. С ним можно работать так же, как и с локальным приложением.
Выводы
Сегодня не существует слишком уж больших проблем для подключения к Linux из Windows. Способов существует довольно много. Каждый из них обладает своими достоинствами и недостатками, например, скорость работы VNC, да и других тоже, существенно зависит от скорости сетевого соединения. Существуют также программные средства, позволяющие подключаться к Linux-серверам используя мессенджеры или браузеры.
Нет похожих записей
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
tcp 0 0 0.0.0.0:54984 0.0.0.0:* LISTEN 1514/rpc.statd
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 2705/Xvnc
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1456/rpcbind
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1853/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1557/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1932/master
tcp 0 0 . 48928 . * LISTEN 1514/rpc.statd
tcp 0 0 . 111 . * LISTEN 1456/rpcbind
tcp 0 0 . 22 . * LISTEN 1853/sshd
tcp 0 0 ::1:631 . * LISTEN 1557/cupsd
tcp 0 0 ::1:25 . * LISTEN 1932/master
До порта 5901 вообще не доходят пакеты.
А до порта 22 доходят, результат команды netstat -nltp выдает 2 строки для ssh
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1853/sshd
tcp 0 0 . 22 . * LISTEN 1853/sshd
а для vnc только
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 2705/Xvnc
как сделать чтобы для vnc появилась такая же строчка ?
tcp 0 0 . 5901 . * LISTEN 1853/sshd
Кирилл: Вы, извиняюсь, давно на линуксе?
netstat с ключем -p показывает какой процесс забиндил порт.
Т.е. 1853/sshd - это процесс номер 1853 с файловым именем sshd
Вы хотите чтоб sshd слушал порт 5901. При чем тут vnc??
Вот же у вас строка: tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 2705/Xvnc
"порт TCP 5901 забинден процессом номер 2705 Xvnc. слушает пакеты приходящие с любой подсети"
На линуксе относительно давно, но пользуюсь им очень очень редко.
По поводу 1853/sshd , я знаю что 1853 это pid , а не порт.
Вопрос был только в отличии строк :
tcp 0 0 0.0.0.0:5901
tcp 0 0 . 5901
А именно - почему в первом случае сеть 0.0.0.0, а во втором только порт.
Как мне выше ответили что строка ниже это для протокола IPv6 , я как то об этом не подумал ранее.
2) iptables --list - проверить работают ли правила (возможно требуется iptables restart)
3) ifconfig - удостовериться какой ip стоит на сервере и его ли слушает vnc (или 0.0.0.0)
4) проверить к какому ip вы подключаетесь (ping ip - проверить на доступность) 1)0.0.0.0:5901
2)правила работают, открытый порт присутствует в списке
3) с ifconfig мне непонятно. Помимо lo присуствуют еще 2 интерфейса, я так понимаю с какими то локальными адресами. Но среди них нет того на который я подключаюсь через ssh
4) IP отвечает так как именно по нему я подключаюсь по ssh
Fri Dec 9 21:13:40 2016
vncext: VNC extension running!
vncext: Listening for VNC connections on all interface(s), port 5901
vncext: created VNC server for screen 0
GNOME_KEYRING_SOCKET=/tmp/keyring-wmTroM/socket
SSH_AUTH_SOCK=/tmp/keyring-wmTroM/socket.ssh
GNOME_KEYRING_PID=2325
** (gnome-panel:2351): CRITICAL **: panel_key_file_load_from_uri: assertion `uri != NULL' failed
** Message: NumLock remembering disabled because hostname is set to "localhost"
Failed to play sound: File or data not found
(polkit-gnome-authentication-agent-1:2363): GLib-GObject-WARNING **: cannot register existing type `_PolkitError'
(polkit-gnome-authentication-agent-1:2363): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed
** (nm-applet:2362): WARNING **: request_name(): Could not acquire the NetworkManagerUserSettings service.
Error: (9) Connection ":1.33" is not allowed to own the service "org.freedesktop.NetworkManagerUserSettings" due to security policies in the configuration file
(null): Warning no default label for /home/***/.gvfs
** (gnome-panel:2351): WARNING **: panel-applet-frame.c:1288: failed to load applet OAFIID:GnoteApplet:
(null)
(polkit-gnome-authentication-agent-1:2363): polkit-gnome-1-WARNING **: No icon for themed icon with name 'preferences-system-network-proxy'
Предупреждение менеджера окон: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x1a00003 (Аутен)
Предупреждение менеджера окон: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
Предупреждение менеджера окон: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x1a000ac (Аутен)
Предупреждение менеджера окон: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
(polkit-gnome-authentication-agent-1:2363): polkit-gnome-1-WARNING **: No icon for themed icon with name 'preferences-system-network-proxy'
Предупреждение менеджера окон: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x1a00108 (Аутен)
Предупреждение менеджера окон: meta_window_activate called by a pager with a 0 timestamp; the pager needs to be fixed.
Работа с общими файловыми ресурсами - лишь один из примеров использования 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).
Рис. 27. Экран расширений. Нажмите на картинку для увеличения.В правом верхнем углу экрана нужно выбрать "Закачать расширение/Upload Extension" (рис. 28).
Рис. 28. Экран закачки расширения. Нажмите на картинку для увеличения.Нажимаем "Найти/Browse", выбираем местоположение скачанного TightVNC. Нажимаем кнопку "Закачать/Upload" для установки на SSL Explorer.
Шаг 2
Надо установить TightVNC на ПК, к которому нужен удалённый доступ. ПО можно скачать, например, здесь. После скачивания, нужно установить его на ПК. Убедитесь, что оно установилось как служба. Отметим, что также нужно задать пароль для доступа к серверу TightVNC. Закладка настройки находится в разделе "Показать свойства пользователя/Show current user properties" - рис. 29.
Этот пароль будет нужно указывать при каждом подключении к ПК с клиента VNC (в том числе через SSL Explorer). Рекомендуем отметить "разрешить локальные подключения/allow loopback connections" в разделе администрирования (рис. 30).
Примечание. SSL Explorer использует порт TCP 443, TightVNC - TCP 5900. На компьютере с серверной частью VNC брандмауэр должен разрешать входящие подключения на порт TCP 5900.
Шаг 3
Создадим ярлык для подключения TightVNC. Выбираем "Приложения/Applications" в меню "Управление ресурсами/Resource Management" (рис. 31).
Рис. 31. Приложения. Нажмите на картинку для увеличения.Выбираем тип ярлыка. В нашем случае "TightVNC for Windows" (рис. 32).
Рис. 32. Ярлык. Нажмите на картинку для увеличения.Указываем название и описание ярлыка (рис. 33).
Рис. 33. Описание. Нажмите на картинку для увеличения.Указываем IP-адрес и порт TightVNC, по умолчанию порт - 5900 (рис. 34).
Рис. 34. Настройки приложения. Нажмите на картинку для увеличения.Нужно выбрать политику для ресурса. В нашем случае - "Все/Everybody" (рис. 35).
Рис. 35. Политика. Нажмите на картинку для увеличения.На следующем экране (рис. 36) подтверждаем выбор. Если всё указано верно, то нажимаем "Завершить/Finish".
Рис. 36. Проверка параметров. Нажмите на картинку для увеличения.На последнем экране (рис. 37) нужно подтвердить создание ярлыка. Нажимаем "Завершить работу мастера/Exit Wizard", после чего возвращаемся в главное меню.
Рис. 37. Подтверждение настроек. Нажмите на картинку для увеличения.Проверяем работу Remote Desktop
В правом верхнем углу экрана нажимаем "Выход/Logout" для завершения сеанса Super User. Выполняем вход от имени только что созданного пользователя (в нашем случае John Smith). После входа видим список доступных ярлыков "My Favorites", в котором показаны все установленные приложения.
Рис. 38. Консоль пользователя. Нажмите на картинку для увеличения.Экран, показанный на рис. 38, - именно то, что увидит пользователь при работе с SSL Explorer. Выбираем TightVNC, после чего SSL Explorer запустит клиента Java VPN, настроит туннель и запустит клиента TightVNC для удалённого подключения к рабочему столу ПК. Если всё настроено правильно, то появится экран входа TightVNC, где нужно указать соответствующий пароль (рис. 39).
После аутентификации появится окно рабочего стола. На рис. 40 показан пример.
Я использую Windows 7.
Я бы дважды проверить, что вы переадресовали порт, как это все, что вам нужно сделать.
Если есть проблема, попробуйте изменить порт по умолчанию в случае, если ваш провайдер его блокирует.
наконец, вы можете дважды проверить, что вы переадресовали правильный протокол, я не могу вспомнить, если это TCP или UDP, который необходим, но если у вас есть один - попробуйте другой (или оба!)
192.168.1.100-это частный IP-адрес, что вы никогда не сможете получить доступ из внешней сети. Необходимо использовать IP-адрес модема. Ваш маршрутизатор делает преобразование адресов, которое видит ваш 192.168.1.100 внутренне, и когда вы отправляете электронную почту или что-нибудь еще в сети, ваш маршрутизатор переводит этот IP в общедоступный IP-адрес, который понимает "облако". Я не знаю точно, как настроить TightVNC, но я знаю, что вам нужно использовать свой публичный адрес, а не частный IP адрес. Надеюсь, это поможет вам двигаться в правильном направлении.
по данным этой, вам нужно препровождать 5800 также.
указанный IP-адрес назначается маршрутизатором. Вместо того, чтобы пытаться получить доступ к этому адресу, вы должны получить IP-адрес, который вы маршрутизатор назначен провайдером.
мой IP-адрес 66.xxx.xxx.90 поэтому мне нужно будет ввести эту информацию (а не IP-адрес 192-й серии), чтобы получить доступ к моему компьютеру с помощью TightVNC.
Если он говорит, что ваши порты все еще закрыты, ваши порты все еще закрыты. Это может быть связано с вашим интернет-провайдером или любым устройством в вашем пути подключения. Это также может быть связано с тем, что ваш сервер VNC не работает, поэтому убедитесь, что он работает перед тестированием.
вот некоторые вещи проверка:
- есть ли у Win7 активный брандмауэр? Может ли он разрешать локальный трафик на этих портах, но блокировать внешний трафик? (Если неясно, отключите его достаточно долго, чтобы проверить.)
- какую марку/модель маршрутизатора вы используете? Последняя прошивка? Другие пользователи сообщали о проблемах с пересылкой?
- чем выше ваш маршрутизатор? Кабельный/DSL модем? Должен ли он быть настроен для разрешения входящего трафика?
Я уверен (могу ошибаться), что вы, вероятно, нужно вперед 5901/5801. Разве VNC не добавляет отображаемый номер к выбранному порту? Первый показ номер 1. Давненько я напутал с VNC, но просто мысль.
Читайте также: