ВСТУПЛЕНИЕ
Это обсуждение является продолжением здесь: superuser.com/questions/610383/remote-access-without-teamviewer-or-hamachi/610396?noredirect = 1 # comment755389_610396
Я хочу получить удаленный и безопасный доступ к своему Raspberry Pi по SSH и VNC. Вот что я использую:
- Маршрутизатор: Westell A90-750022-07 (portforward.com/english/routers/port_forwarding/Westell/A90-750022-07/Minecraft_Server.htm)
- Клиент: HP DV9000, Windows, Putty (для CLI), tigerVNC-просмотрщик (для GUI)
- Сервер: Raspberry Pi, Arch Linux, tigerVNC-сервер, openSSH
В основном то, что я узнал из предыдущего обсуждения (см. Первую ссылку выше), заключалось в том, что мне не нужно использовать программное обеспечение VPN, такое как openVPN. Они сказали, что мне просто нужно перенаправить порты.
ГЛАВНАЯ ПРОБЛЕМА
- Я могу настроить переадресацию портов и проверить это: www.yougetsignal.com/tools/open-ports
НО
- Я не могу удаленно SSH к моему серверу с замазкой
- Я не знаю, как безопасно подключиться, используя VNC и SSH вместе
================================================== ======================
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ - Настройки маршрутизатора
Вот мои текущие настройки (скриншоты 6 и 7 из второй ссылки выше):
- Протокол: оба
- Начальная точка: 65432
- Конечный порт: 65432
- LAN порт: 22
- Направление: в
- Направление порта: дст
Последний скриншот из второй ссылки выше:
- Входящий только выбранный
- Raspberry Pi выбран в качестве устройства локальной сети с его частным IP
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ - Настройки Putty
Примечание. Если вашим клиентом является iPhone, вы можете использовать vSSH Lite вместо Putty.
- Назначение: публичный IP-адрес
- Порт: 65432
- Протокол: SSH
См. Обновление 1: раньше я получал ошибки здесь, потому что пытался удаленно подключиться, находясь в локальной сети. Вот почему есть несколько комментариев о SSH и замазке ниже.
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ - Настройки tigerVNC-viewer
Примечание. Если вашим клиентом является iPhone, вы можете использовать PocketCloud вместо tigerVNC-viewer.
- Не совсем уверен, с чего начать. Я буду исследовать это, хотя ...
Смотрите обновление 2
Обновление 1
Я сделал большую ошибку с putty: очевидно, вы не можете использовать SSH от клиента в вашей домашней сети до его публичного адреса. Спасибо всем за ваш отзыв. Я действительно ценю время, которое вы все потратили на помощь мне. Извините, что сделал такую глупую ошибку!
Редактировать: Согласно комментарию TheReddog ниже, это могло бы быть возможно с чем-то под названием « IP Passthrough », но так как я смог успешно соединиться со шпатлевкой, я действительно не изучал это.
Теперь мне просто нужно выяснить, как сделать то же самое с надежно подключенным клиентом VNC...
Обновление 2
Я думаю, что я получил TigerVNC-клиент для безопасной работы. Я следовал за этими двумя руководствами:
- Используйте vncserver в linux для запуска сеанса VNC только на локальном хосте - https://wiki.archlinux.org/index.php/Vncserver#Securing_VNC_Server_by_SSH_Tunnels)
- Сделайте туннельное соединение клиента замазки. Затем запустите "локальный" сеанс клиента VNC - http://www.maths.utas.edu.au/People/Hill/vncvnc-html.
Подведем итоги этих двух ссылок: в основном, первая ссылка объясняет все. Согласно информации под заголовком « На сервере », сделайте это:
vncserver -geometry 1440x900 -alwaysshared -dpi 96 -localhost :1
.
Затем в разделе « На клиенте » в инструкциях объясняется, как подключить VNC, туннелированный через SSH, в Linux.
- Команда SSH:
ssh IP_OF_TARGET_MACHINE -L 8900/localhost/5901
- Команда VNC:
vncviewer localhost:8900
Вторая ссылка в основном показывает вам, как выполнить команду SSH клиента с помощью putty и команду VNC клиента с помощью средства просмотра VNC в Windows.
Могу ли я получить подтверждение того, что это безопасно?