Advertising banner:
 
 
 C203
Home • Images • jp • OnlineHelp Repository • Pre 8.3JP OnlineHelp • A0 • Administration • C203
 




ファイヤウォールの利用
ファイヤウォールとは、ネットワークを流れるトラフィックを監視、保護するために使用するネットワークセキュリティ用ツールです。通常は、コンピュータ内部に搭載されています。本来のファイヤウォールは、システムをスキャンしてウィルスやトロイの木馬を探したり、受信パケットをスキャンしてウィルスを監視したりするものではありません。しかし、ファイヤウォール製品の中には、アンチウィルスソフトウェアがバンドルされて、さまざまなレベルでウィルス監視を行うことができるものがあります。
ファイヤウォールにはさまざまな種類があり、どれもハードウェアとソフトウェアを組み合わせて、できる限りの防御を行います。
ファイヤウォールの選択
適切なファイヤウォールを選ぶには、次のことを検討してください。
ご自分のネットワークでセキュリティ上危険なものは何でしょうか。
特定のユーザからのアクセスを拒否したいと考えていますか。特定のプロトコルはどうでしょうか。
HTTPやTelnetなど、どのプロトコルからの要求を許可したいでしょうか。FTPなど、どのプロトコルは拒否したいでしょうか。
ファイヤウォールの構造
ファイヤウォールの基本的な構造はどれも同じで、お使いになるファイヤウォールの種類によって、多少の違いがあります。ファイヤウォールサーバでは、まずインターネットから送られてくるパケットをすべて調べます。また、ご自分のネットワーク経由で送られてくるパケットも調べます。これは、すべてのトラフィックが通るメインゲート、あるいは隘路(choke point)と考えることができます。ファイヤウォールサーバは、インターネットとご自分のネットワークとの間に配置され、システムのセキュリティを守るコンピュータです。
C203_01j.jpg
暗号化
2つのネットワーク間で互いに通信できるように設定している場合、ネットワークの安全を守るもう1つの方法として、各ネットワークのファイヤウォールで暗号を使用することができます。この場合は、ファイヤウォールから送信されるパケットがすべて暗号化されることになります。最も普及している暗号化方式はRSA(Rivest-Shamier-Adleman)です。下図のネットワーク通信の例では、メッセージがローカルネットワークのファイヤウォールサーバで暗号化され、リモートネットワークのファイヤウォールサーバで復号化されています。
C203_02j.jpg



ファイヤウォールの種類
おもに、次の3つの種類のファイヤウォールがあります。
・ネットワークレベル(第1世代のファイヤウォール技術)
・サーキットレベル(第2世代)
・アプリケーションレベル(第3世代)
それぞれの種類のファイヤウォールで、異なる技術を使用してネットワークを保護しています。ネットワークレベル(またはパケットフィルタ)のファイヤウォールは、トランスポート層のネットワークトラフィックを解析して、設定によってあらかじめ許可されているかどうかを確認します。
サーキットレベルのファイヤウォールは一歩進んだ機能をもっており、パケットが接続要求なのか、2つの同等なトランスポート層間での接続なのかを確認します。この確認は、まず各接続の設定を調べてから、その接続を完全なセッション状態とシーケンス情報を保持する有効な接続テーブルと比較することで行われます。
アプリケーションレベルのファイヤウォールは、他の2種類よりも精密な機能をもっています。このファイヤウォールでは、アプリケーション層でネットワークパケットのデータを個別に調べてから、接続を許可します。すべてのネットワークパケットのデータを調べ、接続状態とシーケンス情報を完全な形で保持します。
ネットワークレベルのファイヤウォール
ネットワークレベルのファイヤウォールは、スクリーニングルータとしてよく知られています。また、パケットフィルタと呼ばれることもあります。これは、パケットをスクリーニングする(ふるい分けする)という最も基本的なファイヤウォールです。このファイヤウォールの基本動作は、パケットのアドレスを調べて、そのパケットをローカルネットワークに通過させるか、入ってこないように遮断するかを判断することです。
パケットには送信者のIPアドレスと受信者のIPアドレスが両方とも含まれているため、特定のコンピュータに対して、受信パケットと送信パケットをすべて遮断することができます。このためには、ブロックリストとか許可・拒否リストと呼ばれるようなファイルを作成し、(最も一般的なフィルタとして使われる)IPアドレスをそこに記述します。ルータは、接続要求があるたびにこのファイルをチェックして、受信IPアドレスがこの表に登録されていれば、その接続を遮断します。
通常、このチェックは、がファイヤウォールで無効にされているサービスに特定のユーザが接続しようとした場合にだけ行われます。ほとんどの場合、スクリーニングルータは次の規則にもとづいてフィルタリングを行います。
・データが送られてくる送信元アドレス。
・データを送る送信先アドレス。
・データのプロトコル(TCP、UDP、ICMPなど)。
・接続要求のあったサービスが使用する送信元および送信先のアプリケーションポート。
・パケットが、接続要求の開始点であるかどうか。
ネットワークレベルのファイヤウォールは、正しく設定されていれば、拒否されている動作を行おうとしないかぎり、どのユーザの接続も通過させます。
FirstClassインターネットサービスには、フィルタリングを行うセキュリティ機能があらかじめ組み込まれているため、インターネットプロトコルをチェックするネットワークレベルのファイヤウォールとして動作します。この詳細は、FirstClassインターネットサービスのヘルプを参照してください。
ネットワークレベルのファイヤウォールは、だいたい下図のようになります。
C203_03j.jpg
この例では、IPアドレスとホスト名にもとづいて特定のユーザを拒否し、さらにファイルのアップロード、ダウンロードが可能になるFTP(File Transfer Protocol)の要求を拒否しています。
このルータは、(自分が設定したルールにもとづく)パケットフィルタリングを、アプリケーション層から独立して行っています。したがって、スクリーニングルータを利用すれば、クライアントとサーバのアプリケーションに変更を加えることなく、ネットワークとそのトラフィックを管理することができます。
ステートフルインスペクション
ネットワークレベルのファイヤウォールには、ステートフルインスペクションという別の種類のものがあります。その構造は、ほとんどのルータで使用されている基本的なパケットフィルタリング機能を拡張したものです。ステートフルインスペクションは、ネットワーク層で機能します。これにより、疑わしいパケットがプロトコルスタックを通過しないようにすることができます。しかし、静的なパケットフィルタリングとは異なり、ステートフルインスペクションは、OSI階層の全階層に対応するパケット内の全データにもとづいて判断を行います。接続状態がつねに監視されるため、ファイヤウォールは、システム管理者が定義したルールと以前のセッション状態にもとづいて、さまざまな処理を行うことができます。実際、この種類のファイヤウォールは、ファイヤウォールを通過して接続しているセッションの情報を保持しておくことができます。これによ り、UDPなどのコネクションレス型のプロトコルであっても、高いセキュリティを確保しながら、承認されていない接続の全パケットを、効率的にスクリーニングすることができます。
ネットワークレベルのファイヤウォールの欠点は、アプリケーションの警告と監査ができないことです。したがって、スクリーニングフィルタがパケットを拒絶しても、そのことが管理者に通知されません。アプリケーションレベルのファイヤウォールなど高度なファイヤウォールは、プロトコルをフィルタリングし、拒否した要求を報告するようになっています。
多くのシステムでは、ネットワークレベルのファイヤウォールは、防御の第一線としてしか使われていません。このレベルのファイヤウォールは多くのプロトコルに対応していないため、追加のフィルタリング措置が必要になります。
サーキットレベルのファイヤウォール
通常、サーキットレベルのファイヤウォールは、プロキシサーバソフトウェアを実行するホストコンピュータで構成されています。このコンピュータをプロキシサーバといいます。プロキシサーバは、ネットワークの外にあるサーバと通信を行うため、2つのネットワーク間を流れるトラフィックを制御します。
サーキットレベルのファイヤウォールとアプリケーションレベルのファイヤウォールは、どちらもプロキシサーバであるという点では同じようなものです。その違いは、サーキットレベルのファイヤウォールにはプロキシクライアントソフトウェアが必要ないということです。サーキットレベルのファイヤウォールは、クライアントとサーバとの間に経路を作りますが、その際、一方のアプリケーションが、使用中のもう一方のアプリケーションのことを把握する必要がありません。
つまり、クライアントとサーバは、基本的にファイヤウォールと通信することなく、ファイヤウォール経由で通信することができます。これにより、トランザクションの開始が、実行中のトランザクションから干渉されないようになります。
サーキットレベルのファイヤウォールを使用する利点は次のとおりです。
・さまざまなプロトコルで使用できるサービスがあります。
・評価をほとんど行わないため、速度が大きくなります。
・ネットワークアドレス変換機能と併用して使用できるため、内部のIPアドレスを外部ユーザから隠すことができます。
サーキットレベルのファイヤウォールを使用する欠点は次のとおりです。
・TCP以外のプロトコルのサブセットへのアクセスを制限できません。
・自分より高い階層のプロトコルで、厳重なセキュリティチェックを行うことはできません。
・監査イベントの生成機能に限界があります。
サーキットレベルのファイヤウォールは、ネットワークレベルのファイヤウォールと同じように、ブラックリストや有効な接続情報(完全なセッション状態とシーケンス情報などの)を記述した許可・拒否リストを使用します。まず、受信セッションを調べて、正当なTCPプロトコルであることを確認します。ハンドシェイクが完了すると、そのネットワークパケット情報が許可・拒否リストにあるかどうかを調べます。許可リストにあることがわかれば、そのパケットは許可されます。接続するときに仮想回線が作られ、接続中はそのままの状態となります。
サーキットレベルのファイヤウォールは、だいたい下図のようになります。
C203_04j.jpg
アプリケーションレベルのファイヤウォール
前述のように、アプリケーションレベルのファイヤウォールには、ネットワークの外部にあるサーバと通信を行うプロキシサーバが備わっており、2つのネットワーク間のトラフィックを制御します。
アプリケーションレベルのファイヤウォールを使用すると、自分のローカルネットワークは、インターネットと直接的には接続しません。代わりに、プロキシサーバは、許可されたパケットの複製を他のネットワークに転送します。このパケットには、受信データも送信データも含まれます。その結果、ファイヤウォールは、接続を開始した送信元のIPアドレスを完全に隠し、ネットワーク情報の入手を試みる侵入者からネットワークを守ります。
つまり、プロキシサーバを自分のIPアドレスを隠すために使用して、インターネット上で自分を匿名状態にすることができます。ただし、ハッカーも、特定のサーバを攻撃する際にこの「サービス」を使用して、自分のIPアドレスを隠すことができるという問題があります。
プロキシサーバはネットワークプロトコルを識別できるため、プロキシサーバを設定して、自分のネットワーク上で必要なIPサービスの種類を制限することができます。入手可能なプロキシサーバにはたくさんの種類があります。スクリーニングルータとは異なり、導入するプロキシサーバに対してスクリーニングする各プロトコルを登録することが必要です。
理想的な環境は、スクリーニングフィルタとファイヤウォールを同時に使用して、パケットとプロトコルをフィルタリングすることです。スクリーニングルータとファイヤウォールの両方を使用するシステムは、だいたい下図のようになります。
C203_05j.jpg
ファイヤウォールを(インターネットに最も近い位置にある)外部ルータと内部ルータとの間に置くと、攻撃からの防御能力が今以上に高まるわけではありませんが、ファイヤウォールサーバで調べなければならないトラフィック量を大きく減らすことができ、その結果、ファイヤウォールのパフォーマンスが高まります。ファイヤウォールの隣にフィルタリングルータがないと、サブネット上を流れるパケットを、他の内部ホスト宛のものであってもすべて処理しなければならなくなります。
プロキシサーバは、高度なセキュリティが必要な環境ではよい選択でしょう。ただし、プロキシは、実際のアプリケーションが監査とフィルタリングを実行するため、ネットワークレベルのファイヤウォールより速度が低くなります。したがって、(FirstClassサーバとFirstClassインターネットサービス用のコンピュータを除いて)自分のネットワーク内でも最も速度の大きいコンピュータに、アプリケーションレベルのファイヤウォールを搭載してください。
FirstClassクライアントが直接対応しているのは、SOCKS4対応のプロキシインタフェースだけです。ファイヤウォールで使用するクライアントは、NAT(Network Address Translation)かSOCKS4のどちらかの設定にしなければなりません。
NAT(Network Address Translation)
NAT(Network Address Translation)は、(ソフトウェアルータとも呼ばれる)最新のプロキシサーバに搭載されている機能で、あるネットワーク内で使われているIPアドレスを、他のネットワーク内で利用可能な異なるIPアドレスに変換します。NATの機能は企業のファイヤウォールにはたいてい備わっています。送信要求、受信要求は必ず変換処理を経なければならなくなるため、セキュリティが確保されます。また、NATによって、その送信、受信要求を制限、認証したり、以前の要求と照合したりすることができます。
NATは、他のプロキシ方式と比べてはるかに透過性が高いため、透過プロキシアプリケーションを含むほとんどすべてのアプリケーションがNAT対応プロキシサーバ経由で他のサービスに接続できるようになります。NATは、TCP/IP通信と(コネクションレスのプロトコルである)UDP/IP通信の両方に対応しています。
FirstClassクライアントでNATを利用できるように設定するには、ただクライアントマシンのネットワークゲートウェイをNATルータのマシンに設定するだけです。これはOSでの設定なので、FirstClass側での設定は必要ありません。
81203_42521_14.png注意
NATは、ほとんどの場合、プライベートネットワーク上のクライアントマシンがら送信を行ってインターネットに接続するために使用されます。クライアント側からみれば、NATを利用するのは好ましい選択です。しかし、プライベートネットワーク上のサーバで利用するには適していません。
SOCKS4
SOCKS(またはsocks)サーバは、企業のファイヤウォールの内側にあるクライアントからの要求を処理し、要求されたインターネットの宛先かユーザIDにもとづいて接続要求を許可あるいは拒否します。接続と「バインド」要求が完了すると、情報交換がHTTPなどの通常のプロトコルで行われます。
SOCS4は、TCP/IPだけに対応するクライアントプログラム用のプロキシサーバインタフェースです。ここで説明するケースでは、プロキシサーバはSOCKS4の接続要求をサーバマシンにリレーするよう設定されています。
81203_42521_14.png注意
FirstClassは、SOCKS5には対応していません。
SOCKS4を利用できるようにFirstClassを設定するには、
1       [ログイン]フォームの[設定]をクリックしてください。
2       サーバマシンの設定を通常どおりに行ってください。
3       [設定]をクリックして[接続方法の設定]フォームを開き、[プロトコル]で[TCP/IP]を選択してください。
4       [基本設定]タブで、次の項目を選択してください。
・[ポート番号]は、[TCPデフォルト(510)]。
・[プロキシのポート]は[デフォルト(1080)]。
・[プロキシのIPアドレス]は「0.0.0.0」。
81203_42521_14.png注意
[プロキシのIPアドレス]で0.0.0.0以外のアドレスを設定すると、そのアドレスに迂回するようクライアントまたはアウトバウンド接続に命令することになります。これにより、SOCKS4インタフェースを使用するアドレスがプロキシサーバに伝えられます。
・[バッファのサイズ]は[デフォルト(10000)]。
5       この設定を保存します。

設定後、プロキシサーバはクライアントの代わりとなるIPアドレスに接続要求をリレーします。クライアントソフトウェアは、プロキシサーバのIPアドレスだけでなく、プロキシサーバが使用するポート番号も知る必要があります。これは、サーバと通信するためにクライアントソフトウェアに510番ポートの使用を設定しなければならないのと同じようなものです(ポートの要件を参照してください)。
FirstClassサーバを設定してファイヤウォールの内側で動作するようにするには、適切な接続をファイヤウォールに対して開く必要があります(ポートの要件を参照してください)。
NetinfoファイルかデフォルトのNETINFOポート設定で指定されているポートに、SOCKS4サーバが対応していなければなりません。したがって、通常は510番ポートでプロキシサーバがリレーするのを許可しなければなりません(これを「開く」といいます)。TCPGUIPORTやTCPRGUIPORTなど、Netinfoファイルに記述された追加のポートを使用するには、追加するポートを開くようプロキシサーバを設定しなければなりません。
23番ポートは、インターネットの「Telnet」プログラムのポートです。これは、CLUIインタフェースで使用します。プロキシサーバ経由でCLUIを使用するには、TCPのTelnetホストにプロキシ接続ができるProcomm PlusやHyperTerminalなどのTelnetプログラムやターミナルエミュレーションが必要です。CLUIを使用する場合は、FirstClassクライアントとFCPプロトコルは必要ありません。通信は、ターミナルプログラムとプロキシサーバとの間で行われます。例えば、ターミナルプログラムとプロキシサーバはSOCKS5に対応可能で、SOCKS5を利用してCLUI経由で接続することができます。
FirstClassインターネットサービスがファイヤウォールの外側にある場合、プロキシサーバは、対応するインターネットのポートを、外部接続に対して開かれるポートの一覧に登録する必要があります。通常、このポートはtelnet用のポートと同じく、すでに設定されています。ほとんどのプロキシサーバは、25番(SMTP)、80番(HTTP)、110番(POP3)、119番(NNTP)など一般的なインターネットポートを開くようデフォルトで設定されているからです。
FirstClassインターネットサービスとFirstClassサーバは、それぞれ異なるマシンで実行することができます。したがって、インターネットサービスを外部側あるいはインターネット側のプロキシサーバに搭載し、ローカル側のコアサーバと切り離すことができます。
サイトによっては、インターネットからサーバを切り離されていることあります。その場合は、FirstClassクライアントが接続するためにSOCKS4プロキシが必要になりますが、その際は、510番やその他のポート経由でインターネットサービスからサーバへSOCKS4接続を行う場合があります。このケースではセキュリティのための追加措置をしていませんが、いずれの場合もサーバはセキュアな状態になります。
パフォーマンスとセキュリティのバランス
ファイヤウォールを決定するにあたってよくある悩みは、パフォーマンスとセキュリティのバランスをどうとるかということです。パケットが通過する経路と、各パケットに対して実行されるセキュリティチェックのレベルについて検討しなければなりません。一般的に、ネットワークレベルのファイヤウォールのパフォーマンスが最も高く、サーキットレベルのファイヤウォール、アプリケーションレベルのファイヤウォールの順に続きます。
セキュリティチェックのレベルは、これとは逆の順序になります。これは、ネットワークパケットがより多くのプロトコル層を通過すればするほど、そのパケットをより詳しく調べることになるからです。したがって、アプリケーションレベルのファイヤウォールは、ネットワークレベルのファイヤウォールより安全性が高く、ネットワークレベルのファイヤウォールは、サーキットレベルのファイヤウォールより安全性が高いと考えられます。しかし、サーキットレベルのファイヤウォールは広範囲のセキュリティチェックを行わないため、許可・拒否ルールを多くもつネットワークレベルのファイヤウォールより動作速度が速くなることが多くあります。
通常、アプリケーションレベルのファイヤウォールは、構造的に速度が最も遅くなります。これは、各パケットが2つの別々のネットワークセッションとして処理され、データのセキュリティチェック最も広範囲に行うために、処理に必要な時間が長くなるからです。ただし、業界では、アプリケーションレベルのファイヤウォールが最もセキュリティの高いものと一般的に考えられています。
ポートの要件
次の一覧は、ファイヤウォールの設定時に開けておかなければならないポート番号を、接続の種類ごとに示しています。
21番ポート FTP
このポートがリレーを許可する(開く)ようにしてください。
23番ポート CLUI/Telnet
このポートを開くようにしてください。この23番ポートは、インターネットの「Telnet」プログラムのポートです。これは、CLUIインタフェースで使用します。
25番ポート SMTP
このポートをファイヤウォール上で開いて、双方向の通信ができるようにしてください。通常は、これがプロキシサーバのデフォルト設定です。
53番ポート DNS
このポートを開くようにしてください。FirstClassにはDNS機能はありませんが、このポートでDNSに接続する必要があります。
79番ポート Finger
80番ポート HTTP
このポートをファイヤウォール上で開いて、双方向の通信ができるようにしてください。通常は、これがプロキシサーバのデフォルト設定です。
110番ポート POP3
このポートをファイヤウォール上で開いて、双方向の通信ができるようにしてください。通常は、これがプロキシサーバのデフォルト設定です。
119番ポート NNTP
このポートをファイヤウォール上で開いて、双方向の通信ができるようにしてください。通常は、これがプロキシサーバのデフォルト設定です。
143番ポート IMAP
389番ポート LDAP
443番ポート HTTPS
510番ポート TCP FCP
このポートをファイヤウォールのプロキシサーバ上で開いて、双方向の通信ができるようにしてください。TCPGUIPORTやTCPRGUIPORTなど、Netinfoファイルに記述された追加のポートを使用するには、追加するポートを開くようプロキシサーバを設定しなければなりません。
810番ポート UDP FCP
このポートは、IP Network Notifierで使用します。
3000番ポート FCP
FirstClassクライアントの旧バージョンで使用していたTCPポートです(現バージョン以降では必要ありません)。



hirosue Shino Web Site