В моей локальной сети я могу легко VNC-over-an-ssh-tunnel. Я хочу сделать то же самое из-за рубежа.
Сервер настроен на прием соединений ssh на стороне WAN, и это работает надежно. Проблема в том, что за границей я не могу начать успешную сессию VNC над туннелем ssh. Аналогичная настройка туннелирования используется, когда я делаю то же самое в своей локальной сети (что прекрасно работает).
Итак, «оттуда», я могу подключить SSH, но когда я пытаюсь подключить VNC к 127.0.0.1 , Я получаю UltraVNC: Connection failed - End of stream Возможные причины - Другой пользователь уже прослушивает этот идентификатор - Плохое соединение ... с любыми портами, которые я могу использовать.
К счастью, TightVNC обеспечивает некоторый уровень ведения журнала. Неудачное соединение записывается как таковое:
[ 512/ 1904] 2015-03-22 10:33:34:617 : Initialization of socket stream and input/output gates...
[ 512/ 1904] 2015-03-22 10:33:34:617 : Connection is established
[ 512/ 1904] 2015-03-22 10:33:34:617 - Protocol stage is "Handshake".
[ 512/ 1904] 2015-03-22 10:33:34:647 - onDisconnect: Connection has been gracefully closed
[ 512/ 2060] 2015-03-22 10:33:35:719 - Process focus restoration in the RfbKeySym class
[ 512/ 2060] 2015-03-22 10:33:35:719 - Process focus loss in the RfbKeySym class
[ 512/ 2060] 2015-03-22 10:33:35:829 - Process focus restoration in the RfbKeySym class
И успешный выглядит так (из моей локальной сети):
[ 7536/ 2900] 2015-03-22 11:22:28:892 : Initialization of socket stream and input/output gates...
[ 7536/ 2900] 2015-03-22 11:22:28:892 : Connection is established
[ 7536/ 2900] 2015-03-22 11:22:28:892 - Protocol stage is "Handshake".
[ 7536/ 8032] 2015-03-22 11:22:28:946 client rect: 0, 0; 124, 31
[ 7536/ 8032] 2015-03-22 11:22:28:946 Desktop-window. (x, y): (0, 29); (w, h): (124, 2)
[ 7536/ 2900] 2015-03-22 11:22:29:040 - Server sent protocol version: RFB 003.008
[ 7536/ 2900] 2015-03-22 11:22:29:040 - Send to server protocol version: RFB 003.008
После нескольких недель вытягивания волос другой клиент попытки и попытка какой-либо конфигурации переадресации портов, о которой я мог думать (на маршрутизаторах каждой из сторон), я наконец сделал прорыв.
Я установил второй туннель ssh в PuTTY - Dynamic на порту 1080 (D1080). Затем я использовал клиент VNC, который позволяет прокси-соединение, RealVNC VNC-Viewer, и указал его на localhost-порт 1080 (тип SOCKS 5).
ЭТО. РАБОТАЕТ. Теперь я уверен, что моя сессия VNC обеспечена, но только если я прохожу через локальный прокси-сервер SOCKS, когда я нахожусь за границей. С другой стороны, я не могу использовать мой любимый клиент UltraVNC Viewer.
Кроме того, я не понимаю, что происходит; Я ищу объяснение. Почему простой туннель L5900 не выполняет работу с WAN, когда он работает в локальной сети?