2018年9月5日水曜日

Windows10をプロキシサーバに

Windowsじゃないとつないじゃダメなネットワークがあって、
その中にソースコードバージョン管理のためのsvnサーバがあり、
しかしビルドはLinuxじゃないと無理、
しかもWindows上の仮想マシンではパワー不足で、
Ubuntu on Windowsも導入不可能という
禅問答かと思えるほどのソフトウェア開発環境があるとして、
順当なのはWindows上でsvnサーバからチェックアウトし、
何らかの方法でLinuxにコピーする、
あるいは逆方向でコミットするという手順となります。
面倒くさ過ぎだしパーミッションの管理が地獄です。

そこで横着大好きの私が編み出したのはWindows上に
プロキシサーバーを構築することです。
幸いにもWindowsマシンとLinuxマシンは
それぞれ2つのNICを持っており、それぞれ1つずつは
普通の通信用に別々のネットワークに接続されていますが、
残ったポート同士をローカルでつないでいるのです。

大昔にやむにやまれずWindowsでプロキシサーバーを
立てたときには仕方なく安い商用ソフトを使用した記憶がありますが、
今調べてみるとLinuxの定番プロキシSquidのWIndowsバイナリが
落ちているではありませんか。便利な世の中になったものです。
早速新設なサイトから[squid for Windows]のインストーラーを
落としてきてWindows10にセットアップ。
特に問題も起こりません。

設定ファイルは"C:\Squid\etc\squid\squid.conf"です。
見本に沿ってプロキシ依頼を許可するクライアントのIPアドレスを
acl localnet src 192.168.1.0/24
のように記し、svnサーバにアクセスできるよう
acl SSL_ports port 443
acl Safe_ports port 80
acl Safe_ports port 443
acl CONNECT method CONNECT
程度の設定を施し、
待ち受けポート番号は覚えやすい"8080"が好みなので
http_port 8080
にしておきます。
あとはWindowsを再起動すれば確実に変更が反映されています。

Linux上のsvnクライアント(subversion)の方はと言うと、
すでに動作していることを前提とすれば、
設定ファイル"~/.subversion/servers"で、
[global]
http-proxy-host = <プロキシサーバのIPアドレス>
http-proxy-port = 8080
のようにしておけばプロキシ経由となります。
これならわりと快適です。

0 件のコメント:

コメントを投稿