- Squid Web Proxy Cache
http://www.squid-cache.org/ - Proxyキャッシュサーバ設定術~Squidを使って
http://arika.org/doc/sd.200112 - squid の設定
http://www.a-yu.com/net/squid.html - Squidの設定 【Squid Web Proxy Chche & squid.conf Manual】
http://squid.robata.org/ - Index of /Linux/packages/fedora/core/development/SRPMS
http://ftp.kddilabs.jp/Linux/packages/fedora/core/development/SRPMS/
「PuTTY でsocks proxy の機能を利用する」、とてもベンリです。
オライリー・ジャパン (2005/01)
売り上げランキング: 7,807
通常24時間以内に発送
「ネットワークセキュリティHACKS―プロが使うテクニック&ツール100選」 の「HACK #76」 によると、SSH のsocks はsocks 4 のようなのですけど、socks 4 ではDNS のクエリをSSH 接続先でなく、通常接続時のDNS に飛ばしているようなのです。このため、外部からSSH 経由で繋いだ時、IP アドレスを指定しないとアクセスできなかったりする(コレの対処はローカルPC のhosts ファイルに書く) のと、接続元の環境でどうしてもアクセスの痕跡が残ってしまう、という2つの問題がある、ということが分かりました。
これの対処法として書かれているのが、「HACK #75」 の、SSH 経由でSquid を使う、という方法です。なのでSquid の設定をしてみましょう。とりあえず、最新版のパッケージを作って入れ替えます。
最新版は"squid-2.5.STABLE9" のようですが、Fedora のリポジトリにあったのは"squid-2.5.STABLE8-2.src.rpm" だったので、これを頂いてきます。Squid のアドバイザリを見るに、今のところは"2.5.STABLE8" であれば大丈夫そうです。
ダウンロードできたら、おもむろにインストール。
# rpm -ivh squid-2.5.STABLE8-2.src.rpm
適当なエディタで"/usr/src/redhat/SPECS/squid.spec" を開き、RHL9 のgcc(ウチの環境だと"gcc-3.2.2-5") では認識されないコンパイルオプション、"-fPIE" を探し出してこれを削除します。2箇所くらいあるはず。セーブして、いざコンパイル。
# rpmbuild -ba --target i686 squid.spec
できあがったら、インストール。
# rpm -Uvh /usr/src/redhat/RPMS/i686/squid-2.5.STABLE8-2.i686.rpm
"/etc/squid/squid.conf" を適当なエディタで編集。基本的には「squid の設定」 の設定そのままで、あと、"visible_hostname" にホスト名を入れます。以下は例。
visible_hostname alectrope.jp
セーブしたら、キャッシュを初期化します。ちなみに"/var/spool/squid/" 以下にキャッシュされます。
# squid -z
起動。上手くいかない場合はログファイルとかあたりのアクセス権が"squid:squid" になってるかとかを確認します。
# /etc/rc.d/init.d/squid start
あとは適当にブラウザにproxy の設定をして、正常にアクセスできる + ログファイルに残っていることが確認できたらOK です。Squid は色々な事が出来るようですが、ひとまずこのへんで。
十分なHDD 資源を用意して、全てのアクセスをキャッシュするようにすれば、それだけでローカルミラーになるなぁ。
(2005/03/07 13:59 追記)
デフォルトの設定で使うと、プロキシ丸出しであちこちにアクセスすることになります。掲示板によっては書き込みできなくなったりすることもあるかもなので、以下のページなどを参考にして、その対策などしておくとよさそうです。
- - Proxyサーバ - Squid
http://shikabo.ddo.jp/linux_server/doc/server/squid.htm - B串から完全匿名串へ
http://yuaiho.server.ne.jp/ctip/proxy.htm - CyberSyndrome : プロキシサーバ入門
http://www.cybersyndrome.net/pg.html
つまりはいわゆる「匿名串」 を作る、という話なのですが、自分自身が使う場合には匿名の意味は全くないですし、必要に応じて設定するとよさげです。こんなものを外部公開したりするとリスクがものすごく高いのでそのあたりにも注意しましょう。
設定が終わったら、以下のサイトなどでチェック。
- 確認くん(VIA the UGTOP)
http://www.ugtop.com/spill.shtml - 診断くん
http://taruo.net/e/ - CyberSyndrome : ENV Checker
http://www.cybersyndrome.net/evc.html
ウチでの追加設定項目は以下の5つ。
visible_hostname none
forwarded_for off
header_access X-Forwarded-For deny all
header_access Via deny all
header_access Cache-Control deny all
(2005/04/05 21:16 追記)
内部ページからのリファラはカットしておくとよりセキュアになるかも。これはかなりベンリっぽいので、早速設定。
- squid でリファラーの内部 URL をカットする
http://fumika.jp/nikki/2005/03/squid-acl-referer.html