VNC через SSH-туннель работает или нет, неизвестные причины

VNC через SSH-туннель работает или нет, неизвестные причины

У меня Ubuntu 20.04.3 на двух компьютерах PC1 и PC2. Я могу подключиться через VNC (remmina) между ними без проблем.

Теперь я пробую использовать VNC через SSH-туннель.

  1. Установить туннель

     [PC1]$ ssh -L 5900:localhost:5900 [email protected]
     bind [127.0.0.1]:5900: Address already in use
     channel_setup_fwd_listener_tcpip: cannot listen to port: 5900
     Could not request local forwarding.
     Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-41-generic x86_64)
     ...
    
  2. В remmina подключитесь с помощью Protocol Remmina VNC Plugin (то же самое, что и нетуннелированное соединение) к localhost:5900. Меня просят ввести пароль, установленный вНастройки->Поделиться->Совместное использование экрана. Я ввожу этот пароль и получаюНе удалось аутентифицироваться, попытка повторного подключения....

То же самое происходит при попытке соединения ПК2 -> ПК1 (через туннель SSH).

А.Как я могу это исправить?


У меня есть еще один PC3 с Win10, и я хочу VNC с PC3 на оба PC1/2, используя tigervnc. Я могу сделать это без проблем.

Теперь я пытаюсь использовать VNC через SSH-туннель. Я могу сделать это PC3 -> PC1, используя приглашение mingw64 в PC3, с

  1. В командной строке mingw64 bash выполните следующие действия:

    [PC3]$ ssh -L 5900:localhost:5900 [email protected]
    bind [127.0.0.1]:5900: Address already in use
    channel_setup_fwd_listener_tcpip: cannot listen to port: 5900
    Could not request local forwarding.
    Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-41-generic x86_64)
    ...
    
  2. В tigervnc подключитесь к localhost:5900. У меня спрашивают пароль, установленный вНастройки->Поделиться->Совместное использование экрана. Я ввожу этот пароль, и у меня уже есть экран VNC на ПК3.

Если я попытаюсь сделать то же самое с PC3 -> PC2, я получу

  1. В командной строке mingw64 bash выполните следующие действия:

    [PC3]$ ssh -L 5900:localhost:5900 [email protected]
    bind [127.0.0.1]:5900: Address already in use
    channel_setup_fwd_listener_tcpip: cannot listen to port: 5900
    Could not request local forwarding.
    Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-41-generic x86_64)
    ...
    
  2. В tigervnc подключитесь к localhost:5900. У меня спрашивают пароль, установленный вНастройки->Поделиться->Совместное использование экрана. Я ввожу этот пароль и получаюОшибка аутентификации.

Б.Как я могу это исправить?


Следующая информация может быть полезна: В ПК1 у меня есть

$ gsettings list-recursively org.gnome.Vino
org.gnome.Vino prompt-enabled false
org.gnome.Vino require-encryption false
org.gnome.Vino use-alternative-port false
org.gnome.Vino disable-background false
org.gnome.Vino disable-xdamage false
org.gnome.Vino alternative-port uint16 5900
org.gnome.Vino icon-visibility 'client'
org.gnome.Vino authentication-methods ['vnc']
org.gnome.Vino network-interface ''
org.gnome.Vino notify-on-connect true
org.gnome.Vino mailto ''
org.gnome.Vino lock-screen-on-disconnect false
org.gnome.Vino use-upnp false
org.gnome.Vino vnc-password '<12-char string>'
org.gnome.Vino view-only false

На ПК2 у меня то же самое, за исключением

org.gnome.Vino vnc-password 'keyring'

И когда я пытаюсь установить пароль вНастройки->Поделиться->Совместное использование экрана, я ограничен 8 символами, что не является обычным случаем, с которым мне приходилось сталкиваться.

решение1

Я исправил разницу между ПК1 и ПК2, что привело к

PC3 -> PC1 (SSH tunnel): OK
PC3 -> PC2 (SSH tunnel): Failed

В /etc/ssh/sshd_configPC2 я установил раньше из соображений безопасности AllowTcpForwarding no. Закомментировав эту строку, я смог подключиться.


Затем я исправил SSH-туннель PC1 -> PC2

  1. Установить туннель

     [PC1]$ ssh -L 5900:localhost:5900 [email protected]
     Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-41-generic x86_64)
     ...
    
  2. В remmina подключитесь с помощью Protocol Remmina VNC Plugin (то же самое, что и нетуннелированное соединение) к localhost:5902. Меня просят ввести пароль, установленный вНастройки->Поделиться->Совместное использование экрана. Я ввожу этот пароль и получаю удаленный рабочий стол.

То же самое для ПК2 -> ПК1.

Связанный контент