rc.localに以下の行を追加する。 # start proxy if [ -f /usr/local/libexec/httpd ]; then /usr/local/libexec/httpd -r /etc/caching.conf ; (echo -n 'Starting proxy.' ) > /dev/console fi caching.confを以下の箇所を変更して/etcディレクトリにコピーする。 Port 8080 UserId nobody GroupId nogroup ServerId (サーバ名を記入する) Mask @(192.168.*.*) IPアドレスにあわせる キャッシュ用のディレクトリ作成 #cd /var/spool #mkdir cache #chmod 766 cache #chown nobody.nogroup cache #cd cache #makdir http #mkdir ftp #chmod 766 http #chmod 766 ftp #chown nobody.nogroup http #chown nobody.nogroup ftp ログディレクトリの作成 #cd /usr/local/etc #mkdir httpd #cd httpd #mkdir proxy 再起動後、稼働可能。 実際に稼働しての感想としては、一番軽く動作するという感じで、 ログについてもどのパソコンからいつどのページを見ているのかが、 わかりやすい。delegateの場合
キャッシュとログ用のディレクトリ作成 #cd /var/spool #mkdir delegate #cd delegate #mkdir cache #mkdir log #mkdir work #chmod 766 cache #chmod 766 log #chmod 766 work #chown nobody.nogroup cache #chown nobody.nogroup log #chown nobody.nogroup work #cd cache #mkdir http #mkdir ftp #chmod 766 http #chmod 766 ftp #chown nobody.nogroup http #chown nobody.nogroup ftp #cd /var/spool/delegate/log #mkdir 0 #mkdir 8080 #mkdir 8080.http #mkdir 8080.ftp #chmod 666 0 #chmod 666 8080 #chmod 666 8080.http #chmod 666 8080.ftp #chown nobody.nogroup 0 #chown nobody.nogroup 8080 #chown nobody.nogroup 8080.http #chown nobody.nogroup 8080.ftp 起動ファイルdelegate.sh(モード755)を以下のように作成し、 /usr/local/etc/rc.d/におく。 #!/bin/sh if [ -x /usr/local/sbin/delegated ]; then echo -n ' delegated' /usr/local/sbin/delegated -P8080 \ MANAGER=higashi@higashibsd.niigatahigashi-th.ed.jp \ CHARCODE=EUC \ CACHEDIR=/var/spool/delegate/cache \ EXPIRE=7d \ RELIABLE=192.168.0.* 192.168.2.* \ > /dev/null 2>&1 fi 実際に稼働してみて、ログファイルが大きくなってしまうという事が気になる。squidの場合
pkg_addでsquidのパッケージを追加する /stand/sysinstallでパッケージを追加すると途中で止まってしまう。 キャッシュとログ用ののディレクトリー確認 パッケージを追加すると/usr/local/squid というディレクトリーが できているはずです。 キャッシュとログ用のディレクトリーを作成する。 #mkdir cache #mkdir logs ディレクトリーのモードとオーナー、グループを変更する。 #chmod 766 cache #chmod 766 logs #chown nobody.nogroup cache #chown nobody.nogroup logs 作成変更後キャッシュ用のディレクトリーを squid -z を実行して作成する。 #/usr/local/sbin/squid -z squid.confの設定 /usr/local/etc/squid というディレクトリーにsquid.confという設定ファイルを新しく以下の ように作成する。 http_port 8080 icp_port 0 refresh_pattern . 4320 25% 4320 cache_effective_user nobody nogroup という最低4行があれば稼働できる。 logfile_rotate 6 という1行を追加して、さらに/etc/crontabにも次の1行を追加する。 30 5 1 * * nobody /bin/kill -USR1 `cat /usr/local/squid/logs/squid.pid` 毎月1日のAM5:30にログファイルをローティションさせる。 何もしないでいるとログファイルが大きくなっていくだけになるため。 また他にも細かく設定も可能である。(squid.conf.defaultを参照のこと) 再起動後 squidにてproxyサーバとして稼働される。 実際に稼働して、前の2種類は、インターネットに接続していない限り、 キャッシュされたデータは、ブラウジングはできなかったが、squidだけは、 接続を切った後でも、ブラウンジグが可能のため、以前みたページは見るこ とが可能になる。ただ、ログに関しては、いつ見ていたのかが、簡単には 把握できないような形(UNIX時間単位)になっているのが、残念な所である。 でも、どのパソコンからどのページを見ているかは分かる。 現在のサーバはsquidを利用して稼働させている。 クライアントマシンの設定については、3種類とも同じ設定でOK。 IEおよびネスケでのオプションでプロキシサーバの設定をしておく。 (プロキシサーバとポートの設定)