私が動作している環境は、大規模なWebホスティング操作です(管理下にある数百のサーバー、ほぼすべてのパブリックアドレッシングなど、ADSLリンクの管理について話すものはすべてうまく機能しない可能性があります)。コアルールセット(現在のカウントでiptablesの約12,000エントリ)と、お客様が管理するホストベースのルールセットの両方を快適に管理できるものを探しています。コアルータールールセットは1日に数回変更され、ホストベースのルールセットは月に50回(すべてのサーバーで変更されるため、月に5台のサーバーごとに1回変更される)です。
現在、filtergen(一般的にはボールであり、運用規模ではスーパーボール)を使用しており、過去に他のジョブでshorewallを使用しました(filtergenよりも望ましいでしょうが、そこにあるものよりも優れている)。
交換システムについて考え出した「ムスト」は次のとおりです。
- ルールセットをかなり迅速に生成する必要があります(ルールセットで実行されるfiltergenは15〜20分かかります。これは非常識です)。これは次の点に関連しています。
- iptables-restoreスタイルファイルを生成し、1回のヒットでロードする必要があります。ルールの挿入ごとにiptablesを呼び出す必要はありません
- ルールセットのリロード中に長時間ファイアウォールを停止しないでください(これも上記の結果です)
- IPv6をサポートする必要があります(IPv6互換ではない新しいものは展開していません)
- DFSGフリーでなければなりません
- プレーンテキストの構成ファイルを使用する必要があります(リビジョン管理を介してすべてを実行し、標準のUnixテキスト操作ツールを使用することがSOPです)
- RedHatとDebianの両方をサポートする必要があります(パッケージ化が推奨されますが、少なくともどちらかのディストリビューションの標準に対してあからさまに敵対してはなりません)
- システムの「ネイティブ言語」の一部ではない機能をサポートするために、任意のiptablesコマンドを実行する機能をサポートする必要があります
これらの基準をすべて満たさないものは考慮されません。以下は私たちの「持っているのがいい」です。
- 構成ファイル「フラグメント」をサポートする必要があります(つまり、ディレクトリにファイルの山をドロップし、ファイアウォールに「このディレクトリのすべてをルールセットに含める」と言うことができます。構成管理を広範囲に使用し、この機能を使用したいサービス固有のルールを自動的に提供します)
- 生のテーブルをサポートする必要があります
- 着信パケットと拒否ルールの両方で特定のICMPを指定できるようにする必要があります
- 複数のIPアドレスに解決するホスト名を適切にサポートする必要があります(filtergenでこれに数回捕らえられました;かなり王室の痛みです)
- ツールがサポートするオプション/奇妙なiptables機能が(ネイティブで、または既存のプラグインまたは簡単に書き込み可能なプラグインを介して)より良い。私たちは時々iptablesの奇妙な機能を使用しますが、「機能する」ものが多いほど、すべての人にとって優れています。