Способ указать другой хост в туннеле SSH от используемого хоста - PullRequest
2 голосов
/ 06 июня 2010

Я пытаюсь настроить SSH-туннель для доступа к Beanstalk (чтобы обойти надоедливый прокси-сервер).

Я могу заставить это работать, но с одной оговоркой: мне нужно сопоставить URL моего хоста Beanstalk (username.svn.beanstalkapp.com) в моем файле hosts с 127.0.0.1 (и использовать ip вместо домена при настройке туннеля).

Причина (я думаю) в том, что я создаю туннель, используя локальный экземпляр SSH (на Snow Leopard), и если я использую localhost или 127.0.0.1 при общении с Beanstalk, он отклоняет учетные данные авторизации. Я полагаю, что это потому, что Beanstalk использует имя хоста, указанное в запросе, чтобы определить, с какой учетной записью следует проверять комбинацию имени пользователя и пароля. Если используется localhost, я думаю, что эта информация отсутствует (каким-то образом, который требуется для Beanstalk) в запросах.

В данный момент я копаю IP для username.svn.beanstalkapp.com, сопоставляю username.svn.beanstalkapp.com с 127.0.0.1 в моем файле hosts, затем для туннеля я использую команду:

ssh -L 8080:ip:443 -p 22 -l tom -N 127.0.0.1

Я могу сказать Subversion, что репо. находится по адресу:

https://username.svn.beanstalkapp.com:8080/repo-name

При этом используется мой туннель, и имя пользователя и пароль принимаются.

Итак, у меня вопрос, есть ли опция при настройке туннеля SSH, что означало бы, что мне не пришлось бы использовать обходной путь для файла hosts?

1 Ответ

0 голосов
/ 06 июня 2010

Я бы добавил в ваш файл hosts запись, которая отображает 127.0.0.1 на нужное вам имя хоста, а затем использовал бы имя хоста для подключения к вашему туннелю.

Обновление Файл hosts - это IMO ваш лучший вариант.

...