У меня есть следующие настройки:

A: мой ноутбук с Linux дома
B: машина Windows, к которой у меня есть доступ через VNC, этот компьютер находится за ограничительным межсетевым экраном
C: ПЛК в той же подсети, что и B

Я хотел бы создать туннель между A:port1 и C:port2 через B, чтобы инициализация соединения от A до localhost:port1 заканчивалась подключением к C:port2.

Можно ли это сделать, подключившись от B к A через ssh, и если да, то как?

1 ответ1

1

Ну, если вы хотите использовать SSH, вы можете

A) подключиться от A к B через ssh с переадресацией портов, если у вас есть ssh-сервер на B, например

user@A $  ssh -L 1122:C:1122 B

B) подключиться от B к A через ssh, с обратной переадресацией портов, если у вас все в порядке с доступом по ssh из B в A

user@B $  ssh -R 1122:C:1122 A

Если вы выберете подход B, вы можете уменьшить, но не устранить воздействие на компьютер A, поскольку доступ по ssh может быть ограничен переадресацией портов. Например, путем аутентификации через pubkey с ограничениями, установленными в авторизованных ключах.

auser@A $ cat ~/.ssh/authorized_keys
restrict,port-forwarding ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGiHycmak/rgoAF+A+wG+K8Rk2iYhcVXcuFiajEOxHe3 buser

buser@B $ ssh -v -R 1122:C:1122 -N -i path/to/my/key auser@A

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .