squidGuardインストール

| コメント(0)

squidGuard(アクセス制限アドイン)のインストール方法を忘れないように記述しておく。

○squidGuard
 http://www.squidguard.org/
 Berkeley DBが必要

○インストール方法
1) 上記公式サイトより、ソースファイルをダウンロード・ソース展開
2) コンパイルエラーが出るため、ソースファイルの一部を修正する
--- src/sgDb.c.orig 2004-03-09 03:45:59.000000000 +0100
+++ src/sgDb.c 2004-03-09 03:48:43.000000000 +0100
@@ -98,13 +98,13 @@
if(createdb)
flag = flag | DB_TRUNCATE;
if ((ret =
- Db->dbp->open(Db->dbp, dbfile, NULL, DB_BTREE, flag, 0664)) != 0) {
+ Db->dbp->open(Db->dbp, NULL, dbfile, NULL, DB_BTREE, flag, 0664)) != 0) {
(void) Db->dbp->close(Db->dbp, 0);
sgLogFatalError("Error db_open: %s", strerror(ret));
}
} else {
if ((ret =
- Db->dbp->open(Db->dbp, dbfile, NULL, DB_BTREE, DB_CREATE, 0664)) != 0) {
+ Db->dbp->open(Db->dbp, NULL, dbfile, NULL, DB_BTREE, DB_CREATE, 0664)) != 0) {
sgLogFatalError("Error db_open: %s", strerror(ret));
}
}
3) コンパイルする
#./configure --with-db=/usr
# make
# make install
※/usr/local/binへインストールされます。
4) SquidGuardが使用するディレクトリを作成する
#mkdir /usr/local/squidGuard
#mkdir /usr/local/squidGuard/log …ログを格納する場所
#mkdir /usr/local/squidGuard/db …サイトリストを格納する場所
5) ブラックリストの設置
ブラックリストを公式サイトよりダウンロードして、展開します。
#cd /tmp
#wget http://ftp.tdcnorge.no/pub/www/proxy/squidGuard/contrib/blacklists.tar.gz
#tar zxvf blacklists.tar.gz
#cd blacklists
#cp -Rf * /usr/local/squidGuard/db/
※定期的に更新するようなスクリプトを組むとなお良い。
6) ローカルルールを作成します。
上記ブラックリストとは別にローカルルールを設定します。
#cd /usr/local/squidGuard/db/
#mkdir local
・ドメインリスト
#cd /usr/local/sqidGuard/db/local/
#vi domains
[/usr/local/sqidGuard/db/local/domains]
www.***.co.jp
www.***.com
www.aaa.***.jp
etc…

※ユーザーが個々に指定する接続拒否サイトを作成
・URLリスト
#cd /usr/local/sqidGuard/db/local/
#vi urls
[/usr/local/sqidGuard/db/local/urls]
***.or.jp/test/index.html
***.co.jp/web/test.html
etc…

※url の先頭の www は記載しない
・例外サイト
#cd /usr/local/sqidGuard/db/local/
#vi exceptions
[/usr/local/sqidGuard/db/local/exceptions]
www.aaaa.cp.jp/ccc/sss/index.html
sss.ccc.or.jp/~test/
eee.bbb.jp/oo/dsd.htm
etc..

※ブラックリストに定義されているサイトの内、閲覧を許可するサイトを指定
7) アクセス権の設定
squidの実行ユーザに権限を変更する。
#cd /usr/local/
#chown -R squid:squid squidGuard
8) squidGuard.confの設定
SquidGuard.confの設定を行います。設定オプションは大量にあるので、とりあえず下記のように設定した。
#vi /usr/local/squidGuard/squidGuard.conf
logdir /usr/local/squidGuard/log

dbhome /usr/local/squidGuard/db

#クライアントグループの宣言
# 管理者端末
src kanri {
ip 192.168.0.1
ip 192.168.0.2
}
# 接続拒否
src ng {
ip 192.168.7.0/24
}

# 例外サイトの定義(URLフィルタに登録しているが一部のみ閲覧を許可したい場合の設定)
dest ok {
expressionlist local/exceptions
}

#各カテゴリ毎のリストの指定
# ローカル設定
dest local {
domainlist local/domains
urllist local/urls
}
# 人種的偏見に関する内容を含むサイト
dest aggressive {
domainlist aggressive/domains
urllist aggressive/urls
}
# ドラッグに関する内容を含むサイト
dest drugs {
domainlist drugs/domains
urllist drugs/urls
}
# ハッキングに関する内容を含むサイト
dest hacking {
domainlist hacking/domains
urllist hacking/urls
}
# 不適切と判断されたメールを配送するサイト
dest mail {
domainlist mail/domains
}
# 不正中継等を行うプロキシサーバ
dest proxy {
domainlist proxy/domains
urllist proxy/urls
}
# 著作権侵害の内容を含むサイト
dest warez {
domainlist warez/domains
urllist warez/urls
}
# 広告(バナー広告など)
dest ads {
domainlist ads/domains
urllist ads/urls
}
# 多くの帯域幅を使用するオーディオ・ビデオを扱うサイト
dest audio-video {
domainlist audio-video/domains
urllist audio-video/urls
}
# 賭博に関連する内容を含むサイト
dest gambling {
domainlist gambling/domains
urllist gambling/urls
}
# ポルノを扱うサイト
dest porn {
domainlist porn/domains
urllist porn/urls
expressionlist porn/expressions
}
# 暴力と嫌悪的な内容を含むサイト
dest violence {
domainlist violence/domains
urllist violence/urls
expressionlist violence/expressions
}

#アクションの定義
acl {
kanri {
pass all
}
ng {
pass none
}
default {
pass ok !local !aggressive !drugs !hacking !mail !warez !ads !audio-video !gambling !porn !violence all
redirect http://www.***.jp/cgi-bin/squidGuard.cgi
}
}


squidGuard.cgiは、ソースファイルの「samples」ディレクトリにサンプルファイルがあるので、適切に変更を行った後、設置すること。(他のURLを指定しても可)
9) squidの設定
squidの起動と同時にSquidGuardを起動するため、squid.confへ下記のような設定を行います。
# TAG: redirect_program
# Specify the location of the executable for the URL redirector.
# Since they can perform almost any function there isn't one included.
# See the FAQ (section 15) for information on how to write one.
# By default, a redirector is not used.
#
#Default:
# none
redirect_program /usr/local/bin/squidGuard -c /usr/local/squidGuard/squidGuard.conf

10) squidを再起動する

コメントする

2012年3月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

アーカイブ

OpenID対応しています OpenIDについて
Powered by Movable Type 4.38
 
 

このブログ記事について

このページは、ゆうちゃんが2006年5月 8日 11:32に書いたブログ記事です。

ひとつ前のブログ記事は「postfix関連のコマンド」です。

次のブログ記事は「ホタル」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。