Назад | Перейти на главную страницу

Vps к ssh-туннелю ноутбука

У меня есть ноутбук, который я использую в основном как настольный компьютер, но иногда он перемещает сети. У меня есть vps со статическим адресом, и я хочу перенаправить порты с vps на ноутбук, чтобы я мог добраться до портативного компьютера с публичного адреса, даже если ноутбук находится за маршрутизатором без настройки переадресации портов.

Возможно ли это, запустив команду / скрипт на ноутбуке при запуске?

Все работает под управлением Linux, если это вообще имеет значение, я пытаюсь перенаправить трафик minecraft с vps с общедоступным адресом и без памяти на ноутбук с большим объемом памяти, но без общедоступного адреса, который иногда перемещается в разные сети. Возможно ли это как-то с ssh?

Спасибо заранее за любую помощь.

Как правильно заметил Хауке Лагинг - соединение ssh может быть прервано.

Вы должны использовать autossh для автоматического запуска и перезапуска туннелей в случае сбоя.

Обычный способ - создание VPN (например, с OpenVPN). Но вы тоже можете использовать SSH.

ssh -R [bind_address:]port:host:hostport

Вы можете автоматизировать это, используя ключи без парольной фразы, но прерванные соединения SSH не перезапускаются автоматически. Таким образом, было бы полезно выполнять вызов SSH из цикла. Хотя OpenVPN был бы более полезным.

Редактировать 1

Если вы хотите перенаправить другие удаленные адреса, кроме localhost, не забудьте поставить

GatewayPorts yes

в sshd_config файл для сервер и после этого перезапустите сервер. Вы должны использовать один из этих форматов ssh затем команда:

-R 1.2.3.4:port:host:hostport
-R \*:port:host:hostport # the \  being for the shell only
-R :port:host:hostport

В host адрес на местный сторона (обычно localhost или один из других IP-адресов хоста).

В твоем ~/.ssh/config файл, вы можете определить порт переадресации следующим образом:

Host alias
HostName 12.34.56.78
  [Port 12345]
  [User patrick]
  [LocalForward 6900 localhost:6900]

Может использовать dyndns на ноуте?
Или вы можете добавить небольшой веб-скрипт на VPS (скрипт обновит брандмауэр), и ноутбук может запросить эту страницу с помощью wget / curl при запуске.
Сценарий может быть сценарием bash / shell и выполняться через ssh, но может быть сложнее найти соединяющийся IP-адрес из сценария оболочки (например, $ _SERVER ['REMOTE_ADDR'])