会社のプロキシにイライラしているあなたへ

会社のプロキシにイライラしているあなたへ送る記事です。
stoneをローカルに立ててstoneからプロキシに認証情報を渡すようにすれば解決できます!

stoneのダウンロード

http://www.gcd.org/sengoku/stone/stonexp-2.3e.zip からダウンロードします。
C:\直下に解凍しました。

認証情報のエンコード

userid:passwordをBase64エンコードします。 https://hogehoge.tk/tool/

設定ファイルの作成

設定ファイル(stone.cfg)を作成します。 C:\stone23xp\stone.cfgとします。

<proxy_address:proxy_port_number>/proxy <stone_port_number> "Proxy-Authorization: Basic <Base64でエンコードしたuserid:password>"

例えばパラメータが - プロキシアドレスが「proxy.sample.co.jp」 - プロキシのポート番号が「8080」 - stoneのポート番号を「3200」 - ユーザIDが「userid」 - パスワードが「password」 の場合、設定ファイルは以下のようになります。

proxy.sample.co.jp:8080/proxy 3200 "Proxy-Authorization: Basic dXNlcmlkOnBhc3N3b3Jk"

BASE64エンコードすると userid:password -> dXNlcmlkOnBhc3N3b3Jk となります。

サービス化と起動

管理者権限で下記コマンドを実行します。

cd C:\stone23xp
stone -M install repeater -C C:\stone23xp\stone.cfg
net start repeater
services.msc

「サービス」が起動したら、「Stone repeater」の「スタートアップの種類」を「自動」にしておきましょう。

もし、「サービスが制御機能に応答しません。」というエラーが出たら https://support.microsoft.com/ja-jp/help/839803/the-windows-trace-session-manager-service-does-not-start-and-event-id の回避策を実施しましょう。

ブラウザの設定

IEの「ツール」->「インターネットオプション」->「接続」->「LANの設定」->「プロキシサーバー」でアドレスに「localhost」、ポートに設定ファイルに記載したstoneのポート番号を指定します。
すると通信が「ブラウザ」->「stone」->「proxy」->「インターネット」となります。

サービスの削除

cd C:\stone23xp
stone -M remove repeater

上記で消せない場合は下記コマンドを実行します。

sc.exe delete repeater