[HOME] [github] [twitter] [blog] [fml4] [fml8] [北海道] Powered by NetBSD and [nuinui.net] .

パッケージ: squid (HTTP PROXY)

Important: チェックポイント

□ ターゲット     /usr/pkgsrc/www/squid27
□ /etc/rc.conf    squid=yes
□ 設定ファイル    /usr/pkg/etc/squid/squid.conf
□ ポート番号     3128/tcp (その他 8080/tcp など、いろいろ)
□ 動作の確認     psとってsquidが動いている。

注意: # や % の意味が分からない人は 用語 を参照してください。

インストール

% su root
# cd /usr/pkgsrc/www/squid27
# make install

Caution

2011/04 以降: make packege ではなく make install を使ってください。 事情の詳細は the Section called 2011 春: make install および make package の動作が変わる 節を参照してください。

OS 起動時に squid も起動するように設定してください。

# cp -p /usr/pkg/share/examples/rc.d/squid /etc/rc.d/
# echo squid=yes >> /etc/rc.conf

設定ファイル /usr/pkg/etc/squid/squid.conf の編集もしてください(後述)。

動作確認

テスト(1): squid は起動するか?

# /etc/rc.d/squid start
動いていることを確認してください
# ps auxww |grep squid
# fstat |grep squid
# netstat -na|grep 3128
注: 3128 はポート番号です。 ポート番号は設定次第なので仕様書に書いてある番号に読み替えてください。 fstat や netstat で表示される「*:3128」は 「全インターフェイスに対し port 3128 を開いている意味」です。 「*」は「全部」を意味する正規表現です。

テスト(2): OS をリブートし、きちんと squid が動いていることを確認してください (確認方法は上述の操作と同じです)。

設定ファイル /usr/pkg/etc/squid/squid.conf

[設定例] PC の IP アドレスが 192.168.0.100、 HTTP PROXY はポート番号 8080 で待ち受け、 親 PROXY として proxy.example.org のポート番号 8080 を使う。 この場合、各ユーザの WWW ブラウザでは、 PROXY の設定で http://192.168.0.100:8080/ を指定してもらう。 squid.conf では IP アドレスの指定が不要なことにも注意。

まず、その1: listen(2) するアドレスとポート番号の設定します。 もちろんデフォルト値で問題ない場合もよくあります。 仕様書に従ってください。

例: ポート 8080 を開く。

http_port 8080

その2: (必要であれば)親 PROXY の指定をします。

例: 親 PROXY が http://proxy.example.org:8080/ の場合

cache_peer proxy.example.org parent 8080  7 proxy-only no-query

例: 親 PROXY が二つ(192.168.1.1 と 192.168.1.2 ともに port 8080)の場合
cache_peer 192.168.1.1 parent 8080 7 proxy-only no-query round-robin
cache_peer 192.168.1.1 parent 8080 7 proxy-only no-query round-robin
たいていのネットワーク構成では不要です (注: NSRG では親の指定が必要です)。

なお、できるかぎり差分を別ファイルにわけ、 それを include するようにするとアップデートの際に楽が出来ます。 こころがけてください。 NSRG のサーバ構築では、この運用方針に従ってください。

例:

+# http_port 3128
+include /home/elena/fukachan/etc/squid/elena/listen.conf

[確認] 最後にデフォルト値との差分を確認してください。

# diff -ub /usr/pkg/share/examples/squid/squid.conf /usr/pkg/etc/squid/squid.conf

RunCache スクリプト

pkgsrc デフォルトでは RunCache というスクリプトを使いません( インストールもされません)。

DNS マルチホームを前提とした改造版の RunCache が次の URL に置いてあります。

% ftp://ftp.fml.org/pub/NSRG/tips/NetBSD/usr/pkg/sbin/RunCache

WPAD (Web Proxy Auto Discovery Protocol)

WPAD 節を参照してください。

透過モードの squid

ファイアウォール aplfw (nfgw 2.0)の作成時には、 この設定をするよう指示されます。 上の設定例と見比べてみること。

例: アドレス 127.0.0.1、ポート 8080 を開く。

http_port 127.0.0.1:8080

例: アドレス 127.0.0.1 ポート 3128 を開き、かつ透過モードで動作させる。

http_port 127.0.0.1:3128 transparent

演習問題

[HOME] [github] [twitter] [blog] [fml4] [fml8] [北海道] Powered by NetBSD and [nuinui.net] .
Copyright (C) 1993-2022 Ken'ichi Fukamachi mail:< fukachan at fml.org >