Как настроить зашифрованный туннель SSH для VNC?

Вот что происходит:

Клиент TightVNC на моем Windows-клиенте не взаимодействует с моим VNC-сервером Vino из-за некоторых функций шифрования, как показано здесь: Gnome 3.10 разделяет рабочий стол --- как настроить тип безопасности для VNC? . Поэтому я хотел создать туннель SSH. Но я понятия не имею, как это сделать. Не могли бы вы наставить меня?

Вот как я хотел, чтобы он был настроен:

Мой рабочий стол, на котором работает Ubuntu GNOME, с VNC-сервером по умолчанию Vino, доступен удаленно через VNC, но с шифрование (включено по умолчанию) отключено. Однако на моем ноутбуке с Windows я хочу иметь доступ к VNC-серверу с помощью VNC-клиента TightVNC, при этом все соединения между ними проходят через зашифрованный туннель SSH.

0
задан 13 April 2017 в 15:24

2 ответа

Если IP-адрес вашего VNC-сервера 1.2.3.4 (и работает на стандартном порте), вы можете выполнить:

ssh -L 5959:127.0.0.1:5900 user@1.2.3.4

Это устанавливает зашифрованный туннель с порта 5959 локальной машины, который волшебным образом выходит на порт 5900 в 1.2.3.4

Затем вы можете подключить VNC к localhost :: 5959

Выше предполагается, что вы также используете VNC на локальном компьютере, поэтому порт 5900 приняты; 5959 это просто еще один порт. Если порт 5900 свободен, вы можете изменить 5959 в строке ssh на 5900 и просто подключить VNC к localhost (127.0.0.1) без указания порта.

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

0
ответ дан 13 April 2017 в 15:24

Перед соединением с VNC я использую клиент Putty ( https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html ) для создания SSH-соединения из моего Ноутбук с Windows на удаленный сервер Linux и настройте туннель, используя это.

Я оставляю этот сеанс ssh запущенным, пока VNC работает, так что туннель остается включенным.

До открытия соединения Putty во время его настройки вы найдете пункт меню в списке категорий в левой части опций конфигурации клиента Putty, который называется «Соединение» с элементом подменю. называется "ssh" и под этим, еще один пункт подменю называется "Туннели".

На этой странице параметров настройте локальный (исходный) порт как 127.0.0.1:5021, а удаленный порт - как имя хоста или IP-адрес вашего сервера, а также удаленный порт, которым является ваш vncserver на хосте linux. слушаю дальше. Сохраните сессию Putty, используя удобный псевдоним. Откройте сеанс и войдите на свой сервер Linux. Это создает туннель.

Теперь откройте свое приложение Windows VNC и попросите его подключиться к 127.0.0.1:5021 - и оно будет использовать настроенный вами туннель. Обратите внимание, что вы подключаетесь к порту VNC на локальном компьютере, который, по-видимому, находится на вашем удаленном компьютере, и обратите внимание, что на удаленном компьютере правила брандмауэра могут потребовать внесения изменений, чтобы разрешить локальный трафик на порт, объявленный VNC. сервер, но нет необходимости гарантировать, что интерфейс вашей сетевой карты разрешает трафик через этот порт, потому что он туннелируется через порт 22 (ваше соединение ssh). Приветствия, Джерри

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: