Как получить доступ к WebService через туннель SSH?

Есть вопрос. Я сижу в закрытой сети, и мне нужен доступ к веб-сервису в демилитаризованной зоне. WebService доступен через TCP-порт, отличный от 80 (назовем его 1234), который блокируется брандмауэром закрытой сети.

Однако у меня есть SSH-доступ к серверу в DMZ (назовем его «dmzhost»), поэтому я подумал, что решение будет заключаться в том, чтобы просто установить такой туннель:

ssh -L 4321:wsIpHere:1234 username@dmzhost

После этого я смогу получить доступ к конечной точке WS через URL-адрес http://localhost:4321. Не повезло. Я попробовал это с помощью своего веб-браузера и получил сообщение

Cannot bind to address "http://localhost:1234/" No component registered on that endpoint

Я думаю, что я пропустил момент здесь где-то. Кто-нибудь знает, что я делаю неправильно?

Спасибо!


person Johan Fredrik Varen    schedule 18.02.2010    source источник


Ответы (2)


Если wsIpHere — это IP-адрес веб-сервиса в dmz, это должно работать. Но я считаю, что вы хотите использовать localhost: 4321, чтобы он работал.

telnet также является хорошим инструментом для отладки.

person Brian    schedule 18.02.2010

Вы указали, что локальный порт — 4321, но в сообщении об ошибке указано, что локальный порт — 1234.

Я рекомендую использовать тот же порт:

ssh -L 1234:wsIphere:1234 username@dmzhost
person Steve Emmerson    schedule 18.02.2010