Это часто задаваемый вопрос, на который есть ответ. Однако решения не работают для меня, поэтому я хотел бы получить небольшую помощь, чтобы выяснить, почему. Я знаю, что я успешно делал это в прошлом.
Я посмотрел: VNC-туннель через SSH-соединение
VNC-туннель через SSH-соединение
http://crl.ucsd.edu/handbook/vnc/
http://martybugs.net/smoothwall/puttyvnc.cgi
Я настроил PUTTY следующим образом:
Я открываю соединение с сервером A. Затем
ssh -L 5901:localhost:5901 serverB
После входа в систему я начинаю сеанс VNC.
-bash-4.1$ vncserver :1
New 'serverB:1 (balter)' desktop is serverB:1
Starting applications specified in /home/users/balter/.vnc/xstartup
Log file is /home/users/balter/.vnc/serverB:1.log
-bash-4.1$
Я должен быть готов к работе, поэтому я пробую VNC к localhost
или localhost:0
или localhost:5900
. Соединение не устанавливается.
Предложения?
РЕДАКТИРОВАТЬ:Мне следовало бы добавить, что serverB находится за брандмауэром, поэтому мне нужно использовать serverA в качестве посредника.
ПРАВКА 2 -- на основе комментария Никиты:
Вывод netstat -inpt
на сервере B
-bash-4.1$ netstat -inpt
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
bond0 1500 0 25034847553 0 0 0 0 0 0 0 BMmRU
eth0 1500 0 7645087 0 0 0 148398 0 0 0 BMRU
eth4 1500 0 10494292891 0 0 0 0 0 0 0 BMsRU
eth5 1500 0 10644409020 0 0 0 0 0 0 0 BMRU
eth6 1500 0 14540554669 0 0 0 0 0 0 0 BMsRU
ib0 1500 0 5055 0 0 0 4267 0 1 0 BMRU
lo 65536 0 8932391289 0 0 0 8932391289 0 0 0 LRU
-bash-4.1$
Как это интерпретировать?
решение1
Разве вы не забыли нажать кнопку «Добавить» в показанном на снимке экрана диалоговом окне, чтобы фактически добавить прямую спецификацию в список?
Вы уверены, что ваш последний удаленный сервер использует 5901? Кажется, так и должно быть, но проверьте это с помощью netstat после запуска vncserver.
Может быть лучше использовать только одну переадресацию. Переадресация не на localhost, а на serverB прямо в диалоге Putty. Вам нужно будет только подключиться к serverB по SSH, чтобы запустить vncserver там, не нужно ничего переадресовывать. Конечно, vncserver сервера B не должен слушать только localhost. (Код переадресации SSH разрешает имена на сервере, поэтому serverB должен разрешаться только на serverA, даже если вы используете его имя в диалоге Putty).