12

如何配置 TortoiseSVN 以从家里连接到公司防火墙后面的 SVN 服务器?

这是我很难找到答案的问题。这是我没有的:

  1. 对企业内网的官方VPN 访问。
  2. 控制 SVN 服务器。
  3. 对 Intranet 的任何控制。
  4. IT部门的合作。

这是我拥有的:

  1. 在办公室的办公桌上完全控制我的电脑。
  2. 意志

这是我尝试过的一个镜头,但似乎没有成功(人名、地点和机器的名称已更改以保护无辜者):

失败的甜蜜网络图

  1. 我正在使用Wippien设置从我的家用计算机 (NG-ATHOME) 到我办公桌上的工作计算机的零配置 VPN。这行得通,我对两台机器都有完全的网络访问权限。
  2. 我在 NG-WORKBOX 上运行了适用于 Windows 的 OpenSSH 。
  3. 我在 NG-ATHOME 上有 PuTTY 连接到 NG-WORKBOX 以通过端口 1080 动态隧道。SOCKS 代理正在工作,因为我可以使用任何 Web 浏览器验证这一点。我可以自信地说这不是场景中的问题。
  4. 我在配置为在 127.0.0.1:1080 上使用代理的 NG-ATHOME 上使用 TortoiseSVN。当我尝试点击“svn://NG-SOURCE/PonyRepository”时,出现错误:无法连接到主机。我可以ping通NG-SOURCE。

为什么SVN不起作用?

嗯,我怀疑 SVN 不喜欢 SOCKS。有人有建议吗?

4

3 回答 3

10

您是否尝试过直接转发到目标机器上的 3690 端口而不是使用 socks?

ssh -L 3690:remote:3690
svn info svn://localhost/blahblahblah
于 2010-03-03T20:02:23.447 回答
0

如果有人仍然感兴趣,这里有一个教程链接,该链接显示了如何设置隧道以绕过防火墙。

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

于 2011-02-05T19:16:27.773 回答
0

如果您在计算机上安装了 Web 服务器,则您可以在标准 http 端口 80 上使用 svn 以及使用 apache svn 模块的 Web 服务器。只需下载并激活所需的模块:

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
于 2013-01-28T09:05:02.440 回答