第 7 章 ネットワークでの利用例 81
7.4 外部からのアクセスを制限する
7.4.1 外部から LAN へのアクセスを制限するフィルタリングを設定する
※ 本節ではインターネットとの接続インターフェイスにpppoe0を使用しています。
※ 本節では説明のため、「10.0.0.0〜10.255.255.255」「172.16.0.0〜172.16.255.255」までのアド レスをグローバルアドレスとして表現しています。
※ インターネットからの接続要求を許可するフィルタを設定した場合、 許可を受けたポート番号を 偽造して不正な接続を行われる可能性が生じます。このような事態を防止するために、SEILの フィルタリング機能だけではなく、他のセキュリティ手法も加えて、ネットワークセキュリティ を向上させることをお勧めします。
設定の流れ
( 1 )
フィルタを設計するどのようなアクセスを許可し、どのようなアクセスを遮断するのかを決めます。
( 2 )
フィルタを設定する設計に基づき、フィルタの設定を行います。
( 3 )
設定を保存するすべての設定を保存します。
( 1 )フィルタを設計する
次のようなアクセス制限を行うものとします。
A. 外部からWebサーバへのアクセスは許可
B. 内部から外部に対するアクセスの返答はTCPのみ許可 C. 外部からSEILへのアクセスはICMP以外すべて禁止 D. 外部から内部のホストにはA.によるもの以外はすべて禁止 これを実現するためには、次のようなフィルタが必要になります。
a. 外部からWebサーバ(172.16.0.2)に対するTCPを使ったアクセスで送信先のポート番号が 80番のものを通すフィルタ
b. 外部からLANに割り当てているグローバルアドレス空間(172.16.0.0/24)に対するTCPを 使ったアクセスで、確立済み(TCP Established)のものを通すフィルタ
c. 外部からSEIL(10.0.0.1)に対するICMPによるアクセスをすべて通すフィルタ d. 外部からのアクセスをすべて遮断するフィルタ
※ 内部から外部へのTCPを使ったアクセスを許可するためにはb. のフィルタを設定しておく 必要があります。b. のフィルタを設定していない場合、内部のクライアントが外部のサー バにアクセスする様な場合でも、その返答がd.のフィルタによって遮断されます。
※ 許可したいアクセスがd.のフィルタで遮断されてしまわないように、d.のフィルタの優先 順位を1番低くする必要があります。
※ フィルタの処理はNAT/NAPT処理が行われたあとに実行されます。NAT/NAPT機能を使用 している場合は、グローバルアドレスではなくNAT/NAPT変換後のアドレスに対してフィ ルタをかける必要があります。
( 2 )フィルタを設定する
フィルタの設計が完了すると、次はフィルタの設定を行います。フィルタを設定する順番は、優 先順位さえ正しく設定されていればどのような順番で設定しても問題ありません。この設定例で はフィルタの設計で示したa.からd.の順番で行うこととします。
ここでは a.について設定手順を説明します。b.以降も同様にフィルタの追加を行ってくだ さい。
SEILに管理者アカウントでログインし、a.のフィルタを追加します。以下の設定を行ってくだ さい。
設定項目 パラメータ フィルタ名 httppass アクション pass インターフェイス pppoe0
方向 in
プロトコル tcp 送信先IPアドレス 172.16.0.2/32
送信先ポート番号 80 ログの取得 off 優先順位 top
有効/無効 enable
■ 記述例
¶ ³
# filter add httppass action pass interface pppoe0 direction in protocol tcp dst 172.16.0.2/32 dstport 80 logging off top enable
µ ´
■ パラメータ解説
filter add httppass
フィルタ名として「httppass」を設定します。
action pass
続けて、アクションとして、条件に合致したパケットのアクセスを許可するため「pass」 を設定します。
interface pppoe0
続けて、インターフェイスとして「pppoe0」を設定します。
direction in
続けて、方向として、対象が外部から内部へのアクセスであるため「in」を設定します。
protocol tcp
続けて、プロトコルとして、対象がHTTPを使ったアクセスであるため「tcp」を設定 します。
dst 172.16.0.2/32 dstport 80
続けて、送信先 IP アドレスとして、Webサーバ用のグローバルアドレスである
「172.16.0.2/32」を設定します。ネットマスク長の値は、ネットワークではなくWeb
サーバ自身を指定するため「32」となります。さらに、送信先IPアドレスのポート番
続けて、ログの取得は行わないため「off」を設定します。
top
続けて、優先順位として、この段階ではフィルタが1つも設定されていないため「top」 を設定します。
enable
続けて、設定を有効にするため「enable」を設定します。
b.のフィルタを設定する場合、以下の設定を行ってください。
設定項目 パラメータ フィルタ名 estabpass アクション pass インターフェイス pppoe0
方向 in
プロトコル tcp-established 送信先IPアドレス 172.16.0.0/24
ログの取得 off
優先順位 below httppass (aの次))
有効/無効 enable
■ 記述例
¶ ³
# filter add estabpass action pass interface pppoe0 direction in protocol tcp-established dst 172.16.0.0/24 logging off
below httppass enable
µ ´
■ パラメータ解説
filter add estabpass
フィルタ名として「estabpass」を設定します。
action pass
続けて、アクションとして、条件に合致したパケットのアクセスを許可するため「pass」 を設定します。
interface pppoe0
続けて、インターフェイスとして「pppoe0」を設定します。
protocol tcp-established
続けて、プロトコルとして、対象が確立済みのTCPを使ったアクセスであるため
「tcp-established」を設定します。
dst 172.16.0.0/24
続 け て 、送 信 先 IP ア ド レ ス と し て 、LAN 側 の グ ロ ー バ ル ア ド レ ス で あ る
「172.16.0.0/24」を設定します。ネットマスク長の値は、LAN側のネットワークを指
定するため「24」となります。
logging off
続けて、ログの取得は行わないため「off」を設定します。
below httppass
続けて、優先順位として、a.のフィルタよりも優先順位を低くするため「below httppass」を設定します。
enable
続けて、設定を有効にするため「enable」を設定します。
c.のフィルタを設定する場合、以下の設定を行ってください。
設定項目 パラメータ
フィルタ名 icmppass アクション pass インターフェイス pppoe0
方向 in
プロトコル icmp
送信先IPアドレス 10.0.0.1/32
ログの取得 off
優先順位 below estabpass (bの次))
有効/無効 enable
■ 記述例
¶ ³
# filter add icmppass action pass interface pppoe0 direction in protocol icmp dst 10.0.0.1/32 logging off below estabpass enable
µ ´
■ パラメータ解説
filter add icmppass
続けて、アクションとして、条件に合致したパケットのアクセスを許可するため「pass」 を設定します。
interface pppoe0
続けて、インターフェイスとして「pppoe0」を設定します。
direction in
続けて、方向として、対象が外部から内部へのアクセスであるため「in」を設定します。
protocol icmp
続けて、プロトコルとして、対象がICMPを使ったアクセスであるため「icmp」を設 定します。
dst 10.0.0.1/32
続けて、送信先IPアドレスとして、SEILのグローバルアドレスである「10.0.0.1/32」 を設定します。ネットマスク長の値は、ネットワークではなくSEIL自身を指定する ため「32」となります。
logging off
続けて、ログの取得は行わないため「off」を設定します。
below estabpass
続けて、優先順位として、b.のフィルタよりも優先順位を低くするため「below estabpass」を設定します。
enable
続けて、設定を有効にするため「enable」を設定します。
d.のフィルタを設定する場合、以下の設定を行ってください。
設定項目 パラメータ フィルタ名 allblock アクション block インターフェイス pppoe0
方向 in
プロトコル any ログの取得 off
優先順位 bottom
有効/無効 enable
■ 記述例
¶ ³
# filter add allblock action block interface pppoe0 direction in protocol any logging off bottom enable
µ ´
■ パラメータ解説
filter add allblock
フィルタ名として「allblock」を設定します。
action block
続けて、アクションとして、条件に合致したパケットのアクセスを遮断するため
「block」を設定します。
interface pppoe0
続けて、インターフェイスとして「pppoe0」を設定します。
direction in
続けて、方向として、対象が外部から内部へのアクセスであるため「in」を設定します。
protocol any
続けて、プロトコルとして、a.からc.までのフィルタの対象とならなかったすべての パケットを遮断するため「any」を設定します。
logging off
続けて、ログの取得は行わないため「off」を設定します。
bottom
続けて、優先順位として、a.からc.までのフィルタよりも優先順位を低くするため
「bottom」を設定します。
enable
続けて、設定を有効にするため「enable」を設定します。
( 3 )設定を保存する
すべての設定が終了したら、save-toコマンドにより設定内容の保存をします。詳細は、 ó
[6.3.1設定内容の保存・読込・取得¤ ¡
£P.62¢]をご覧ください。
以上でフィルタの設定は完了です。変更した設定内容はバックアップをとっておくことをお勧め します。