SOHO向けゲートウエイ型ファイアウォールの用途はBBルーターと変わらない。BBルーターに備わっている機能は,SOHO向けゲートウエイ型ファイアウォールも備えている。では,BBルーターとSOHO向けゲートウエイ型ファイアウォールの違いは,いったい何なのだろうか。

 SOHO向けのゲートウエイ型ファイアウォールは,インターネットと社内ネットの境界に置き,社内ネットのセキュリティを確保する。用途はBBルーターと変わらない。実際,NAPTPPPoEといったBBルーターに備わっている機能を,SOHO向けファイアウォールも備えている。では,BBルーターとの違いは何なのだろうか。

BBルーターより深く細かく検査

 違いは,セキュリティ機能にある(図1)。セキュリティ機能の豊富なBBルーターでも,備えているのはTCP/IPレベルのステートフル・インスペクションと,IPsecゲートウエイ機能まで。

図1●ブロードバンド・ルーターとSOHO向けファイアウォールの違い<br>大部分の機能は共通している。上位レイヤーのセキュリティ機能に差がある。
図1●ブロードバンド・ルーターとSOHO向けファイアウォールの違い
大部分の機能は共通している。上位レイヤーのセキュリティ機能に差がある。
[画像のクリックで拡大表示]

 一方のSOHO向けファイアウォールは最低レベルでも,これと同等の機能を持つ。多くのSOHO向けファイアウォールは,HTTPやSMTPのようなアプリケーション・プロトコルのステートフル・インスペクション,送受信パケットのデータ部の検査,DMZ(ディーエムジー)の提供,URLフィルタリングなど,BBルーターにはないセキュリティ機能を備える。BBルーターより深く,細かく検査してパケットを遮断するわけだ。

基本は社内クライアントを守る

 ネットワーク構成別に,SOHO向けファイアウォールの機能を確認しておこう。

 まずは,LAN内のパソコンがインターネット上のサーバーにアクセスするネットワークで利用するケース。ファイアウォールは,LAN内のパソコンが送るパケットと,その応答のうち正しいパケットだけを通過させる(図2の基本)。

図2●ゲートウエイ型ファイアウォールを使ったネットワーク構成例<br>基本はLANからインターネットへのアクセスだけを許すネットワーク。必要に応じてリモート・アクセスを受け入れたり,公開サーバーにアクセスできるようにする。
図2●ゲートウエイ型ファイアウォールを使ったネットワーク構成例
基本はLANからインターネットへのアクセスだけを許すネットワーク。必要に応じてリモート・アクセスを受け入れたり,公開サーバーにアクセスできるようにする。
[画像のクリックで拡大表示]

 正しい応答かどうかを見てパケットを通すだけであれば,多くのBBルーターが備えるTCP/IPレベルのステートフル・インスペクションでもできる。SOHO向けファイアウォールはこの機能に加えて,(1)アプリケーションがやりとりするコマンドやレスポンスの検査,(2)パケットのデータ部の検査――といったことができる。

複数のセキュリティ・レベルを管理

 さらに,SOHO向けファイアウォールがリモート・アクセスを受け付ける場合は,SOHO向けファイアウォールのIPsecゲートウエイ機能が使える。リモート・アクセスするパソコンにIPsecのクライアント・ソフトを入れ,SOHO向けファイアウォールとの間を暗号化した仮想的なトンネルでつなぐ。

 SOHO向けファイアウォールは,IPsecによるパケットの暗号化や復号の処理と同時に,パケットの中身までを検査する。万一インターネット上のIPsecクライアントがウイルスに感染して不正なパケットを送ってきても大丈夫。SOHO向けファイアウォールで暗号パケットを復号して中身をチェックするので遮断できる(図2の応用a)。

 また,メール・サーバーやWebサーバーなど,インターネットからのアクセスを待ち受けるサーバーがあるときは,公開サーバー用のネットワークであるDMZを,SOHO向けファイアウォールで作れる。DMZにはインターネットからもLANからもファイアウォール経由でアクセスするようにして,セキュリティ・レベルをインターネットともLANとも違う中間の状態に保つ(図2の応用b)。

シグネチャでパケットの中身を検査

 では,それぞれの機能を細かく見ていこう。まずは送受信パケットのデータ部の検査だ(図3)。

図3●アプリケーション・データまで監視する<br>メールやWebアクセスなどでアプリケーション・データとして送られる不正コードやウイルスを見つけ出し,不正データが相手に届かないようにコネクションを切断する。負担が大きい処理になるため,一部のプロトコルに限って検査したり,簡略化した検査をするものが多い。
図3●アプリケーション・データまで監視する
メールやWebアクセスなどでアプリケーション・データとして送られる不正コードやウイルスを見つけ出し,不正データが相手に届かないようにコネクションを切断する。負担が大きい処理になるため,一部のプロトコルに限って検査したり,簡略化した検査をするものが多い。
[画像のクリックで拡大表示]

 SOHO向けファイアウォールは,パケットのデータ部に格納されたデータを取り出して,攻撃パケットの内容を記述したシグネチャと比較する。ただ,比較といっても簡単ではない。パケットのデータ部に入っているのは,アプリケーション・データの一部だけで,複数のパケットを集めて組み立て直す必要があるからだ。

 そこでSOHO向けファイアウォールは,流れるパケットをコピーして,一つ一つからTCP/IPヘッダーを取り除き,連結してデータを再構成する。それから,アプリケーション・ヘッダーを取り除いて,シグネチャと比較する。

 なお,アプリケーション・データを再現し終わっていない段階のパケットは,ほかに問題が無ければそのまま通過させることが多い。アプリケーション・データの転送を遅らせないようにするためである。この場合,最後のパケットだけは,シグネチャとの比較が終わるまで,転送を一時的に止める。

 そしてウイルスなどが見つかれば,最後のパケットを廃棄して,代わりに通信を切断するパケットを転送する。メールなどのアプリケーションであれば,パケットを受け取るコンピュータは完全にデータが届いてから処理するため,これで問題ない