Я пытаюсь подключиться напрямую к своему рабочему компьютеру (работа), который доступен только через внешний сервер (снаружи).
Итак, сетевой путь: дом »снаружи» работа
В идеале это должно работать:
home$ ssh -f -N -L2222:work.example.com:22 outside.example.com
home$ ssh localhost -p 2222 ## This just hangs
Это не так. Я также могу заменить work.example.com на совершенно другой сервер с тем же результатом. Шаги правильные, потому что я могу использовать ту же логику для подключения к веб-серверу рабочего хоста:
home$ ssh -f -N -L10080:work.example.com:80 outside.example.com
home$ lynx http://localhost:10080/ ## work's pretty web page is displayed
Кроме того, я могу работать по SSH, если сначала зайду на улицу :
home$ ssh outside.example.com
outside$ ssh work.example.com
work$ ## Yay, success!
Наконец, это также работает в сценарии с участием различных серверов:
home$ ssh -f -N -L2222:different.example.com:22 another.example.com
home$ ssh localhost -p 2222
different$ ## Success!
Итак, я предполагаю, что есть некоторая конфигурация SSH снаружи, которая мешает мне использовать прямой подход, так как он работает с разными серверами.
Домой работает OpenBSD 4.6 с OpenSSH_5.3. Снаружи работает MacOSX 10.7.2 с OpenSSH_5.6p1. Работа работает CentOS 6.0 с OpenSSH_5.3p1.
РЕДАКТИРОВАТЬ: Решение посмотрел прямо на меня, когда я пришел на работу сегодня. Little Snitch (брандмауэр) блокировал мои соединения и с радостью открыл довольно много диалогов "Вы хотите разрешить это соединение". Спасибо за помощь; Я даю @golimar правильный ответ на этот вопрос, так как это было довольно правдоподобное решение.