●ABOUT2009年02月 アーカイブ
2009年02月24日
久々
長い間ほったらかしにしてたけれど
ぼちぼちと更新を再開していく
決意表明をする
日時: 2009年02月24日 16:12 | カテゴリ:雑記| パーマリンク | トラックバック (0)
2009年02月25日
構成
Ubuntu8.10でコンテンツフィルタリングを行うための設定を覚え書き
イメージとしてブロードバンドルーターとLANの間に接続して通過するHTMLを監視し不正なサイトなら警告文を表示するような感じ。

Ubuntu8.10のSerber版をインストールしてローカルルーターにして
プロキシにsquid
コンテンツフィルタにdansguardian
アンチウイルスにclamav
簡易ネームサーバーとDHCPにdnsmasq
を利用します。
とりあえずボチボチとやってこかと思います。
日時: 2009年02月25日 17:44 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
ネットワーク設定
ルーター化するのでNICを2枚差してネットワークの設定
$ sudo vi /etc/network/interfaces
auto lo
iface lo inet loopback# The primary network interface
# WAN側
auto eth1
iface eth1 inet dhcp# LAN側
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
です。
WAN側はDHCPから取得することにします。
日時: 2009年02月25日 17:50 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
2009年02月26日
dnsmasqで簡易DHCPサーバーとDNSキャッシュ
通常DHCPはdpcpd、DNSはbindですが
家庭向け、小規模事務所向けということでdnsmasqを利用したいと思います。
# apt-get install dnsmasq
# vi /etc/dnsmasq.conf
interface=eth0
dhcp-range=192.168.1.50,192.168.1.80,24h
dhcp-option=3,192.168.1.1
dhcp-option=6,192.168.1.1
log-dhcp
ローカル側(eth0)に対して24時間の貸出期間で192.168.1.50〜192.168.1.80の範囲で貸し出します。
デフォルトゲートウェイ(オプション3)を192.168.1.1にします。
DNSサーバー(オプション6)を192.168.1.1に設定します。
DHCPで割り当てたIPアドレスをsyslogに残します。
/etc/hostsの編集
# vi /etc/hosts
ここにローカルサーバー等を記述していきます。
127.0.0.1 localhost
127.0.1.1 server
192.168.10.78 server1.shanai.com
192.168.10.5 server2.shanai.com
dhclient.confの編集
このままでは名前解決にdnsmasqは利用されないため通常/etc/resolv.confに記述するのですがWAN側(eth1)がブロードバンドルーターよりDHCPでIPアドレスを取得しているため再起動する度に記述し直さないといけません。
ですので今回はdhclient.conf を編集します。
# vi /etc/dhcp3/dhclient.conf
で
#prepend domain-name-servers 127.0.0.1;
を
prepend domain-name-servers 127.0.0.1;
のようにコメントアウトします。
日時: 2009年02月26日 11:05 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
squidの設定
DansGuardian を使うためsquidをまずインストールします。
# apt-get install squid
squid.confの設定
# vi /etc/squid/squid.conf
DansGuardianから使用するためクライアントからはアクセスを行いません。
acl localnet src 127.0.0.1/255.255.255.255
キャッシュディレクトリを指定(1952行目あたり)
cache_dir ufs /var/spool/squid 1024 16 256
エラーメッセージを日本語に(4205行目あたり)
# error_directory /usr/share/squid/errors/English
を
error_directory /usr/share/squid/errors/Japanese
日時: 2009年02月26日 11:38 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
iptablesでファイヤーウォール
iptablesの設定は以下のサイトを勝手に参考にさせてもらいました。
/etc/network/interfacesに1行追加。
# vi /etc/network/interfaces
次の1行を追加します。
pre-up /etc/iptables.sh
次にiptables.shを作成します。
# vi /etc/iptables.sh
#!/bin/sh
PRIVATE="192.168.1.0/24"
IPTABLES="/sbin/iptables"
MODPROBE="/sbin/modprobe"# ルールをクリア
$IPTABLES -F
$IPTABLES -t nat -F###################################################
#
# ポリシーの設定
# INPUT:入ってくるパケット
# FORWARD:転送パケット
# OUTPUT:出て行くパケット
#
################################################### 原則破棄
$IPTABLES -P INPUT DROP# 原則許可
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT####################################################
#
# INPUT
# サーバ機に入ってくるパケットに対するチェイン
#
##################################################### icmpを許可
$IPTABLES -A INPUT -p icmp -j ACCEPT# WEBサーバへのアクセスを許可
$IPTABLES -A INPUT -p tcp --dport 80 -j ACCEPT# SMTPサーバへのアクセスを許可
$IPTABLES -A INPUT -p tcp --dport 25 -j ACCEPT# SSHのアクセスを許可
$IPTABLES -A INPUT -p tcp --dport 22 -j ACCEPT# POPサーバへのアクセスを許可
$IPTABLES -A INPUT -p tcp --dport 110 -j ACCEPT# DHCP リクエストを許可
$IPTABLES -A INPUT -i eth0 -p udp --sport 68 --dport 67 -j ACCEPT
# 外部からDNSサーバへのアクセスを許可
$IPTABLES -A INPUT -p tcp --dport 53 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 53 -j ACCEPT# 自端末からのアクセスを許可
$IPTABLES -A INPUT -i lo -j ACCEPT# LAN内の他端末からのアクセスを許可
$IPTABLES -A INPUT -i eth0 -s $PRIVATE -j ACCEPT#接続が確立したパケットの応答は許可
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT####################################################################
#
# FORWARD
# サーバ機を経由するパケット
#
##################################################################### 宛先ポート135,137〜139,445のパケットを破棄
$IPTABLES -A FORWARD -p tcp --dport 135 -j DROP
$IPTABLES -A FORWARD -p udp --dport 135 -j DROP
$IPTABLES -A FORWARD -p tcp --dport 137:139 -j DROP
$IPTABLES -A FORWARD -p udp --dport 137:139 -j DROP
$IPTABLES -A FORWARD -p tcp --dport 445 -j DROP
$IPTABLES -A FORWARD -p udp --dport 445 -j DROP# パスMTU問題対策
$IPTABLES -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu##########################################################################
#
# LANから外に出て行くパケットの送信元IPを書き換える
# 透過プロキシを利用する。
#
##########################################################################
$IPTABLES -t nat -A POSTROUTING -o eth1 -s $PRIVATE -j MASQUERADE
$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080#######################################################################
#
# OUTPUT
# サーバ機で生成されたパケットに対するチェイン
#
######################################################################## 宛先ポート135,137〜139,445のパケットを破棄
$IPTABLES -A OUTPUT -o eth1 -p tcp --dport 135 -j DROP
$IPTABLES -A OUTPUT -o eth1 -p udp --dport 135 -j DROP
$IPTABLES -A OUTPUT -o eth1 -p tcp --dport 137:139 -j DROP
$IPTABLES -A OUTPUT -o eth1 -p udp --dport 137:139 -j DROP
$IPTABLES -A OUTPUT -o eth1 -p tcp --dport 445 -j DROP
$IPTABLES -A OUTPUT -o eth1 -p udp --dport 445 -j DROP#######################################################################
#
# FTPを利用する
#
#######################################################################
$MODPROBE ip_conntrack_ftp
$MODPROBE ip_nat_ftp
実行権限を追加します。
# chmod +x /etc/iptables.sh
以上です。
日時: 2009年02月26日 12:31 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
カーネルのルータ機能を設定
/etc/sysctl.confでルータ設定がコメントされているのでコメントアウトします。
# vi /etc/sysctl.conf
#net.ipv4.ip_forward=1
を
net.ipv4.ip_forward=1
日時: 2009年02月26日 16:57 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
DansGuardianの設定(1) インストール
日本語情報が少ないので難儀します。。。
dansguardianでコンテンツフィルタリング(ももーい鯖)を参考に構築します。
ありがたいです。
DansGuardianのインストール
# apt-get install dansguardian
clamavなんかも一緒に入ります。
ブラックリスト
ブラックリストを取得しないとフィルタリング出来ません。
有名どころはhttp://urlblacklist.com/なんだけれど日本語のサイトがほとんど引っかからないため
http://www.momo-i.org/blacklist/から取得します。
# wget http://www.momo-i.org/blacklist/download.php
展開します。
# tar xvzf blacklists.tar.gz
展開できたリストをDansGuardianのブラックリストのディレクトリへコピーします。
# cp -r ./blacklists/* /etc/dansguardian/lists/blacklists/
日時: 2009年02月26日 17:07 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
DansGuardianの設定(2) ブラックリストのカテゴリ
http://www.momo-i.org/blacklist/でダウンロード出来るブラックリストのカテゴリ一覧です。
ここから必要なリストをDansGuardianで読み込みブロックします。
また引っかからないようなサイトは個別に禁止URLとして登録することにします。
- Spam スパムURL
- ads 広告
- adult アダルト
- aggressive 攻撃的
- antispyware スパイウェアを取り除くサイト
- artnudes 芸術的なヌード
- astrology 占星術
- audio-video オーディオ・ビデオ
- banking 銀行
- beerliquorinfo アルコール系情報
- beerliquorsale アルコール系販売
- blog ブログ
- cellphones 携帯電話
- chat チャット
- childcare 保育
- cleaning クリーニング
- clothing 衣服
- culinary 料理
- dating 出会い系サイト
- desktopsillies デスクトップアクセサリ
- dialers 日記
- drugs 違法な薬物
- ecommerce eコマース
- entertainment エンタテイメント
- filehosting オンラインストレージ
- financial 金融系
- frencheducation フランスの学校
- gambling ギャンブル
- games ゲーム
- gardening ガーデニング
- government 政府機関
- hacking ハッキング
- homerepair 日曜大工
- hygiene 衛生
- instantmessaging インスタントメッセンジャー
- jewelry 宝石
- jobsearch 職探し
- kidstimewasting 子供に不適切なサイト
- mail メール
- marketingware マーケティングウェア
- medical 医学
- mixed_adult アダルトを含む
- mobile-phone モバイルフォン
- 02naturism 裸体
- news ニュースサイト
- onlineauctions ネットオークション
- onlinegames オンラインゲーム
- onlinepayment オンライン支払いサイト
- personalfinance 個人投資
- pets ペット
- phishing フィッシング
- porn ポルノ
- proxy プロキシ
- radio ラジオ
- reaffected 再影響した
- religion 宗教
- ringtones 着信音・ゲーム・写真等を含むサイト
- searchengines 検索エンジン
- sect ???
- sexuality セクシャル
- shopping ショッピング
- socialnetworking ショーシャルネットワーク(SNS)
- sportnews スポーツニュース
- sports スポーツ
- spyware スパイウェア
- updatesites OS等の更新サイト
- vacation 休みなどに利用するサイト
- verisign ベリサイン
- violence 暴力的なサイト
- virusinfected ウイルス感染サイト
- warez 違法コピーされたソフトがあるサイト
- weapons 武器
- weather 天気予報
- webmail ウェブメール
- whitelist ホワイトリスト
日時: 2009年02月26日 17:34 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
DansGuardianの設定(3) dansguardian.confの編集
dansguardian.confを編集します。
# vi /etc/dansguardian/dansguardian.conf
5行目付近
UNCONFIGURED - Please remove this line after configuration
を
#UNCONFIGURED - Please remove this line after configuration
27行目付近
language = 'ukenglish'
を
language = 'japanese'
66行目付近
#loglocation = '/var/log/dansguardian/access.log'
を
loglocation = '/var/log/dansguardian/access.log'
86行目付近
filterip =
を
filterip = 192.168.1.1
416行目付近
#contentscanner = '/etc/dansguardian/contentscanners/clamav.conf'
を
contentscanner = '/etc/dansguardian/contentscanners/clamav.conf'
ここまで。
これでとりあえずOKだと思います。
ログファイルを作成します。
アクセスログ用のファイルが無いので空ファイルを作成します。
# touch /var/log/dansguardian/access.log
# chmod 777 /var/log/dansguardian/access.log
以上です。
日時: 2009年02月26日 18:20 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
2009年02月27日
DansGuardianの設定(4) 禁止項目の設定
/etc/dansguardian/listsディレクトリにある各設定ファイルにて行います。
bannedextensionlist
禁止する拡張子のリストです。 exeファイルはダウンロードさせない、等の設定が出来ます。bannediplist
アクセスを禁止するクライアントのIPアドレス。 1行に禁止したいIPアドレスを1つ記述します。bannedmimetypelist
禁止したいMIME Typeです。 1行ずつにMIME Typeを記述します。bannedphraselist
Webページ中に出現するフレーズでフィルタリングする設定です。 どのフレーズ設定を読み込むかを記載します。.Include</etc/dansguardian/lists/phraselists/gambling/banned>
日本語がどのような扱いになるかは今のところ不明。
bannedregexpheaderlist
禁止するヘッダ。 書式不明。bannedregexpurllist
URLに対して正規表現を用いて特定の文字が含まれていれば禁止する設定です。(girls|babes|bikini|model)+.*(\.jpg|\.wmv|\.mpg|\.mpeg|\.gif|\.mov)
bannedsitelist
ドメイン名でフィルタリングを行う設定です。.Include
ブラックリストのカテゴリを参考に設定していきます。
今回は
- adult
- artnudes
- dating
- games
- kidstimewasting
- mixed_adult
- onlinegames
- porn
- sexuality
- spyware
- violence
- virusinfected
- warez
を設定します。
# vi bannedsitelist
.Include</etc/dansguardian/lists/blacklists/adult/domains>
.Include</etc/dansguardian/lists/blacklists/artnudes/domains>
.Include</etc/dansguardian/lists/blacklists/dating/domains>
.Include</etc/dansguardian/lists/blacklists/games/domains>
.Include</etc/dansguardian/lists/blacklists/kidstimewasting/domains>
.Include</etc/dansguardian/lists/blacklists/mixed_adult/domains>
.Include</etc/dansguardian/lists/blacklists/onlinegames/domains>
.Include</etc/dansguardian/lists/blacklists/porn/domains>
.Include</etc/dansguardian/lists/blacklists/sexuality/domains>
.Include</etc/dansguardian/lists/blacklists/spyware/domains>
.Include</etc/dansguardian/lists/blacklists/violence/domains>
.Include</etc/dansguardian/lists/blacklists/virusinfected/domains>
.Include</etc/dansguardian/lists/blacklists/warez/domains>
bannedurllist
URLでフィルタリングを行う設定です。
.Include</etc/dansguardian/lists/blacklists/virusinfected/urls>
今回は
- adult
- artnudes
- dating
- games
- kidstimewasting
- onlinegames
- porn
- sexuality
- violence
- virusinfected
- warez
を設定します。
# vi bannedurllist
.Include</etc/dansguardian/lists/blacklists/adult/urls>
.Include</etc/dansguardian/lists/blacklists/artnudes/urls>
.Include</etc/dansguardian/lists/blacklists/dating/urls>
.Include</etc/dansguardian/lists/blacklists/games/urls>
.Include</etc/dansguardian/lists/blacklists/kidstimewasting/urls>
.Include</etc/dansguardian/lists/blacklists/onlinegames/urls>
.Include</etc/dansguardian/lists/blacklists/porn/urls>
.Include</etc/dansguardian/lists/blacklists/sexuality/urls>
.Include</etc/dansguardian/lists/blacklists/violence/urls>
.Include</etc/dansguardian/lists/blacklists/virusinfected/urls>
.Include</etc/dansguardian/lists/blacklists/warez/urls>
後は追々調整していくことにします。
日時: 2009年02月27日 17:19 | カテゴリ:Ubuntuでルータ| パーマリンク | トラックバック (0)
Copyright (C)堕落日記.