社内用のプロキシを立ててみた。

セキュリティ強化という訳ではなく、一日中ネットして全く仕事をしないジジィを懲らしめるため。

というわけで、ゲートウェイ直下に置かずにクライアントと並列に設置。

プロキシソフトはsquidなるものを使用。

PCは、余っているWindowsXP。

果たして、実用に耐えてくれるのか?まぁ、小さな会社だから問題ないだろう。

squidのインストールは、ググればすぐにわかる。

今回、参考にしたのは ここ

とりあえず最低限の設定であれば問題なく稼動してくれる。

ひとつ厄介なのは、吐き出されるaccess.logの時間表示がUTC時間なので、それをWebサーバなどの出力形式に変換すること。

confファイルの「emulate_httpd_log on」を指定すれば良い。とあるのだが、これを設定して、サービスを再起動し、logファイルを新規作成させても、UTCのまま変わらない。。。

Perlスクリプトで書き換えられるよ。という書き込みが多いので、そうすることに。

って、Perlの動く環境がないから、WindowsにActivePerl入れました。

以下のスクリプトを書いたファイルを作成

while(<>){

chop;

($time, $rest) = /([0-9.]+)[ ]+(.*)/;

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($time);

$mon++;

$year += 1900;

print "$year-$mon-$mday $hour:$min:$sec $restn";

}

適当な名前.plでlogファイルのあるフォルダに保存して、コマンドプロンプトで次を実行

perl squid-log-time.pl access.log > squid.log

以上で、書き出し完了。

おすすめの記事