Сначала на Raspberry Pi установите VNC server и запустите его с виртуальным столом 1. Как установить VNC server и VNC клиент описано в статье Как удаленно подключиться к рабочему столу Raspberry Pi. Можно настроить автозапуск VNC сервера. Как это сделать описано здесь. На компьютере, с которго вы хотите подключаться удаленно к Raspberry Pi, установите VNC клиент, по другому называемый VNC viewer. У меня на компьютере с Windows 7 установлен VNC-Viewer-5.3.0-Windows-64bit.exe.
Также придется настроить SSH подключение с компьютера Windows к Raspberry Pi. Подробно это описано в статье Как подключиться к Raspberry Pi из Windows по SSH. Теперь у вас есть удаленное подключение к командной строке терминала Raspberry Pi, используя SSH.
Остается добавить в программу Putty еще одну сессию для подключения к VNC серверу через SSH туннель.
В поле Saved Sessions вбейте название сессии, например, VNC SSH. В поле Host Name вбейте IP адрес Raspberry Pi в вашей локальной сети, у меня это 192.168.1.32.
В окне Category раскройте пункт SSH и выберите подпункт Auth. В правой части с помощью кнопки Browse выберите путь к вашему секретному ключу (если вы генерировали ключи для SSH). Если нет, тогда при соединении по SSH вам нужно будет ввести пароль для логина pi. Это слово raspberry, если вы его не поменяли.
Снова в окне Category программы Putty в пункте SSH выберите подпункт Tunnels. В правой части в поле Source port укажите 5901. В поле Destination укажите IP адрес Raspberry Pi и через двоеточие порт 5901. Нажмите кнопку Add (Добавить).
Осталось сохранить эти настройки в виде сессии. Снова в окне Category выберите Session. Проверьте, чтобы в поле Host Name был указан IP адрес Raspberry Pi и в поле Saved Sessions ваше название этой сессии. Нажмите кнопку Save (Сохранить). В нижнем поле к уже имеющимся должно добавиться название вашей новой сессии.
На Raspberry Pi к этому моменту должен быть запущен VNC сервер с виртуальным столом 1.
В программе Putty в окне выбираем новую сессию, у меня она названа VNC SSH и нажимаем кнопку Load (Загрузить). После загрузки настроек нажимаем кнопку Open (Открыть). На экране появляется окно терминала с приглашением login as: (Войти как:). Вбиваем pi. Программа предлагает ввести passphrase (пароль), который я указал при генерации ключей. Ввожу пароль (на экране он не отображается) и нажимаю Enter. Если пароль не указывали, то его и не спросят.
Выводятся сообщения и приглашение командной строки Raspberry Pi. SSH соединение установлено.
На компьютере Windows запускаем VNC клиент, у меня это программа VNC-Viewer-5.3.0-Windows-64bit.exe. В первом окне указываем адрес 127.0.0.1 и через двоеточие 1 (виртуальный стол 1). Выберем из списка Prefer off (без шифрования) и нажимаем Connect (Подключиться).
В следующем окне предупреждения поставим галку Don't warn me about this again (Не предупреждать меня снова) и нажимаем Continue. В новом окне вводим пароль, который указали при установке VNC сервера на Raspberry Pi. Нажимаем Ok.
На экране должно появиться окно рабочего стола Raspberry Pi. В окне можно работать мышкой, как за рабочим столом Raspberry Pi.
Из Linux подключиться к VNC серверу Raspberry Pi, используя SSH туннель, намного проще. У меня установлен Linux Mint. Проверьте доступность хоста командой ping. Для моей сети это будет ping 192.168.1.32. Затем в командной строке терминала даем команду:
ssh pi@192.168.1.32 -L 5901:localhost:5901 -N -f
потом команду:
sudo vncviewer localhost:1
Заметьте, что между localhost и :1 нет пробела. При запуске же vncserver или vncviewer с рабочим столом :1 перед :1 ставится пробел.
Система запрашивает пароль для sudo, вводим пароль. После чего будет запрос пароля, который мы давали при установке и первом запуске VNC сервера на Raspberry Pi. Вводим этот пароль и на экране рабочий стол Raspberry Pi.
IP адрес, выдаваемый вашему устройству, может меняться. Чтобы не менять каждый раз настройки Putty, надо закрепить за Raspberry Pi конкретный IP адрес. Как это сделать, описано в статье Как в настройках роутера присвоить статический IP адрес устройству по MAC адресу? Для настройки понадобится MAC адрес. Как его узнать, описано в статье Как узнать и изменить MAC адрес .
В Linux узнать MAC адрес проще. В терминале дайте команду ifconfig. В сообщении для вашего сетевого устройства найдите параметр HWaddr (HardWare address, т.е. адрес "железа"). Это и будет MAC адрес.
Если что-то не работает, то посмотрите статьи по ссылкам и использованные ресурсы.
Использованные ресурсы:
http://habrahabr.ru/post/212661/
http://helpdeskgeek.com/how-to/tunnel-vnc-over-ssh/
https://pve.proxmox.com/wiki/VNC_over_SSH_Tunnel_in_PuTTY
http://www.cyberciti.biz/tips/tunneling-vnc-connections-over-ssh-howto.html
|