コンピューティング分野において、ステートフルファイアウォールとは、ネットワークを通過するネットワーク接続のセッションを個別に追跡するネットワークベースのファイアウォールです。ステートフルパケットインスペクション(動的パケットフィルタリングとも呼ばれます)[ 1 ]は、非商用およびビジネスネットワークでよく使用されるセキュリティ機能です。
説明
ステートフル ファイアウォールは、 TCPストリーム、UDPデータグラム、ICMPメッセージなどのネットワーク接続の状態を追跡し、LISTEN、ESTABLISHED、CLOSINGなどのラベルを適用できます。[ 2 ]状態テーブル エントリは、構成されたセキュリティ ポリシーに従ってファイアウォールを介して通信することを許可された TCP ストリームまたは UDP データグラムに対して作成されます。テーブルに格納されると、保存されたセッションのすべてのRELATEDパケットが効率化され、標準的な検査よりもCPUサイクルが少なくなります。関連パケットは、そのホストからの通信を許可するルールが設定されていない場合でも、ファイアウォールを介して戻ることが許可されます。指定された時間 (タイムアウトの実装に依存) にわたってトラフィックが確認されない場合、接続は状態テーブルから削除されます。これにより、アプリケーションで予期しない切断やTCP 接続のハーフオープンが発生する可能性があります。アプリケーションは、アクティビティがない期間中にファイアウォールが接続を切断したり、設計上長時間沈黙しているアプリケーションのために キープアライブメッセージ[ 3 ]を定期的に送信するように作成できます。
セッションの状態を維持する方法は、使用されているトランスポートプロトコルによって異なります。 TCP はコネクション指向プロトコル[ 4 ]であり、セッションはSYNパケットを使用した3 ウェイ ハンドシェイクで確立され、 FIN通知を送信することによって終了します。[ 5 ]ファイアウォールはこれらの一意の接続識別子を使用することで、タイムアウトを待たずに状態テーブルからセッションを削除するタイミングを判断できます。 UDP はコネクションレス プロトコルであるため[ 4 ]、通信中に接続に関連する一意の識別子を送信しません。そのため、設定されたタイムアウトが経過すると、セッションは状態テーブルから削除されます。UDP ホール パンチングは、この特性を利用してインターネット上にデータ トンネルを動的に設定できるようにする技術です。[ 6 ] ICMP メッセージは TCP や UDP とは異なり、ネットワーク自体の制御情報を伝達します。よく知られている例としては、pingユーティリティがあります。[ 7 ] ICMP 応答はファイアウォールを通過できます。シナリオによっては、UDP 通信で ICMP を使用してセッションの状態に関する情報を提供できるため、UDP セッションに関連する ICMP 応答も返されるようになります。
ステートフルインスペクションファイアウォールの利点
- セッション全体の接続状態を監視し、IPアドレスとペイロードをチェックしてセキュリティを強化します。
- ネットワークに出入りするコンテンツを高度に制御できます
- トラフィックの入出力を許可するために多数のポートを開く必要がない
- 実質的なログ機能を提供
ステートフルインスペクションファイアウォールの欠点
- リソースを大量に消費し、ネットワーク通信の速度に影響します
- 他のファイアウォールオプションよりも高価
- トラフィックソースが偽装されていないことを検証するための認証機能を提供していない
- 非対称ルーティングでは機能しません(反対方向は異なるパスを使用します)
- 接続がタイムアウトよりも長くアイドル状態の場合、予期しない切断や半開き接続が発生する可能性があります。
参照
参考文献
- ^ Goralski, Walter (2017年5月12日).図解ネットワーク:現代ネットワークにおけるTCP/IPの仕組み. エルゼビア・サイエンス. ISBN 978-0-12-811027-0. OCLC 986540207 .
- ^ 「TCP接続ステータス」 IBM Knowledge Center 2015年2月12日. 2020年9月6日閲覧。
- ^ 「TCP Keepalive HOWTO」 . Linuxドキュメンテーションプロジェクト. 2020年9月6日閲覧。
- ^ a b Mitchell, Bradley (2020年4月1日). 「TCP vs UDP」 . Lifewire . 2020年9月6日閲覧。
- ^ 「TCP スリーウェイハンドシェイク」 . Study-CCNA . 2018年9月6日. 2020年9月6日閲覧。
- ^ 「Cisco Merakiピア間の自動VPNトンネリングのための自動NATトラバーサル」Meraki . 2020年9月6日閲覧。
- ^ Mitchell, Bradley (2018年12月3日). 「インターネット制御メッセージプロトコル(ICMP)ガイド」Lifewire . 2020年9月6日閲覧。