Это разрешено. Мне просто нужно выяснить, как это сделать.
Я хочу перенаправить веб-трафик с целевой машины на мою локальную машину так, чтобы когда что-то на удаленной машине пыталось установить связь через порт 443 (https), это было из моей локальной коробки.
Проблема, которую я пытаюсь решить, заключается в следующем:
Мы проводим обучение докеров на одной конкретной машине, которую мы создали специально для этой задачи. Прямо сейчас, он не может получить доступ к github, и нам это нужно для обучения. Наша команда имеет прямой доступ к github.
Имея то, что я думаю, вероятно, просто много проблем с синтаксисом.
С моего настольного компьютера, попробовал:
ssh -vnNT -R 443:[ my ip addr from remote's perspective ]:443 [ remote host name ]
Что я вижу в выводе отладки:
debug1: Authentication succeeded (publickey).
Authenticated to remoteHostName ([remoteIpAddr]:22).
debug1: Remote connections from LOCALHOST:443 forwarded to local address [ my ip ]:443
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: pledge: network
debug1: client_input_global_request: rtype hostkeys-00@openssh.com want_reply 0
debug1: Remote: Server has disabled port forwarding.
debug1: remote forward failure for: listen 443, connect [my ip]:443
Warning: remote port forwarding failed for listen port 443
debug1: All remote forwarding requests processed
Теперь вы можете подумать, что вышеприведенное будет означать, что переадресация портов не настроена на сервере или не установлена на «нет». Я установил:
AllowTcpForwarding yes
GatewayPorts yes
... и я перезапустил его дважды. :-/