squid

※有名なWEBプロキシソフトです。LAN内のPCの代理(=プロキシ)
 として、インターネットにアクセスします。アクセスしたホームページ
 のデータはキャッシュされるので、1度誰かが見たページは、
 次からは速く表示されるようになります。

【ダウンロード】
http://www.squid-cache.org/Versions/v2/

【展開】
(以下の作業はrootで行ってください)
# cd /usr/src
# gzip -cd squid-2.3.STABLE5-src.tar.gz | tar xvf -
(わたしの環境では、2.4.STABLE1は動作しませんでした。
 環境設定がそのままでは2.4版は動作しないようです。)

すでにsquid が起動していたら停止させます。
# squid -k shutdown

【コンパイル】
# cd /usr/src/squid-2.3.STABLE5
# ./configure --prefix=/usr/local/squid
# make clean
# make all

【インストール】
# make install

【バージョンの確認】
# /usr/local/squid/bin/squid -v


【設定】
# cd /usr/local/squid/etc

# mv squid.conf /etc/.
# ln -s /etc/squid.conf squid.conf

以下の設定を念頭に入れ、設定します。
・DNSサーバ:192.168.1.106(LAN側)
・ルータ:192.168.0.1(インターネット側)
・LANグループ名:daigo

# vi squid.conf (例)
----------------------------------------
http_port 8080
icp_port 0
ftp_user Squid@daigo.local
dns_nameservers 192.168.1.106 192.168.0.1 (←インターネット側ルータのアドレスを追加)
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl all src 192.168.1.0/255.255.255.0
acl daigo src 192.168.1.0/255.255.255.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow daigo
http_access deny all
icp_access allow all
miss_access allow all
forwarded_for off
anonymize_headers deny VIA
----------------------------------------
「:wq!」で保存終了します。


【起動準備】
# cd /usr/local/squid
(ユーザ「nobody」がないときは「useradd」で
作成しておいてください)
グループ「nogroup」を追加します
# groupadd nogroup

実行に必要なディレクトリを作成します
# mkdir logs
# mkdir cache
# chown nobody logs
# chown nobody cache
# chgrp nogroup logs
# chgrp nogroup cache


# cd /usr/local/squid/bin
# ./squid -z (初期設定がされます)


【起動】
# /usr/local/local/squid/bin/squid start

【停止】
# /usr/local/local/squid/bin/squid -k shutdown

【ログのローテート】
# /usr/local/local/squid/bin/squid -k rotate

【以下をするとシステム起動時に自動立ち上げされます】
# cd /etc/rc.d
# vi rc.local
ファイルの最後に以下を追加します
----------------------------------------
#Starting squid...
if [ -x /usr/local/squid/bin/squid ]; then
/usr/local/squid/bin/squid start
echo ""
echo -n "Starting squid..."
fi
----------------------------------------
「:wq!」で保存終了します。


※Windows95/98などのクライアントマシンから、squidを使うように設定を
 します。「コントロールパネル」→「インターネットオプション」の「接続」で、
プロキシサーバのIPアドレス欄に、squidを入れたマシンのIPアドレスを設定と、
ポートNoを「8080」にします。「すべてのサービスに同じ設定をする」にチェックONし、
「ローカルマシンにはプロキシを使用しない」をチェックONします。

念のためWindowsマシンを再起動し、ホームページに無事にアクセスできるかを
チェックします。

-----------------------------------------