SVN-SSH隧道通过第三台机器?

时间:2011-04-25 20:26:23

标签: macos ssh tunneling ssh-tunnel svn-ssh

我有一个客户端,我需要访问SVN + SSH设置。不幸的是,我无法将我的IP列入白名单,因为我在康卡斯特,他们有一些安全政策。但是,我确实可以SSH访问另一台我可以通过SSH连接的机器,也可以通过SSH连接到SVN服务器(通过非标准端口)...所以总循环需要看起来像:

Local Computer (OSX)  --SSH-->  Server1  --SVN+SSH_4567-->  SVN Server

我知道如何设置基本的SSH隧道,但我不知道如何设置它,或者甚至可能。救命? :)

请注意理想,我可以在~/.ssh/config~/.subversion/config中以某种方式设置此项,而不必每次都从A-> B-> C进行手动隧道我想进行提交/更新

2 个答案:

答案 0 :(得分:3)

ssh -L 1234:svnserver:4567 server1

隧道连接将是

ssh -p 1234 localhost

要稍微自动化,您可以将隧道连接添加到~/.subversion/config

[tunnels]
tssh = ssh -p 1234

然后使用svn+tssh://localhost/path/to/repo但我不知道如何自动创建隧道。

答案 1 :(得分:1)

打开Server1的SSH会话并在该会话中设置隧道:

ssh server1 -L 9000:127.0.0.1:svnserver:22

PS。您可能需要检查ssh man页面的语法。我不记得打开隧道的正确标志。

然后在本地,您使用svn+ssh://localhost:9000

连接到服务器