ローカル接続が遅いため、プロキシ経由でコードをチェックアウト/更新したいのですが。私はsshトンネルをセットアップしました:ssh -D 8090 [email protected]
すべてのパケットを私のlocalhost:8090に転送します。
これを使用するようにSubversionを設定するにはどうすればよいですか?
SSHを使用して、SSHサーバーにトンネルするローカルSOCKSサーバーを設定しています。これを行う理由は「ローカル接続が遅い」ということですが、SSHサーバーへのトンネリングによってどのように高速になるかはわかりません。
とにかく、あなたの問題は、SubversionがHTTPプロキシまたはSSHトンネルを介して接続できることですが、SOCKSについては何もわかっていません。したがって、すべてのTCP接続をキャプチャしてSOCKSプロキシにリダイレクトすることにより、SubversionをSOCKSifyする必要があります。
以前に行ったことのある人を言い換えるのではなく、詳細な説明を紹介します。
または、簡単に言えば、ほとんどがOliverのページから貼り付けられています。
Debianには、sourceforgeでも入手可能な2つのsocksifiersが含まれています。最近更新されたのはProxyChainsで、設定は非常に簡単です。ほとんどの靴下は同じように機能するので、これらの指示は合理的な一般的なケースであるべきです。 ProxyChainsを設定するには、$(HOME)/。proxychains/proxychains.confを編集して、次の行のみを含める必要があります。
DynamicChain
tcp_read_time_out 15000
tcp_connect_time_out 10000
[ProxyList]
socks5 127.0.0.1 8090
# NB: for some reason 'localhost' doesn't work in the above line
次に、SVNをProxyChainsに「ラップ」するだけです。
proxychains svn commit
上記の例では、svnアプリケーションは、TCPがSubversionサーバーに接続するときに、SOCKSプロキシにリダイレクトされた方が賢明でした。 "
ここに投稿します。これを行うには、あまりやる気のない方法が見つかりました。 Polipo を使用して、次の行を構成に追加することにより、SSH SOCKSトンネルをHTTPプロキシ経由で使用できます。
socksParentProxy = "localhost:8090"
socksProxyType = socks5
polipo
デフォルトではポート8123
でリッスンします。次に、$HOME/.Subversion/servers
で、チェックアウトするSubversionホストのグループを作成します。 Subversionリポジトリのホストの名前がproj1.svn.domain.tld
、proj2.svn.domain.tld
などである場合は、[groups]
セクションに以下を追加します。
[groups]
domain = *.svn.domain.tld
最後に、グループのブロックを追加して、追加したホストのグループのプロキシ構成を指定します。
[domain]
http-proxy-Host=localhost
http-proxy-port=8123
これまでは、SSHトンネルなしで作業していたので、通常はリポジトリを操作できるはずです。
HTH
ssh -D
でのトンネリングについては知りませんが、次のようなものを使用しています
ssh -L8090:svn.server.com:22 [email protected]
次に、トンネルが存在する特定のポートを使用して新しいプロトコルをSubversionに追加することにより、トンネリングを実行できます。したがって、〜/ .Subversion/configに次のような行を追加します
pssh = ssh -p8090
[tunnels]
セクションで、svn + ssh://[email protected]の代わりにsvn + pssh:// user @ localhostを使用します
既存の作業コピーがある場合は、使用できます
svn switch --relocate svn+ssh://[email protected] svn+pssh://user@localhost
新しいチェックアウトを行わずに、作業コピーがリンクされているアドレスを切り替える。
〜/ .Subversion /にあるデフォルトの設定ファイルを見てください。コメントアウトされた多くの便利な例があります。プロキシは〜/ .Subversion/serversに設定されます
Windows PCでsocksプロキシサーバーを介してSVNリポジトリへのsvn + ssh接続を取得する必要がある場合があります。この問題は、SSH機能を提供し、さまざまなプロキシタイプで動作するPuTTYで解決できます。提案されたソリューションは、ローカルポート転送を必要としません。
解説-SVNはプロトコル名を使用して、plink.exeを接続に使用し、plinkはセッション名を使用することを検出します socks_proxy そのプロキシが存在することを識別するため。覚えて PATH_TO_PLINK バックスラッシュではなくスラッシュで入力する必要があります。 plink.exeがC:\ Program Files\PuTTYフォルダーにある場合の例: ssh = C:/ Program Files/PuTTY/PLINK.EXE -load socks_proxy。
tsocks を試してみてください。 tsocksを使用して、SOCKSプロキシを使用するように構成し、SSHを設定してから、次のようにsvnを実行します。
tsocks svn co {etc...}