Подключение к серверу SVN за корпоративным брандмауэром из дома - PullRequest
12 голосов
/ 03 марта 2010

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

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

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

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

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

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

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. У кого-нибудь есть предложение?

Ответы [ 3 ]

10 голосов
/ 03 марта 2010

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

ssh -L 3690:remote:3690
svn info svn://localhost/blahblahblah
0 голосов
/ 28 января 2013

Если на вашем компьютере установлен веб-сервер, на котором установлено хранилище, вы можете использовать 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
0 голосов
/ 05 февраля 2011

Если кому-то все еще интересно, вот ссылка на учебник, показывающий, как настроить туннель для обхода брандмауэра.

http://problemssol.blogspot.com/2010/12/ssh-tunelling-to-reach-svn-repository.html

...