
複数のVLANと呼ばれる複雑なリアルタイムシステムがあります。各サーバーにはLinuxサーバーがあり、各サーバーにはサービスがあります。サービスは一緒に接続されます。たとえば、ホストAのhttpサービスは、ホストBポート3306/tcpのmysqlサービスに接続されます。
このタイプの構成をデータベースに自動的にマップし、各サーバーにファイアウォールルールを作成して、ホスト間で必要な接続のみを許可したいと思います。
私の考えでは:
- 各サーバーでnetstatを使用して接続リスト(またはiptablesのログ接続?)を取得し、データベースに保存します。
- graphvisなどを使用して視覚化し、
- データベースのルールに基づいてファイアウォールルールを作成する
- 以前のルールに準拠していない接続を記録して警告するiptablesルールを作成します。
よりよく/より速く/より自動化できるものはありますか?おそらく車輪を再発明する必要はないでしょうか?
更新:「難しい」部分はファイアウォールルールを作成するのではなく、それを自動化し、必要な接続のリストを管理することです。
答え1
答え2
しばらく前に使用しました。女性ルールセットを生成し、「include」ディレクティブを介して正しい順序で挿入するカスタムシンプルbashスクリプトフェム。
接続などを記録するには、次のものを使用できます。ulog-mysql、特定のiptablesルールに一致する特定のデータをmysqlに保存し、その時点から必要なものを描画します。
もう1つの可能性は、以下を使用することです。Ansibleにおけるiptablesの役割、おそらくシーンによく合うキャラクターを見つけることができます。
答え3
fwbuilderの使用を検討してください(http://www.fwbuilder.org/)。一種のファイアウォールを管理するためのオープンソースツールです。