iptablesによるFirewallの作成

Download Report

Transcript iptablesによるFirewallの作成

iptablesによるFireWallの作成
情報工学科2組
古沢 透
はじめに
今日、インターネットの普及にともないPCの利
用者が劇的に増加した。それに比例してネッ
ト犯罪の発生件数も年々増加傾向にある。今
回はその中でも海外からの不正なアクセスに
注目し、その対抗手段として日本のパケット
のみ許可するFirewallを作成することにした。
Firewallの作成にはLinuxに標準でインストー
ルされているiptablesというツールを使用した。
開発環境
OS:Fedora 7
メモリ:1GB
CPU:1.8GHz
サーバーの種類:ルーターサーバー
iptablesのルールについて
filter,nat,mangleという三つのテーブルが用意されて
おり、そのテーブル毎に設定出来るルールが決めら
れている。
今回使用するテーブルはfilterとnatの二つ。
filterテーブルで設定出来るルール(チェイン)はINPUT、
FORWARD、OUTPUTの三種。
natテーブルで設定出来るルール(チェイン)は
PREROUTING、POSTROUTING、OUTPUTの三種
類になる。
チェインの相互関係
パケット送信
パケット受信
PREROUTING
経路の決定
FORWARD
INPUT
POSTROUTING
OUTPUT
ローカルプロセス
コマンド文の説明その1
#! /bin/bash・・・使用するシェルの提示
iptables -F
-Fのコマンドオプションにより、全てのテーブル
のルールを初期化する。
iptables -X
-Xのコマンドオプションにより、ユーザー定義に
より設定されていたルールを初期化する。
コマンド文の説明その2
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
-Pのコマンドオプションにより、各テーブルの
チェインのポリシー(デフォルトの行動)を設定
する。
デフォルト設定での相関図
パケット破棄
パケット送信
パケット受信
PREROUTING
パケット破棄
経路の決定
FORWARD
POSTROUTING
OUTPUT
INPUT
ローカルプロセス
コマンド文の説明その3
iptables -A INPUT -i eth1 -m state --state
ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth1 -m state -state ESTABLISHED,RELATED -j ACCEPT
INPUTとFORWARDのチェインにおいて接続済
みのコネクション、その既存の接続に関連す
るものは通過、転送を許可する。
コマンド文の説明その4
iptables -A INPUT -i eth1 -p all -s
58.0.0.0/15 -j ACCEPT
58.0.0.0/15のIPアドレスからのパケットの通過
を全てのプロトコルで許可する。
iptables -A FORWARD -i eth1 -p all -s
58.0.0.0/15 -j ACCEPT
58.0.0.0/15のIPアドレスからのパケットの転送
を全てのプロトコルで許可する。
説明した全コマンド文を踏まえた相関図
パケット受信
PREROUTING
経路の決定
外国のパケットは破棄
パケット送信
FORWARD
POSTROUTING
外国のパケットは破棄
INPUT
日本のパケット、又は
接続済みのコネクションと
それに関連する接続は許可
ローカルプロセス
OUTPUT
作成したフィルターを使用すると・・・
日本のIPアドレスが送信元のパケットだけ通過、
転送を許可し、諸外国のIPアドレスが送信元
のパケットは全て破棄することが出来るよう
になった。
まとめ
研究を通してiptablesのルール構築とLinuxに
おけるサーバーの建て方を理解、習得し、PC
の組み立て方を再確認することが出来た。
今後の課題として、JPNICが公開しているIPアド
レスを手動で整理するのはあまりにも非効率
なので、perlを使って自動でweb上からダウ
ンロード、整理してコマンド文に書き換えるよ
うに設定したい。
参考文献
JPNIC(社団法人日本ネットワークインフォメーションセ
ンター):http://www.nic.ad.jp/
Fedora Core6ビギナーズバイブル
著者:大津 真、まえだ ひさこ、向井 領治
出版社:MYCOM(毎日コミュニケーションズ)
Fedoraで自宅サーバー構築
http://fedorasrv.com/