ファイアウォールとは?ネットワークファイアウォールの仕組み

ファイアウォールは、ネットワークとインターネットの間に配置され、ネットワークを出入りするデータの流れを制御して潜在的なセキュリティの脅威を阻止します。

学習目的

この記事を読み終えると、以下のことができるようになります。

  • ファイアウォールを定義する
  • ファイアウォールが受信データと送信データの両方を検査する必要がある理由を説明する
  • プロキシファイアウォール、WAF、その他のファイアウォールの種類の違いを理解する

記事のリンクをコピーする

ファイアウォールとは?

ファイアウォールは、1セットのセキュリティ規則に基づいてネットワークトラフィックをモニタリングおよび制御するセキュリティシステムです。ファイアウォールは通常、信頼されたネットワークと信頼されていないネットワークの間にあります。多くの場合、信頼されていないネットワークはインターネットです。たとえば、オフィスネットワークでは、多くの場合、ファイアウォールを使用してオンラインの脅威からネットワークを保護しています。

ファイアウォールとは?

ファイアウォールは、着信および発信トラフィックの通過を許可するかどうかを決定します。ハードウェア、ソフトウェア、またはその両方の組み合わせに組み込むことができます。「ファイアウォール」という用語は、実際には、火を封じ込めるように設計された建物同士の間または建物の内部に壁を構築する建設手法から借用されています。同様に、ネットワークファイアウォールはオンラインの脅威を封じ込める働きをします。

ファイアウォールを使用する理由は?

ファイアウォールの主な使用例はセキュリティです。ファイアウォールは、悪意のあるト���フィックがネットワークに到達する前に傍受し、機密情報がネットワークを離れることを防止します。

ファイアウォールは、コンテンツフィルタリングにも使用できます。たとえば、学校はファイアウォールを設定して、ネットワーク上のユーザーがアダルトコンテンツにアクセスすることを防止することができます。同様に、一部の国では、政府がファイアウォールを実行して、その国民国家内の人々がインターネットの特定の部分にアクセスするのを防止することができます。

この記事では、セキュリティ用に構成されたファイアウォールに焦点を当てますが、いくつかの種類があります。

ファイアウォールの種類とは?

プロキシベースのファイアウォール:

これら���クライアントとサーバーの間にあるプロキシ*です。クライアントはファイアウォールに接続し、ファイアウォールは発信パケットを検査し、その後、目的の受信者(Webサーバー)への接続を作成します。同様に、Webサーバーがクライアントに応答を送信しようとすると、ファイアウォールはその要求を傍受し、パケットを検査してから、ファイアウォールとクライアント間の別の接続でその応答を配信します。プロキシベースのファイアウォールは、クライアントとサーバー間の直接接続を効果的に防止します。

プロキシベースのファイアウォールは、バーの警備員のようなものです。この警備員は、バーに入る前にゲストを止めて、未成年者であったり武装していたり、その他バーやその利用者に対して脅威となることがないように確認します。また、警備員は、利用者が店を出る時にも止めて、家に帰る安全な方法があり、飲酒運転の予定がないことを確認します。

居酒屋に警備員を置くことのマイナス面は、多くの人が居酒屋に同時に入ろうとしたり、出ようとすると、長い列ができ、時に遅れを経験する人がいるということです。同様に、プロキシベースのファイアウォールの主な欠点は、特にトラフィックが多いときに遅延を引き起こす可能性があることです。

*プロキシは、ローカルネットワークとインターネットなどの大規模ネットワークとの間のゲートウェイとして機能するコンピューターです。

ステートフルファイアウォール:

コンピューターサイエンスにおいて「ステートフル」アプリケーションとは、以前のイベントや相互作用からデータを保存するものです��ステートフルファイアウォールは、各パケットを検査するのではなく、開いている接続に関する情報を保存してこの情報を使用して着信および発信トラフィックを分析します。ステートフルファイアウォールはすべてのパケットを検査するわけではないため、プロキシベースのファイアウォールよりも高速です。

ステートフルファイアウォールは、意思決定を行う際に多くのコンテキストに依存します。たとえば、ファイアウォールが特定の種類の応答を要求する1つの接続で発信パケットを記録する場合、要求された種類の応答を提供する場合にのみ、その接続で着信パケットを許可します。

ステートフルファイアウォールは、着信パケットが特定のポートへのアクセスを要求しない限り、ポート*をすべて閉じたままにしてポートを保護することもできます。これにより、ポートスキャンと呼ばれる攻撃を軽減できます。

ステートフルファイアウォールに関連する既知の脆弱性は、特定の種類の情報を要求するようにクライアントをだますことによって操作できることです。クライアントがその応答を要求すると、攻撃者はその基準に一致する悪意のあるパケットをファイアウォールを通過して送信できます。たとえば、セキュリティで保護されていないWebサイトはJavaScriptコードを使用して、Webブラウザーからこれらの種類の偽造リクエストを作成できます。

*ネットワークポートは、情報が送信される場所です。物理的な場所ではなく、通信エンドポイントです。ポートの詳細はこちら >>

次世代ファイアウォール(NGFW):

NGFWs は、従来のファイアウォールの機能を持っているだけでなく、OSI 参照モデルの他の層への脅威に対処するという追加機能のホストを持ったファイアウォールです。NGFW固有の機能には次のものがあります。

  • ディープパケットインスペクション(DPI) -NGFWは、従来のファイアウォールよりもはるかに詳細なパケットの検査を実行します。この詳細な検査では、パケットペイロードや、パケットによってアクセスされているアプリケーションなどを確認できます。これにより、ファイアウォールはより詳細なフィルタリングルールを適用できます。
  • アプリケーション認識-この機能を有効にすると、ファイアウォールは実行中のアプリケーションとそれらのアプリケーションが使用しているポートを認識します。これにより、実行中のプロセスを強制終了してからそのポートを引き継ぐことを目的とする特定の種類のマルウェアから保護できます。
  • アイデンティティ認識 -これにより、ファイアウォールは、利用中のコンピューター、ログイン中のユーザーなどアイデンティティに基づくルールを適用できます。
  • サンドボックス- ファイアウォールは、着信パケットに関連付けられたコードを分離し、「サンドボックス」環境で実行して、悪意のある挙動が行われないことを���認します。このサンドボックステストの結果は、パケットをネットワークに入れるかどうかを決定する際の基準として使用できます。

Webアプリケーションファイアウォール(WAF):

従来のファイアウォールは悪意のあるWebアプリケーションからプライベートネットワークを保護するのに役立ちますが、WAFは悪意のあるユーザーからWebアプリケーションを保護するのに役立ちます。WAFは、Webアプリケーションとインターネット間のHTTPトラフィックをフィルタリング、監視することでWebアプリケーションの保護を助けるものです。一般に、クロスサイトフォージェリ攻撃クロスサイトスクリプティング(XSS)攻撃、ファイルインクルー���攻撃、SQLインジェクション攻撃などのような攻撃からWebアプリケーションを保護します。

Webアプリケーションの前の位置にWAFを展開することにより、Webアプリケーションとインターネットの間にシールドが張られます。プロキシベースのファイアウォールは、仲介者を使用してクライアントマシンのIDを保護しますが、WAFはリバースプロキシの一種であり、クライアントがサーバーに到達する前にWAFを通過させることでサーバーが危険にさらされることから保護します。

WAFは、一般にポリシーと呼ばれる一連のルールを通じて動作します。このポリシーは、悪意のあるトラフィックを除外することでアプリケーションの脆弱性から守ろうとします。WAFの価値は、その迅速性とポリシーの変更を簡単に行える簡便性にあり、さまざまな攻撃ベクトルに迅速に対応できます。DDoS攻撃では、WAFポリシーを変更することでレート制限を素早く実装できます。CloudflareのWebアプリケーションファイアウォールのような商用のWAF製品は、毎日何百万ものWebアプリケーションを攻撃から保護しています。

Firewall-as-a-service(FWaaS):

Firewall-as-a-Service(FWaaS)は、 クラウドを介してファイアウォール機能を提供する新しいモデルです。このサービスは「クラウドファイアウォール」と呼ばれることもあります。従来のファイアウォールが組織の内部ネットワークにバリアを形成するのと同様に、FWaaSはクラウドのプラットフォーム、インフラストラクチャ、アプリケーションに仮想的なバリアを形成します。FWaaSは多くの場合、従来のファイアウォールよりも、クラウドやマルチクラウドの資産を保護するのに適しています。

ネットワークファイアウォールとは?

「ネットワークファイアウォール」とは、ネットワークを防御するためのファイアウォールです。定義上は、ほとんどすべてのセキュリティファイアウォールはネットワークファイアウォールですが、ファイアウォールは個々のマシンを保護することもできます。

ファイアウォールはネットワークセキュリティの重要な構成要素ですが、この分野には、アクセスコントロール、ユーザー認証、DDoS 軽減 など、他にもさまざまな側面があります。ネットワークセキュリティの詳細についてご覧ください。

ファイアウォールはソフトウェアベースか、またはとハードウェアベースか?

元々、ファイアウォールはハードウェアアプライアンスでした(後述の「ファイアウォールの歴史」の項を参照)。現在でもハードウェア型のファイアウォールは使用されていますが、現在のファイアウォールはソフトウェアベースのものが多く、複数の異なるタイプのハードウェア上で動作することができます。一方、FWaaSは、クラウドでホストされています。

ファイアウォールの歴史は?

ファイアウォールの歴史については、1980年代後半までさかのぼります。最初のファイアウォールは、個々のデータパケットを許可またはブロックするものでした。どのパケットを許可し、どのパケットをブロックするかは、ネットワーク層とトランスポート層のヘッダーを検査して、送信元と送信先のIPアドレスとポートを確認することで決定しました(電子メールの「to」と「from」のセクションを見るようなものです)。これにより、不正なトラフィックが通過するのを防ぎ、多くのマルウェアの攻撃を阻止してきました。

次世代ファイアウォールでは、ステートフルな機能が追加されています。さらに新しい世代(NGFWなど)では、アプリケーション層のトラフィック検査の機能が追加されています。

ファイアウォールの機能が時代とともに進化してきたように、ファイアウォールのデプロイ方法も進化してきました。もともとファイアウォールは、企業のネットワークインフラストラクチャに接続される物理的なハードウェア機器でした。しかし、ビジネスプロセスがクラウドに移行するにつれ、すべてのネットワークトラフィックを物理的なボックスに通すことは非効率的なものになりました。また、現在のファイアウォールは、ソフトウェア型やクラウド型として仮想的に動作することもできます。

Magic Firewallとは?

Magic Firewallは、Cloudflareネットワークからデプロイされるネットワークレベルのファイアウォールです。これはオンプレミスネットワーク用のハードウェアベースのファイアウォールを置き換えるために設計されています。ハードウェアベースのファイアウォールは、スケールアップするにはIT部門が追加で購入しなければなりません。Magic Firewallは大量のトラフィックを処理するためのスケールアップを、より簡単に行うことができます。 Magic Firewallの詳細についてご覧ください