web-dev-qa-db-ja.com

Linuxでレイヤー7フィルタリングを行う方法はありますか?

L7-filterプロジェクトは15年前のようで、カーネルパッチが必要です。バージョン2.6より前のカーネルはサポートされていません。ほとんどのパターンファイルは2003年に作成されたようです。

通常、その古くて人気のあるプロジェクトがある場合、それを置き換える新しいプロジェクトがありますが、レイヤー7フィルタリングを実行するLinuxの最近のプロジェクトはありません。

適切な場所を探していませんか?何らかの理由で、レイヤー7フィルタリングのアイデアが完全に放棄されましたか?最近では、より強力なハードウェアがあれば、これは以前よりもさらに実用的だと思います。

5
Tal

2.4および2.6カーネル用のパッチとして実装された(以前の)プロジェクト Linuxのアプリケーション層パケット分類子 について話している必要があります。

このプロジェクトの主な問題は、制御することを提案したテクノロジーが、実装の有用性と有効性をすぐに上回ったことです。

プロジェクトのメンバーも、私が覚えている限りでは、テクノロジーの進歩を追い越すためにさらに投資する時間(およびお金)がなく、実装の権利を売却したため、すでに問題のあるプロジェクトを完全に殺しました。

このプロジェクト/テクノロジーが長年にわたって直面している課題は、特定の順序ではありません。

  • パッチを3.x/4.xカーネルバージョンに適合させる。
  • 処理能力の不足-いくつかの国では、今日、国内のギガビットブロードの速度でさえ、ASICに効率的なレイヤー7トラフィックシェーピングを要求するでしょう。
  • bittorrentは非常に難読化し始めました。
  • HTTPSは、いくつかのプロトコルをカプセル化したり、検出を回避したりするために頻繁に使用され始めました。
  • ピアツーピアプロトコルは、固定ポートの使用を停止し、anyオープン/許可されたポートによる方法を試み始めました。
  • ユビキタスなvoIPとビデオのリアルタイムでの増加により、トラフィックはわずかな時間遅延でも非常に敏感になります。
  • vPN接続の普及。

重いR&Dは、プロのトラフィックシェーピング製品に多額の投資が行われました。

10年前の最新技術は、暗号化された/難読化されたトラフィックを検出するために、すでに特定のASICと(大量の)ヒューリスティックを使用していました。

現在、グローバルブロードバンド、トラフィックシェーピング(およびファイアウォール)ベンダーの進歩に伴う高度なヒューリスティックスでの10年以上の経験に加えて、リアルタイムでグローバルデータのピア2ピア共有を使用しています。彼らのソリューションの有効性を高めるために。

彼らは、高度なヒューリスティックスを組み合わせて、リアルタイムのプロファイリング/世界中の何千もの場所からのデータを共有しています。

Allot NetEnforcerと同じくらい効率的に機能するオープンソース製品をまとめることは非常に困難です。

インフラストラクチャの帯域幅の健全性を目的としたオープンソースソリューションを使用して、IPアドレスがネットワークレベル

今日、一般的なトラフィック制御とインフラストラクチャの帯域幅容量を保護するための通常の戦略は、ファイアウォールを除いて、高度なトラフィックシェーピングハードウェアを使用せずに、IPアドレスごとに帯域幅の一部を割り当てることです。

7
Rui F Ribeiro

Netifydは オープンソースのディープパケットインスペクション l7-filterの代替です。 l7-filterプロジェクトの最後のメンテナーによって開発され、LinuxとBSDで利用できます。カーネルのハッキングは必要ありません。

暗号化されたプロトコルや最新のBitTorrentなどの検出はトリッキーですが、確かに解決可能です。ディープパケットインスペクションは、プロトコルの検出(l7-filterプロジェクトの焦点でした)だけではありません。たとえば、Netify DPIは、SSL会話の弱い暗号を検出できます。多くの場合、古いファームウェアを実行しているデバイスの兆候です。

Rui Fが述べたように、マルチギガビットの速度を維持するには、ASICまたは専用ハードウェアが必要です。ただし、ネットワークのエッジでは、1ギガビットの速度でも、DPIを一般的なコンピューターハードウェアに展開できます。実行にはある程度の処理能力が必要です。効果的な侵入検知/防止エンジンとほぼ同じです。一般に、ネットワーク会話の最初の10個のパケットのみが処理されるため、狭いスペースで実行できます。

1
Peter B