Delegateで認証proxy環境を作ってみた
3月 18th, 2009 Posted in ローカル環境仕事で、認証proxy環境だけで発生する不具合の報告があったので、ローカルにproxy環境を構築してみました。そのときのメモです。
手軽にproxy環境を構築できるツールを探すと、「Delegate」というのを見つけました。というかかなり有名なツールみたいですね。
Delegateを入れたマシンのこと
Delegateを入れたマシンはWindows XPです。簡単に使いたいのでDelegateはEXE版を使います。
Delegateの入手
今回は以下から入手しました。
DeleGate Home Page (www.delegate.org)
「What’s new in」のところの「download」をクリック。
「FTP/HTTP GATEWAY」のところの「1. http://www.delegate.org/anonftp/DeleGate/」をクリック。
認証ダイアログが表示されるので、「UserName」にE-Mailアドレス、「Password」に「any」と入れます。Passwordは何でもいいってことなんでしょうけど。
「BINARY DISTRIBUTIONS」の「Windows (dgX_Y_Z.exe in dgX_Y_Z.zip, and SSLway) 」をクリック。
「dg9_9_1.zip」をクリックしてダウンロード。
インストールとか設定とか
「dg9_9_1.zip」を解凍します。「bin」フォルダの中に「dg9_9_1.exe」というのが本体です。これをなぜか「delegated.exe」にリネームします。
「bin」フォルダに8080.cfgというファイルを作ります。内容は以下の通り。
- -P8080
- ADMIN=dummy@mailadress.co.jp
- CACHE=do
- SERVER=http
- PROXY=(社内のproxyサーバーアドレス:ポート番号)
- AUTH=proxy:pauth
- PERMIT="*:*:*@localhost"
- AUTHORIZER=-localhost
- HTTPCONF=methods:*
会社がproxyサーバーをたてている場合は、会社のproxyサーバーのURLをPROXYに指定します。ただし、社内のサーバーにアクセスする場合、PROXYを指定するとアクセスできません。外のWebサイトを見たい場合はPROXYを指定します。
そして起動
まずは認証ユーザ名とパスワードを設定します。コマンドプロンプトで以下のように。
- >delegated -Fauth -a user:password -localhost
これで、ユーザ名=user / パスワード=password でユーザが登録されます。そしてやっとこさ起動します。
- >delegated -v +=8080.cfg
いろんなメッセージが表示され、最終的に以下のようなメッセージされれば起動成功です。
- --INITIALIZATION DONE-09031317+0900: 9.9.1 on WindowsNT--
終了するときはCtrl+Cです。
バッチファイルを作っとく
起動するたびにコマンド調べて入力するのめんどうなので、バッチファイルを作っておきます。
- C:\dg9_9_1\bin\delegated -Fauth -d user -localhost
- C:\dg9_9_1\bin\delegated -Fauth -a user:password -localhost
- C:\dg9_9_1\bin\delegated -v +=8080.cfg
最初の行はユーザを削除するコマンドです。この行を入れておくことで、一度認証が通った後でも、パスワードを変更して簡単に認証ダイアログを表示させることができます。
ブラウザの設定
動作検証したいアプリケーションがIEコンポーネントを使っている場合は、IEの[ツール]-[インターネットオプション]で設定します。[接続]タブの[LANの設定]ボタンをクリックし、以下のように設定。
FireFoxの場合は、[ツール]-[オプション]のダイアログで、[詳細]-[ネットワーク]タブの[接続設定]ボタンをクリックして、以下のように設定。