Подтвердить что ты не робот

Подключение к серверу SVN за корпоративным брандмауэром из дома

Как я могу настроить TortoiseSVN для подключения к серверу SVN за корпоративным брандмауэром из дома?

На этот вопрос мне трудно найти ответ. Вот то, что у меня нет:

  1. Официальный VPN-доступ к корпоративной сети.
  2. Контроль над сервером SVN.
  3. Любой контроль над интранетом.
  4. Сотрудничество со стороны ИТ-отдела.

Вот то, что у меня есть:

  1. Полный контроль над моим компьютером за столом в офисе.
  2. сила воли

Это выстрел из того, что я пытался, и, похоже, безуспешно (имена людей, мест и машин были изменены, чтобы защитить невинных):

Sweet network diagram of fail

  1. Я использую Wippien для настройки VPN с нулевой конфигурацией с домашнего компьютера (NG-ATHOME) на рабочий компьютер за столом. Это работает, у меня есть общий доступ к сети и с обеих машин.
  2. У меня OpenSSH для Windows работает на NG-WORKBOX.
  3. У меня есть PuTTY на NG-ATHOME, подключающийся к NG-WORKBOX для динамического туннелирования через порт 1080. Прокси SOCKS работает, так как я могу проверить это с помощью любого веб-браузера. Я могу с уверенностью сказать, что это не проблема в сценарии.
  4. Я использую TortoiseSVN на NG-ATHOME, настроенном на использование прокси на 127.0.0.1:1080. Когда я пытаюсь нажать "svn://NG-SOURCE/PonyRepository", я получаю сообщение об ошибке: не удается подключиться к хосту. Я могу нормально пинговать NG-SOURCE.

Почему не работает SVN?

Хм, у меня есть подозрение, что SVN не любит SOCKS. У кого-нибудь есть предложение?

4b9b3361

Ответ 1

Вы пробовали переадресовать напрямую на порт 3690 на целевой машине вместо использования носков?

ssh -L 3690:remote:3690
svn info svn://localhost/blahblahblah

Ответ 3

Если на компьютере установлен веб-сервер, на котором установлен репозиторий, вы можете фактически использовать svn на стандартном http-порту 80 вместе с веб-сервером, используя модуль apache svn. Просто загрузите и активируйте необходимые модули:

LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
# external modules
LoadModule dav_svn_module ../svn/bin/mod_dav_svn.so
LoadModule authz_svn_module ../svn/bin/mod_authz_svn.so

...

<Location /svn >
    DAV svn
    SVNParentPath D:\Repositories
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile D:\Repositories\permisiuni.conf
    Require valid-user
    SVNAdvertiseV2Protocol Off # prevents Subversion E160013: '/svn/xxx/!svn/me' path not found* error
</Location>

Конечно, вам нужно будет создать permisiuni.conf, содержащий пользователей и пароли в следующем формате:

username1:password1
username2:password2
username3:password3