【コンピュータ】squidをいじる

2 Comments

このエントリーを含むはてなブックマークはてなブックマーク - 【コンピュータ】squidをいじる この記事をクリップ!Livedoorクリップ - 【コンピュータ】squidをいじる Yahoo!ブックマークに登録 BuzzurlにブックマークBuzzurlにブックマーク Share on Tumblr FC2ブックマークへ追加 newsing it! この記事をChoix! Googleブックマークに追加 Bookmark this on Delicious Digg This このエントリをつぶやくこのWebページのtweets

squid(プロキシサーバ)ここ何日かいじっていました。
squidは自宅でも使っているのですが、それは自宅サーバのサイトはプロキシを経由しないと自宅で見ることができないためで、
サービスをデフォルトで起動している程度の設定に過ぎません。
いじってみると、実に事細かいことができることが分かりました。
今回squid.confで行ったのは、
・上位プロキシの指定(cache_peer ….parent) 
・ローカルネットなど特定のURLやある文字を含むページはキャッシュしない(acl QUERY urlpath_regex)
 バックスラッシュでエスケープした方がいいのかな?
・SSLとして使えるポートを追加する(acl SSL_ports port)
・場合によっては全くキャッシュしない
・ローカルネットや特定のURLは親サーバへ送らずにダイレクトに接続(always_direct)
(例)
acl domain-example dstdomain example.jp
 ・
 ・
always_direct allow domain-example
・squidのログをapache形式にする(emulate_httpd_log on)
・Webalizerでapache形式にしたsquidのログを読み込ませる(新たにsquid用のsquid_webalizer.confを作成し、confの中でLogTypeをclfにしたものをcronで実行させる)
・ネットワーク内の自動検出設定であるwpad.datに複数のプロキシを記述することで、最初のプロキシが落ちても次のプロキシを自動で読みに行く

(例)
・example.co.jp宛のアクセスは直接
・192.168.1ネットワーク宛のアクセスは直接
・192.168.2宛のプロキシは192.168.2.2ポート3128のプロキシを使い、
 192.168.2.2がだめなときは192.168.2.3を使用する
 それ以外は、192.168.3.2ポート3128のプロキシを使い、192.168.3.2が
 だめな時は192.168.3.3を使用する。これはブラウザによってはmyipaddressの値が
 ループバックアドレスであったり、ipv6だったりしてうまく取得できない場合があります。
 その場合はelse以下の設定が使用されます。

function FindProxyForURL(url, host) {
if(shExpMatch(host,”example.co.jp”)) return “DIRECT”;
if(isInNet(host, “192.168.1.0″,”255.255.255.0″)) return “DIRECT”;
if(myIpAddress().substring(0, 9) == “192.168.2″)
return “PROXY 192.168.2.2:3128; PROXY 192.168.2.3:3128; DIRECT”;
else
return “PROXY 192.168.3.2:3128; PROXY 192.168.3.3:3128; DIRECT”;
}

・プロキシの存在を隠す
header_access X-Forwarded-For deny all
header_access Via deny all
header_access Cache-Control deny all
などなど
なかなかよいプロキシが作れました。

2 Comments (+add yours?)

  1. 磯者
    1月 20, 2010 @ 18:05:41

    まったく 何のことだか さっぱりわかりません。

    むずかしい事をしているんですね。

    返信

  2. すあま
    1月 20, 2010 @ 23:09:25

    こうしてメモをWebに残しておくことで、少しでも誰かの役に立つことができれば・・・
    ということで書いています。
    自分もやはり誰かが書いた記事を元に日々作業しているからです。

    返信

Leave a Reply

Today:172hits and 47 IPs
Total:66435 hits and 14743 IPs Webサービス by Yahoo! JAPAN